20 Jul, 2011

1 commit


16 Jul, 2011

1 commit


14 Jul, 2011

1 commit

  • * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6: (21 commits)
    slip: fix wrong SLIP6 ifdef-endif placing
    natsemi: fix another dma-debug report
    sctp: ABORT if receive, reassmbly, or reodering queue is not empty while closing socket
    net: Fix default in docs for tcp_orphan_retries.
    hso: fix a use after free condition
    net/natsemi: Fix module parameter permissions
    XFRM: Fix memory leak in xfrm_state_update
    sctp: Enforce retransmission limit during shutdown
    mac80211: fix TKIP replay vulnerability
    mac80211: fix ie memory allocation for scheduled scans
    ssb: fix init regression of hostmode PCI core
    rtlwifi: rtl8192cu: Add new USB ID for Netgear WNA1000M
    ath9k: Fix tx throughput drops for AR9003 chips with AES encryption
    carl9170: add NEC WL300NU-AG usbid
    cfg80211: fix deadlock with rfkill/sched_scan by adding new mutex
    ath5k: fix incorrect use of drvdata in PCI suspend/resume code
    ath5k: fix incorrect use of drvdata in sysfs code
    Bluetooth: Fix memory leak under page timeouts
    Bluetooth: Fix regression with incoming L2CAP connections
    Bluetooth: Fix hidp disconnect deadlocks and lost wakeup
    ...

    Linus Torvalds
     

13 Jul, 2011

1 commit


12 Jul, 2011

4 commits

  • That file harkens back to the days of the big 2.4 -> 2.6 version jump,
    and was based even then on older versions. Some of it is just obsolete,
    and Jesper Juhl points out that it talks about kernel versions 2.6 and
    should be updated to 3.0.

    Remove some obsolete text, and re-phrase some other to not be 2.6-specific.

    Reported-by: Jesper Juhl
    Signed-off-by: Linus Torvalds

    Linus Torvalds
     
  • * 'v4l_for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-2.6:
    [media] msp3400: fill in v4l2_tuner based on vt->type field
    [media] tuner-core.c: don't change type field in g_tuner or g_frequency
    [media] cx18/ivtv: fix g_tuner support
    [media] tuner-core: power up tuner when called with s_power(1)
    [media] v4l2-ioctl.c: check for valid tuner type in S_HW_FREQ_SEEK
    [media] tuner-core: simplify the standard fixup
    [media] tuner-core/v4l2-subdev: document that the type field has to be filled in
    [media] v4l2-subdev.h: remove unused s_mode tuner op
    [media] feature-removal-schedule: change in how radio device nodes are handled
    [media] bttv: fix s_tuner for radio
    [media] pvrusb2: fix g/s_tuner support
    [media] v4l2-ioctl.c: prefill tuner type for g_frequency and g/s_tuner
    [media] tuner-core: fix tuner_resume: use t->mode instead of t->type
    [media] tuner-core: fix s_std and s_tuner

    Linus Torvalds
     
  • * 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mjg59/platform-drivers-x86:
    hp-wmi: fix use after free
    dell-laptop - using buffer without mutex_lock
    Revert: "dell-laptop: Toggle the unsupported hardware killswitch"
    platform-drivers-x86: set backlight type to BACKLIGHT_PLATFORM
    thinkpad-acpi: handle HKEY 0x4010, 0x4011 events
    drivers/platform/x86: Fix memory leak
    thinkpad-acpi: handle some new HKEY 0x60xx events
    acer-wmi: fix bitwise bug when set device state
    acer-wmi: Only update rfkill status for associated hotkey events

    Linus Torvalds
     
  • Since we removed sti()/cli() and related, how about removing it from
    Documentation/spinlocks.txt?

    Signed-off-by: Muthukumar R
    Signed-off-by: Linus Torvalds

    Muthu Kumar
     

10 Jul, 2011

1 commit


09 Jul, 2011

2 commits


08 Jul, 2011

2 commits

  • Add an FS-Cache helper to bulk uncache pages on an inode. This will
    only work for the circumstance where the pages in the cache correspond
    1:1 with the pages attached to an inode's page cache.

    This is required for CIFS and NFS: When disabling inode cookie, we were
    returning the cookie and setting cifsi->fscache to NULL but failed to
    invalidate any previously mapped pages. This resulted in "Bad page
    state" errors and manifested in other kind of errors when running
    fsstress. Fix it by uncaching mapped pages when we disable the inode
    cookie.

    This patch should fix the following oops and "Bad page state" errors
    seen during fsstress testing.

    ------------[ cut here ]------------
    kernel BUG at fs/cachefiles/namei.c:201!
    invalid opcode: 0000 [#1] SMP
    Pid: 5, comm: kworker/u:0 Not tainted 2.6.38.7-30.fc15.x86_64 #1 Bochs Bochs
    RIP: 0010: cachefiles_walk_to_object+0x436/0x745 [cachefiles]
    RSP: 0018:ffff88002ce6dd00 EFLAGS: 00010282
    RAX: ffff88002ef165f0 RBX: ffff88001811f500 RCX: 0000000000000000
    RDX: 0000000000000000 RSI: 0000000000000100 RDI: 0000000000000282
    RBP: ffff88002ce6dda0 R08: 0000000000000100 R09: ffffffff81b3a300
    R10: 0000ffff00066c0a R11: 0000000000000003 R12: ffff88002ae54840
    R13: ffff88002ae54840 R14: ffff880029c29c00 R15: ffff88001811f4b0
    FS: 00007f394dd32720(0000) GS:ffff88002ef00000(0000) knlGS:0000000000000000
    CS: 0010 DS: 0000 ES: 0000 CR0: 000000008005003b
    CR2: 00007fffcb62ddf8 CR3: 000000001825f000 CR4: 00000000000006e0
    DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
    DR3: 0000000000000000 DR6: 00000000ffff0ff0 DR7: 0000000000000400
    Process kworker/u:0 (pid: 5, threadinfo ffff88002ce6c000, task ffff88002ce55cc0)
    Stack:
    0000000000000246 ffff88002ce55cc0 ffff88002ce6dd58 ffff88001815dc00
    ffff8800185246c0 ffff88001811f618 ffff880029c29d18 ffff88001811f380
    ffff88002ce6dd50 ffffffff814757e4 ffff88002ce6dda0 ffffffff8106ac56
    Call Trace:
    cachefiles_lookup_object+0x78/0xd4 [cachefiles]
    fscache_lookup_object+0x131/0x16d [fscache]
    fscache_object_work_func+0x1bc/0x669 [fscache]
    process_one_work+0x186/0x298
    worker_thread+0xda/0x15d
    kthread+0x84/0x8c
    kernel_thread_helper+0x4/0x10
    RIP cachefiles_walk_to_object+0x436/0x745 [cachefiles]
    ---[ end trace 1d481c9af1804caa ]---

    I tested the uncaching by the following means:

    (1) Create a big file on my NFS server (104857600 bytes).

    (2) Read the file into the cache with md5sum on the NFS client. Look in
    /proc/fs/fscache/stats:

    Pages : mrk=25601 unc=0

    (3) Open the file for read/write ("bash 5<>/warthog/bigfile"). Look in proc
    again:

    Pages : mrk=25601 unc=25601

    Reported-by: Jeff Layton
    Signed-off-by: David Howells
    Reviewed-and-Tested-by: Suresh Jayaraman
    cc: stable@kernel.org
    Signed-off-by: Linus Torvalds

    David Howells
     
  • Radio devices have weird side-effects when used with combined TV/radio
    tuners and the V4L2 spec is ambiguous on how it should work. This results
    in inconsistent driver behavior which makes life hard for everyone.

    Be more strict in when and how the switch between radio and tv mode
    takes place and make sure all drivers behave the same.

    Signed-off-by: Hans Verkuil
    Signed-off-by: Mauro Carvalho Chehab

    Hans Verkuil
     

07 Jul, 2011

4 commits

  • Handle events 0x4010 and 0x4011 so that we do not pester users about them.

    These events report when the thinkpad is docked/undocked to a native
    hotplug dock (i.e. one that does not need ACPI handling, nor is represented
    in the ACPI device tree). Such docks are based on USB 2.0/3.0, and also
    work as port replicators.

    We really want a proper dock class to report these, or at least new input
    EV_SW events. Since it is not clear which one to use yet, keep reporting
    them as vendor-specific ThinkPad events.

    WARNING: As defined by the thinkpad-acpi sysfs ABI rules of engagement, the
    vendor-specific events will be REMOVED as soon as generic events are made
    available (duplicate events are a big problem), with an appropriate update
    to the thinkpad-acpi sysfs/event ABI versioning. Userspace is already
    prepared to provide easy backwards compatibility for such changes when
    convenient to the distro (see acpi-fakekey).

    * Event 0x4010: docking to hotplug dock/port replicator
    * Event 0x4011: undocking from hotplug dock/port replicator

    Typical usecase would be to trigger display reconfiguration.

    Reports mention T410, T510, and series 3 docks/port replicators. Special
    thanks to Robert de Rooy for his extensive report and analysis of the
    situation.

    http://www.thinkwiki.org/wiki/ThinkPad_Port_Replicator_Series_3
    http://www.thinkwiki.org/wiki/ThinkPad_Mini_Dock_Series_3
    http://www.thinkwiki.org/wiki/ThinkPad_Mini_Dock_Plus_Series_3
    http://www.thinkwiki.org/wiki/ThinkPad_Mini_Dock_Plus_Series_3_for_Mobile_Workstations
    http://lenovoblogs.com/insidethebox/?p=290

    Signed-off-by: Henrique de Moraes Holschuh
    Cc: Matthew Garrett
    Reported-by: Claudius Hubig
    Reported-by: Doctor Bill
    Reported-by: Korte Noack
    Reported-by: Robert de Rooy
    Reported-by: Sebastian Will
    Signed-off-by: Matthew Garrett

    Henrique de Moraes Holschuh
     
  • Handle some user interface events from the newer Lenovo models. We are likely
    to do something smart with these events in the future, for now, hide the ones
    we are already certain about from the user and userspace both.

    * Events 0x6000 and 0x6005 are key-related. 0x6005 is not properly identified
    yet. Ignore these events, and do not report them.

    * Event 0x6040 has not been properly identified yet, and we don't know if it
    is important (looks like it isn't, but still...). Keep reporting it.

    * Change the message the driver outputs on unknown 0x6xxx events, as all
    recent events are not related to thermal alarms. Degrade log level from
    ALERT to WARNING.

    Thanks to all users who reported these events or asked about them in a number
    of mailing lists. Your help is highly appreciated, even if I did took a lot of
    time to act on them. For that I apologise.

    I will list those that identified the reasons for the events as "reported-by",
    and I apologise in advance if I leave anyone out: it was not done on purpose, I
    made the mistake of not properly tagging all event report emails separately,
    and might have missed some.

    Signed-off-by: Henrique de Moraes Holschuh
    Reported-by: Markus Malkusch
    Reported-by: Peter Giles
    Signed-off-by: Matthew Garrett

    Henrique de Moraes Holschuh
     
  • All the blkio.throttle.* file names are incorrectly reported without
    ".throttle" in the documentation. Fix it.

    Signed-off-by: Andrea Righi
    Signed-off-by: Randy Dunlap
    Acked-by: Vivek Goyal
    Signed-off-by: Linus Torvalds

    Andrea Righi
     
  • The list of available general purpose memory allocators in
    Documentation/CodingStyle chapter 14 is incomplete. This patch adds
    the missing vzalloc() to the list.

    Signed-off-by: Jesper Juhl
    Signed-off-by: Randy Dunlap
    Signed-off-by: Linus Torvalds

    Jesper Juhl
     

04 Jul, 2011

2 commits


03 Jul, 2011

2 commits


02 Jul, 2011

2 commits


29 Jun, 2011

1 commit

  • * 'usb-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb-2.6:
    MAINTAINERS: add myself as maintainer of USB/IP
    usb: r8a66597-hcd: fix cannot detect low/full speed device
    USB: ehci-ath79: fix a NULL pointer dereference
    USB: Add new FT232H chip to drivers/usb/serial/ftdi_sio.c
    usb/isp1760: Fix bug preventing the unlinking of control urbs
    USB: Fix up URB error codes to reflect implementation.
    xhci: Always set urb->status to zero for isoc endpoints.
    xhci: Add reset on resume quirk for asrock p67 host
    xHCI 1.0: Incompatible Device Error
    USB: don't let errors prevent system sleep
    USB: don't let the hub driver prevent system sleep
    USB: change maintainership of ohci-hcd and ehci-hcd
    xHCI 1.0: Force Stopped Event(FSE)
    xhci: Don't warn about zeroed bMaxBurst descriptor field.
    USB: Free bandwidth when usb_disable_device is called.
    xhci: Reject double add of active endpoints.
    USB: TI 3410/5052 USB Serial Driver: Fix mem leak when firmware is too big.
    usb: musb: gadget: clear TXPKTRDY flag when set FLUSHFIFO
    usb: musb: host: compare status for negative error values

    Linus Torvalds
     

22 Jun, 2011

3 commits


19 Jun, 2011

1 commit


18 Jun, 2011

1 commit

  • Documentation/usb/error-codes.txt mentions that urb->status can be set to
    -EXDEV, if the isochronous transfer was not fully completed. However, in
    practice, EHCI, UHCI, and OHCI all only set -EXDEV in the individual frame
    status, never in the URB status. Those host controller actually always
    pass in a zero status to usb_hcd_giveback_urb, and rely on the core to set
    the appropriate status value.

    The xHCI driver ran into issues with the uvcvideo driver when it tried to
    set -EXDEV in urb->status, because the driver refused to submit URBs, and
    the userspace camera application's video froze.

    Clean up the documentation to reflect the actual implementation.

    Signed-off-by: Sarah Sharp
    Acked-by: Alan Stern

    Sarah Sharp
     

16 Jun, 2011

7 commits


15 Jun, 2011

2 commits

  • Commit a26ac2455ffcf3(rcu: move TREE_RCU from softirq to kthread)
    introduced performance regression. In an AIM7 test, this commit degraded
    performance by about 40%.

    The commit runs rcu callbacks in a kthread instead of softirq. We observed
    high rate of context switch which is caused by this. Out test system has
    64 CPUs and HZ is 1000, so we saw more than 64k context switch per second
    which is caused by RCU's per-CPU kthread. A trace showed that most of
    the time the RCU per-CPU kthread doesn't actually handle any callbacks,
    but instead just does a very small amount of work handling grace periods.
    This means that RCU's per-CPU kthreads are making the scheduler do quite
    a bit of work in order to allow a very small amount of RCU-related
    processing to be done.

    Alex Shi's analysis determined that this slowdown is due to lock
    contention within the scheduler. Unfortunately, as Peter Zijlstra points
    out, the scheduler's real-time semantics require global action, which
    means that this contention is inherent in real-time scheduling. (Yes,
    perhaps someone will come up with a workaround -- otherwise, -rt is not
    going to do well on large SMP systems -- but this patch will work around
    this issue in the meantime. And "the meantime" might well be forever.)

    This patch therefore re-introduces softirq processing to RCU, but only
    for core RCU work. RCU callbacks are still executed in kthread context,
    so that only a small amount of RCU work runs in softirq context in the
    common case. This should minimize ksoftirqd execution, allowing us to
    skip boosting of ksoftirqd for CONFIG_RCU_BOOST=y kernels.

    Signed-off-by: Shaohua Li
    Tested-by: "Alex,Shi"
    Signed-off-by: Paul E. McKenney

    Shaohua Li
     
  • * 'for-linus' of git://neil.brown.name/md:
    md/raid5: remove unusual use of bio_iovec_idx()
    md/raid5: fix FUA request handling in ops_run_io()
    md/raid5: fix raid5_set_bi_hw_segments
    md:Documentation/md.txt - fix typo
    md/bitmap: remove unused fields from struct bitmap
    md/bitmap: use proper accessor macro
    md: check ->hot_remove_disk when removing disk
    md: Using poll /proc/mdstat can monitor the events of adding a spare disks
    MD: use is_power_of_2 macro
    MD: raid5 do not set fullsync
    MD: support initial bitmap creation in-kernel
    MD: add sync_super to mddev_t struct
    MD: raid1 changes to allow use by device mapper
    MD: move thread wakeups into resume
    MD: possible typo
    MD: no sync IO while suspended
    MD: no integrity register if no gendisk

    Linus Torvalds
     

09 Jun, 2011

1 commit


08 Jun, 2011

1 commit

  • Some USB mass-storage devices have bugs that cause them not to handle
    the first READ(10) command they receive correctly. The Corsair
    Padlock v2 returns completely bogus data for its first read (possibly
    it returns the data in encrypted form even though the device is
    supposed to be unlocked). The Feiya SD/SDHC card reader fails to
    complete the first READ(10) command after it is plugged in or after a
    new card is inserted, returning a status code that indicates it thinks
    the command was invalid, which prevents the kernel from retrying the
    read.

    Since the first read of a new device or a new medium is for the
    partition sector, the kernel is unable to retrieve the device's
    partition table. Users have to manually issue an "hdparm -z" or
    "blockdev --rereadpt" command before they can access the device.

    This patch (as1470) works around the problem. It adds a new quirk
    flag, US_FL_INVALID_READ10, indicating that the first READ(10) should
    always be retried immediately, as should any failing READ(10) commands
    (provided the preceding READ(10) command succeeded, to avoid getting
    stuck in a loop). The patch also adds appropriate unusual_devs
    entries containing the new flag.

    Signed-off-by: Alan Stern
    Tested-by: Sven Geggus
    Tested-by: Paul Hartman
    CC: Matthew Dharm
    CC:
    Signed-off-by: Greg Kroah-Hartman

    Alan Stern