1. 01 Oct, 2012 19 commits
    • Linus Torvalds's avatar
      Merge branch 'core-locking-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 627312b9
      Linus Torvalds authored
      Pull core locking changes from Ingo Molnar:
       "It includes a lockdep improvement plus a spinlock inlining Kconfig
        cleanup."
      
      * 'core-locking-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        locking: Adjust spin lock inlining Kconfig options
        lockdep: Check if nested lock is actually held
      627312b9
    • Linus Torvalds's avatar
      Merge branch 'core-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 94095a1f
      Linus Torvalds authored
      Pull core kernel fixes from Ingo Molnar:
       "This is a complex task_work series from Oleg that fixes the bug that
        this VFS commit tried to fix:
      
          d35abdb2 hold task_lock around checks in keyctl
      
        but solves the problem without the lockup regression that d35abdb2
        introduced in v3.6.
      
        This series came late in v3.6 and I did not feel confident about it so
        late in the cycle.  Might be worth backporting to -stable if it proves
        itself upstream."
      
      * 'core-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        task_work: Simplify the usage in ptrace_notify() and get_signal_to_deliver()
        task_work: Revert "hold task_lock around checks in keyctl"
        task_work: task_work_add() should not succeed after exit_task_work()
        task_work: Make task_work_add() lockless
      94095a1f
    • Linus Torvalds's avatar
      Merge branch 'core-rcu-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 620e7753
      Linus Torvalds authored
      Pull RCU changes from Ingo Molnar:
      
       0. 'idle RCU':
      
           Adds RCU APIs that allow non-idle tasks to enter RCU idle mode and
           provides x86 code to make use of them, allowing RCU to treat
           user-mode execution as an extended quiescent state when the new
           RCU_USER_QS kernel configuration parameter is specified.  (Work is
           in progress to port this to a few other architectures, but is not
           part of this series.)
      
       1.  A fix for a latent bug that has been in RCU ever since the addition
           of CPU stall warnings.  This bug results in false-positive stall
           warnings, but thus far only on embedded systems with severely
           cut-down userspace configurations.
      
       2.  Further reductions in latency spikes for huge systems, along with
           additional boot-time adaptation to the actual hardware.
      
           This is a large change, as it moves RCU grace-period initialization
           and cleanup, along with quiescent-state forcing, from softirq to a
           kthread.  However, it appears to be in quite good shape (famous
           last words).
      
       3.  Updates to documentation and rcutorture, the latter category
           including keeping statistics on CPU-hotplug latencies and fixing
           some initialization-time races.
      
       4.  CPU-hotplug fixes and improvements.
      
       5.  Idle-loop fixes that were omitted on an earlier submission.
      
       6.  Miscellaneous fixes and improvements
      
      In certain RCU configurations new kernel threads will show up (rcu_bh,
      rcu_sched), showing RCU processing overhead.
      
      * 'core-rcu-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (90 commits)
        rcu: Apply micro-optimization and int/bool fixes to RCU's idle handling
        rcu: Userspace RCU extended QS selftest
        x86: Exit RCU extended QS on notify resume
        x86: Use the new schedule_user API on userspace preemption
        rcu: Exit RCU extended QS on user preemption
        rcu: Exit RCU extended QS on kernel preemption after irq/exception
        x86: Exception hooks for userspace RCU extended QS
        x86: Unspaghettize do_general_protection()
        x86: Syscall hooks for userspace RCU extended QS
        rcu: Switch task's syscall hooks on context switch
        rcu: Ignore userspace extended quiescent state by default
        rcu: Allow rcu_user_enter()/exit() to nest
        rcu: Settle config for userspace extended quiescent state
        rcu: Make RCU_FAST_NO_HZ handle adaptive ticks
        rcu: New rcu_user_enter_after_irq() and rcu_user_exit_after_irq() APIs
        rcu: New rcu_user_enter() and rcu_user_exit() APIs
        ia64: Add missing RCU idle APIs on idle loop
        xtensa: Add missing RCU idle APIs on idle loop
        score: Add missing RCU idle APIs on idle loop
        parisc: Add missing RCU idle APIs on idle loop
        ...
      620e7753
    • Linus Torvalds's avatar
      Merge tag 'ktest-v3.7' of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-ktest · 6977b4c7
      Linus Torvalds authored
      Pull ktest fix from Steven Rostedt:
       "ktest has one fix needed for this merge window - fix parsing of ELSE
        IF in reading config file"
      
      * tag 'ktest-v3.7' of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-ktest:
        ktest: Fix ELSE IF statements
      6977b4c7
    • Linus Torvalds's avatar
      Merge tag 'localmodconfig-v3.7-2' of... · 69e9576b
      Linus Torvalds authored
      Merge tag 'localmodconfig-v3.7-2' of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-kconfig
      
      Pull localmodconfig fixes from Steven Rostedt:
       "Bill Pemberton added some changes to make streamline-config.pl work
        again as a stand-alone tool (outside of make localmodconfig).
      
        Also, he added a couple of updates to make the code be more "Perl
        proper".
      
        Added last minute fix to localyesconfig, that was the same as
        localmodconfig since v3.2, due to a change in the makefiles."
      
      * tag 'localmodconfig-v3.7-2' of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-kconfig:
        localmodconfig: Fix localyesconfig to set to 'y' not 'm'
        localmodconfig: Use my variable for loop in streamline_config.pl
        localmodconfig: Use 3 parameter open in streamline_config.pl
        localmodconfig: Rework find_config in streamline_config.pl
        localmodconfig: Set default value for ksource in streamline_config.pl
      69e9576b
    • Yuta Ando's avatar
      localmodconfig: Fix localyesconfig to set to 'y' not 'm' · 4eae518d
      Yuta Ando authored
      The kbuild target 'localyesconfig' has been same as 'localmodconfig'
      since the commit 50bce3e8 "kconfig/streamline_config.pl: merge
      local{mod,yes}config". The commit expects this script generates
      different configure depending on target, but it was not yet implemented.
      
      So I added code that sets to 'yes' when target is 'localyesconfig'.
      
      Link: http://lkml.kernel.org/r/1349101470-12243-1-git-send-email-yuta.and@gmail.com
      
      Cc: stable@vger.kernel.org # v3.2
      Cc: linux-kbuild@vger.kernel.org
      Signed-off-by: default avatarYuta Ando <yuta.and@gmail.com>
      Signed-off-by: default avatarSteven Rostedt <rostedt@rostedt.homelinux.com>
      4eae518d
    • Linus Torvalds's avatar
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/hid · 9fa40a11
      Linus Torvalds authored
      Pull HID updates from Jiri Kosina:
      
       1) Patchset from Henrik Rydberg which substantially reduces irqsoff
          latency for all input devices.  In addition to that, Henrik reworked
          multitouch handling in order to reduce runtime memory consumption.
      
          This patchset touches code in Input subsystem as well.  All the
          changes have been Acked by Dmitry, and we agreed to do it this way
          due to inter-dependencies between the patchset and subsequent
          changes in HID subsystem.
      
       2) Rework, clenaups and a lot of fixes to picolcd driver by Bruno
          Prémont.
      
       3) Core report descriptor handling fix which fixes resume issue on some
          devices, by Kevin Daughtridge
      
       4) hidraw fixes by Alexey Khoroshilov and Ratan Nalumasu
      
       5) wiimote driver now supports balance board, by David Herrmann.
      
       6) Other smaller fixes and new device id additions all over the place.
      
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/hid: (79 commits)
        HID: hidraw: don't deallocate memory when it is in use
        HID: picoLCD: optimize for inactive debugfs
        HID: multitouch: add support for GeneralTouch multi-touchscreen
        HID: Add support for Sony PS3 BD Remote Control
        HID: keep dev_rdesc unmodified and use it for comparisons
        HID: lg4ff: Minor coding style fixes in lg4ff and hid-lg
        HID: hid-lg4ff: Set absolute axes parametes on DFP
        HID: hid-lg4ff: Adjust X axis input value accordingly to selected range.
        HID: hid-lg4ff: Minor code cleanup to improve readability
        HID: ntrig: change default value of logical/physical width/height to 1
        HID: picoLCD: bounds check in dump_buff_as_hex()
        Input: bcm5974 - Convert to MT-B
        Input: bcm5974 - Drop the logical dimensions
        Input: bcm5974 - Preparatory renames
        Input: bcm5974 - only setup button urb for TYPE1 devices
        HID: hid-multitouch: Add Flatfrog support
        HID: hid-multitouch: Fix contact count on 3M panels
        HID: hid-multitouch: Remove the redundant touch state
        HID: hid-multitouch: Simplify setup and frame synchronization
        HID: Allow more fields in the hid report
        ...
      9fa40a11
    • Linus Torvalds's avatar
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial · 99dbb163
      Linus Torvalds authored
      Pull the trivial tree from Jiri Kosina:
       "Tiny usual fixes all over the place"
      
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial: (34 commits)
        doc: fix old config name of kprobetrace
        fs/fs-writeback.c: cleanup riteback_sb_inodes kerneldoc
        btrfs: fix the commment for the action flags in delayed-ref.h
        btrfs: fix trivial typo for the comment of BTRFS_FREE_INO_OBJECTID
        vfs: fix kerneldoc for generic_fh_to_parent()
        treewide: fix comment/printk/variable typos
        ipr: fix small coding style issues
        doc: fix broken utf8 encoding
        nfs: comment fix
        platform/x86: fix asus_laptop.wled_type module parameter
        mfd: printk/comment fixes
        doc: getdelays.c: remember to close() socket on error in create_nl_socket()
        doc: aliasing-test: close fd on write error
        mmc: fix comment typos
        dma: fix comments
        spi: fix comment/printk typos in spi
        Coccinelle: fix typo in memdup_user.cocci
        tmiofb: missing NULL pointer checks
        tools: perf: Fix typo in tools/perf
        tools/testing: fix comment / output typos
        ...
      99dbb163
    • Linus Torvalds's avatar
      Merge tag 'regulator-3.7' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regulator · aae6f989
      Linus Torvalds authored
      Pull regulator updates from Mark Brown:
       - Support for putting regulators into bypass mode where they simply
         switch their input to the output (mainly used for low power
         retention).
       - A new API for setting voltages based on a voltage plus tolerance
         rather than an explicit voltage range.
       - Lots of cleanups and API updates from Axel Lin.
       - New driver for MAX8907.
      
      * tag 'regulator-3.7' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regulator: (71 commits)
        regulator: arizona-ldo: Remove top voltage
        regulator: tps6586x: remove regulator-compatible from DT docs
        regulator: tps65217.txt: remove regulator-compatible from DT docs
        regulator: deprecate regulator-compatible DT property
        regulator: fan53555: remove vsel_max not used
        regulator: aat2870: Don't explicitly initialise the first field
        extcon: arizona: Use bypass mode for MICVDD
        regulator: wm831x-ldo: Add bypass support
        regulator: arizona-micsupp: Support get/set bypass
        regulator: arizona-ldo: Support get/set bypass
        regulator: core: Provide regmap get/set bypass operations
        regulator: core: Support bypass mode
        regulator: Fairchild fan53555 support
        regulator: twl: Remove another unused variable warning
        regulator: core: Try using the parent device for the default regmap
        regulator: core: Fast path non-deferred disables
        regulator: core: Report microvolts in sysfs even with only list_voltage()
        regulator: tps6586x: add support for SYS rail
        regulator: lp872x: remove unnecessary function
        regulator: lp872x: fix NULL pointer access problem
        ...
      aae6f989
    • Linus Torvalds's avatar
      Merge tag 'regmap-3.7' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regmap · b34e5f55
      Linus Torvalds authored
      Pull regmap updates from Mark Brown:
       "A quiet release for the regmap core, essentially all the activity is
        in the shared interrupt controller which is being more and more widely
        used and has been enhanced to support a wider range of masking types
        and wake handling methods, plus integration with runtime PM for
        devices making aggressive use of that."
      
      * tag 'regmap-3.7' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regmap:
        regmap: no need primary handler for nested irq
        regmap: irq: Add mask invert flag for enable register
        mfd: wm8994: Flag the interrupt block as requiring runtime PM be enabled
        regmap: irq: Enable devices for runtime PM while handling interrupts
        regmap: irq: initialize all irqs to wake disabled
        regmap: set MASK_ON_SUSPEND/SKIP_SET_WAKE if no wake_base
        regmap: name irq_chip based on regmap_irq_chip's name
        regmap: store irq_chip inside regmap_irq_chip_data
        regmap: irq: Only update mask bits when doing initial mask
        regmap: fix some error messages to take account of irq_reg_stride
        regmap: Don't lock in regmap_reinit_cache()
      b34e5f55
    • Linus Torvalds's avatar
      Merge git://git.kernel.org/pub/scm/linux/kernel/git/steve/gfs2-3.0-nmw · e151960a
      Linus Torvalds authored
      Pull GFS2 updates from Steven Whitehouse:
       "The major feature this time is the "rbm" conversion in the resource
        group code.  The new struct gfs2_rbm specifies the location of an
        allocatable block in (resource group, bitmap, offset) form.  There are
        a number of added helper functions, and later patches then rewrite
        some of the resource group code in terms of this new structure.  Not
        only does this give us a nice code clean up, but it also removes some
        of the previous restrictions where extents could not cross bitmap
        boundaries, for example.
      
        In addition to that, there are a few bug fixes and clean ups, but the
        rbm work is by far the majority of this patch set in terms of number
        of changed lines."
      
      * git://git.kernel.org/pub/scm/linux/kernel/git/steve/gfs2-3.0-nmw: (27 commits)
        GFS2: Write out dirty inode metadata in delayed deletes
        GFS2: fix s_writers.counter imbalance in gfs2_ail_empty_gl
        GFS2: Fix infinite loop in rbm_find
        GFS2: Consolidate free block searching functions
        GFS2: Get rid of I_MUTEX_QUOTA usage
        GFS2: Stop block extents at the end of bitmaps
        GFS2: Fix unclaimed_blocks() wrapping bug and clean up
        GFS2: Improve block reservation tracing
        GFS2: Fall back to ignoring reservations, if there are no other blocks left
        GFS2: Fix ->show_options() for statfs slow
        GFS2: Use rbm for gfs2_setbit()
        GFS2: Use rbm for gfs2_testbit()
        GFS2: Eliminate unnecessary check for state > 3 in bitfit
        GFS2: Eliminate redundant calls to may_grant
        GFS2: Combine functions gfs2_glock_dq_wait and wait_on_demote
        GFS2: Combine functions gfs2_glock_wait and wait_on_holder
        GFS2: inline __gfs2_glock_schedule_for_reclaim
        GFS2: change function gfs2_direct_IO to use a normal gfs2_glock_dq
        GFS2: rbm code cleanup
        GFS2: Fix case where reservation finished at end of rgrp
        ...
      e151960a
    • Jiri Kosina's avatar
      Merge branch 'multitouch' into for-linus · cdcd3ac4
      Jiri Kosina authored
      Conflicts:
      	drivers/hid/hid-multitouch.c
      cdcd3ac4
    • Jiri Kosina's avatar
      Merge branch 'upstream' into for-linus · a3cbe10e
      Jiri Kosina authored
      Conflicts:
      	drivers/hid/usbhid/hid-quirks.c
      a3cbe10e
    • Jiri Kosina's avatar
      Merge branches 'from-henrik', 'hidraw', 'logitech', 'picolcd', 'ps3',... · fa2bd301
      Jiri Kosina authored
      Merge branches 'from-henrik', 'hidraw', 'logitech', 'picolcd', 'ps3', 'uclogic', 'wacom' and 'wiimote' into for-linus
      fa2bd301
    • Ratan Nalumasu's avatar
      HID: hidraw: don't deallocate memory when it is in use · 4fe9f8e2
      Ratan Nalumasu authored
      When a device is unplugged, wait for all processes that have opened the device
      to close before deallocating the device.
      Signed-off-by: default avatarRatan Nalumasu <ratan@google.com>
      Signed-off-by: default avatarJiri Kosina <jkosina@suse.cz>
      4fe9f8e2
    • Bruno Prémont's avatar
      HID: picoLCD: optimize for inactive debugfs · 56fa9441
      Bruno Prémont authored
      Matthieu CASTET adjusted picolcd_debug_out_report() to only operate when
      there is an active listener on debugfs for events.
      
      His change got lost while splitting hid_picolcd.c, restore it.
      Signed-off-by: default avatarBruno Prémont <bonbons@linux-vserver.org>
      Signed-off-by: default avatarJiri Kosina <jkosina@suse.cz>
      56fa9441
    • Xianhan Yu's avatar
      HID: multitouch: add support for GeneralTouch multi-touchscreen · f5ff4e1e
      Xianhan Yu authored
      Fix the touch-up no response problem on GeneralTouch twofingers touchscreen and
      modify the driver for new GeneralTouch PWT touchscreen.
      Signed-off-by: default avatarXianhan Yu <aroundight77@gmail.com>
      Reviewed-by Benjamin Tissoires <benjamin.tissoires@gmail.com>
      Signed-off-by: default avatarJiri Kosina <jkosina@suse.cz>
      f5ff4e1e
    • David Dillow's avatar
      HID: Add support for Sony PS3 BD Remote Control · 5844c1cd
      David Dillow authored
      The Sony PS3 Blue-ray Disc Remote Control used to be supported by the
      BlueZ project's user space, but the code that handled it was recently
      removed as its functionality conflicted with a real HSP implementation
      and the mapping was thought to be better handled in the kernel. This is
      a port of the mapping logic from the fakehid driver by Marcel Holtmann
      to the in-kernel HID layer.
      
      We also add support for the Logitech Harmony Adapter for PS3, which
      emulates the BD Remote.
      Signed-off-by: default avatarDavid Dillow <dave@thedillows.org>
      Signed-off-by: default avatarAntonio Ospite <ospite@studenti.unina.it>
      Signed-off-by: default avatarJiri Kosina <jkosina@suse.cz>
      5844c1cd
    • Kevin Daughtridge's avatar
      HID: keep dev_rdesc unmodified and use it for comparisons · 86e6b77e
      Kevin Daughtridge authored
      The dev_rdesc member of the hid_device structure is meant to store the original
      report descriptor received from the device, but it is currently passed to any
      report_fixup method before it is copied to the rdesc member. This patch uses a
      temporary buffer to shield dev_rdesc from the side effects of many HID drivers'
      report_fixup implementations.
      
      usbhid's hid_post_reset checks the report descriptor currently returned by the
      device against a descriptor that may have been modified by a driver's
      report_fixup method. That leaves some devices nonfunctional after a resume, with
      a "reset_resume error 1" reported. This patch checks the new descriptor against
      the unmodified dev_rdesc instead and uses the original, instead of modified,
      report size.
      
      BugLink: http://bugs.launchpad.net/bugs/1049623Signed-off-by: default avatarKevin Daughtridge <kevin@kdau.com>
      Signed-off-by: default avatarJiri Kosina <jkosina@suse.cz>
      86e6b77e
  2. 30 Sep, 2012 2 commits
    • Linus Torvalds's avatar
      Linux 3.6 · a0d271cb
      Linus Torvalds authored
      a0d271cb
    • Miklos Szeredi's avatar
      vfs: dcache: fix deadlock in tree traversal · 8110e16d
      Miklos Szeredi authored
      IBM reported a deadlock in select_parent().  This was found to be caused
      by taking rename_lock when already locked when restarting the tree
      traversal.
      
      There are two cases when the traversal needs to be restarted:
      
       1) concurrent d_move(); this can only happen when not already locked,
          since taking rename_lock protects against concurrent d_move().
      
       2) racing with final d_put() on child just at the moment of ascending
          to parent; rename_lock doesn't protect against this rare race, so it
          can happen when already locked.
      
      Because of case 2, we need to be able to handle restarting the traversal
      when rename_lock is already held.  This patch fixes all three callers of
      try_to_ascend().
      
      IBM reported that the deadlock is gone with this patch.
      
      [ I rewrote the patch to be smaller and just do the "goto again" if the
        lock was already held, but credit goes to Miklos for the real work.
         - Linus ]
      Signed-off-by: default avatarMiklos Szeredi <mszeredi@suse.cz>
      Cc: Al Viro <viro@ZenIV.linux.org.uk>
      Cc: stable@vger.kernel.org
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      8110e16d
  3. 29 Sep, 2012 2 commits
    • Linus Torvalds's avatar
      Merge tag 'iommu-fixes-v3.6-rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/joro/iommu · 6a3e3dbe
      Linus Torvalds authored
      Pull IOMMU fixes from Joerg Roedel:
       "Two small patches:
      
      	* One patch to fix the function declarations for
      	  !CONFIG_IOMMU_API. This is causing build errors
      	  in linux-next and should be fixed for v3.6.
      
      	* Another patch to fix an IOMMU group related NULL pointer
      	  dereference."
      
      * tag 'iommu-fixes-v3.6-rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/joro/iommu:
        iommu/amd: Fix wrong assumption in iommu-group specific code
        iommu: static inline iommu group stub functions
      6a3e3dbe
    • Linus Torvalds's avatar
      Merge git://git.infradead.org/users/willy/linux-nvme · 21e98932
      Linus Torvalds authored
      Pull NVMe driver fixes from Matthew Wilcox:
       "Now that actual hardware has been released (don't have any yet
        myself), people are starting to want some of these fixes merged."
      
      Willy doesn't have hardware? Guys...
      
      * git://git.infradead.org/users/willy/linux-nvme:
        NVMe: Cancel outstanding IOs on queue deletion
        NVMe: Free admin queue memory on initialisation failure
        NVMe: Use ida for nvme device instance
        NVMe: Fix whitespace damage in nvme_init
        NVMe: handle allocation failure in nvme_map_user_pages()
        NVMe: Fix uninitialized iod compiler warning
        NVMe: Do not set IO queue depth beyond device max
        NVMe: Set block queue max sectors
        NVMe: use namespace id for nvme_get_features
        NVMe: replace nvme_ns with nvme_dev for user admin
        NVMe: Fix nvme module init when nvme_major is set
        NVMe: Set request queue logical block size
      21e98932
  4. 28 Sep, 2012 10 commits
  5. 27 Sep, 2012 7 commits
    • Linus Torvalds's avatar
      Merge branch 'drm-fixes' of git://people.freedesktop.org/~airlied/linux · 63994137
      Linus Torvalds authored
      Pull drm fixes from Dave Airlie:
       "The three nouveau fixes quiten unneeded dmesg spam that people are
         seeing and pondering,
      
        The udl fix stops it from trying to driver monitors that are too big,
        where we get a black screen.
      
        And a vmware memory alloc problem."
      
      * 'drm-fixes' of git://people.freedesktop.org/~airlied/linux:
        drm/nvc0/fifo: ignore bits in PFIFO_INTR that aren't set in PFIFO_INTR_EN
        drm/udl: limit modes to the sku pixel limits.
        vmwgfx: corruption in vmw_event_fence_action_create()
        drm/nvc0/ltcg: mask off intr 0x10
        drm/nouveau: silence a debug message triggered by newer userspace
      63994137
    • Linus Torvalds's avatar
      Merge tag 'usb-3.6-rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb · a31fb698
      Linus Torvalds authored
      Pull USB fixes from Greg Kroah-Hartman:
       "Here are two USB bugfixes for your 3.6-rc7 tree.
      
        The OHCI fix has been reported a number of times and is a regression
        from 3.5, and the patch that causes the regression was on the way to
        the -stable trees before I was reminded (again) that this fix needed
        to get to your tree soon.
      
        The host controller bugfix was reported in older kernels as being
        pretty easy to trigger, and has been tested by Red Hat and their
        customers.
      
        Both have been in the usb-next branch in the -next tree for a while
        now, I just cherry-picked them out to get to you in time for the 3.6
        release.
      
        Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>"
      
      * tag 'usb-3.6-rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb:
        USB: Fix race condition when removing host controllers
        USB: ohci-at91: fix null pointer in ohci_hcd_at91_overcurrent_irq
      a31fb698
    • Daniel Mack's avatar
      ALSA: snd-usb: fix next_packet_size calls for pause case · 8dce30c8
      Daniel Mack authored
      Also fix the calls to next_packet_size() for the pause case. This was
      missed in 245baf98 ("ALSA: snd-usb: fix calls to next_packet_size").
      Signed-off-by: default avatarDaniel Mack <zonque@gmail.com>
      Reviewed-by: default avatarTakashi Iwai <tiwai@suse.de>
      Reported-and-tested-by: default avatarChristian Tefzer <ctrefzer@gmx.de>
      Cc: stable@kernel.org
      [ Taking directly because Takashi is on vacation  - Linus ]
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      8dce30c8
    • Linus Torvalds's avatar
      Merge tag 'asoc-3.6' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/sound · 9a7c5909
      Linus Torvalds authored
      Pull ASoC update from Mark Brown:
       "One small and obvious driver-specific fix.
      
        Takashi is on vacation now so he asked me to send directly, it's a
        pretty bad bug with low regression risk."
      
      * tag 'asoc-3.6' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/sound:
        ASoC: wm2000: Correct register size
      9a7c5909
    • Nicolas Dichtel's avatar
      inetpeer: fix token initialization · bc9259a8
      Nicolas Dichtel authored
      When jiffies wraps around (for example, 5 minutes after the boot, see
      INITIAL_JIFFIES) and peer has just been created, now - peer->rate_last can be
      < XRLIM_BURST_FACTOR * timeout, so token is not set to the maximum value, thus
      some icmp packets can be unexpectedly dropped.
      
      Fix this case by initializing last_rate to 60 seconds in the past.
      Signed-off-by: default avatarNicolas Dichtel <nicolas.dichtel@6wind.com>
      Signed-off-by: default avatarEric Dumazet <edumazet@google.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      bc9259a8
    • Narendra K's avatar
      qlcnic: Fix scheduling while atomic bug · 68b3f28c
      Narendra K authored
      In the device close path, 'qlcnic_fw_destroy_ctx' and
      'qlcnic_poll_rsp' call msleep. But  'qlcnic_fw_destroy_ctx' and
      'qlcnic_poll_rsp' are called with 'adapter->tx_clean_lock' spin lock
      held resulting in scheduling while atomic bug causing the following
      trace.
      
      I observed that the commit 012dc19a
      from John Fastabend addresses a similar issue in ixgbevf driver.
      Adopting the same approach used in the commit, this patch uses mdelay
      to address the issue.
      
      [79884.999115] BUG: scheduling while atomic: ip/30846/0x00000002
      [79885.005562] INFO: lockdep is turned off.
      [79885.009958] Modules linked in: qlcnic fuse nf_conntrack_netbios_ns nf_conntrack_broadcast ipt_MASQUERADE bnep bluetooth rfkill ip6table_mangle ip6t_REJECT nf_conntrack_ipv6 nf_defrag_ipv6 ip6table_filter ip6_tables iptable_nat nf_nat iptable_mangle ipt_REJECT nf_conntrack_ipv4 nf_defrag_ipv4 xt_conntrack nf_conntrack iptable_filter ip_tables dcdbas coretemp kvm_intel kvm iTCO_wdt ixgbe iTCO_vendor_support crc32c_intel ghash_clmulni_intel nfsd microcode sb_edac pcspkr edac_core dca bnx2x shpchp auth_rpcgss nfs_acl lpc_ich mfd_core mdio lockd libcrc32c wmi acpi_pad acpi_power_meter sunrpc uinput sd_mod sr_mod cdrom crc_t10dif ahci libahci libata megaraid_sas usb_storage dm_mirror dm_region_hash dm_log dm_mod [last unloaded: qlcnic]
      [79885.083608] Pid: 30846, comm: ip Tainted: G        W  O 3.6.0-rc7+ #1
      [79885.090805] Call Trace:
      [79885.093569]  [<ffffffff816764d8>] __schedule_bug+0x68/0x76
      [79885.099699]  [<ffffffff8168358e>] __schedule+0x99e/0xa00
      [79885.105634]  [<ffffffff81683929>] schedule+0x29/0x70
      [79885.111186]  [<ffffffff81680def>] schedule_timeout+0x16f/0x350
      [79885.117724]  [<ffffffff811afb7a>] ? init_object+0x4a/0x90
      [79885.123770]  [<ffffffff8107c190>] ? __internal_add_timer+0x140/0x140
      [79885.130873]  [<ffffffff81680fee>] schedule_timeout_uninterruptible+0x1e/0x20
      [79885.138773]  [<ffffffff8107e830>] msleep+0x20/0x30
      [79885.144159]  [<ffffffffa04c7fbf>] qlcnic_issue_cmd+0xef/0x290 [qlcnic]
      [79885.151478]  [<ffffffffa04c8265>] qlcnic_fw_cmd_destroy_rx_ctx+0x55/0x90 [qlcnic]
      [79885.159868]  [<ffffffffa04c92fd>] qlcnic_fw_destroy_ctx+0x2d/0xa0 [qlcnic]
      [79885.167576]  [<ffffffffa04bf2ed>] __qlcnic_down+0x11d/0x180 [qlcnic]
      [79885.174708]  [<ffffffffa04bf6f8>] qlcnic_close+0x18/0x20 [qlcnic]
      [79885.181547]  [<ffffffff8153b4c5>] __dev_close_many+0x95/0xe0
      [79885.187899]  [<ffffffff8153b548>] __dev_close+0x38/0x50
      [79885.193761]  [<ffffffff81545101>] __dev_change_flags+0xa1/0x180
      [79885.200419]  [<ffffffff81545298>] dev_change_flags+0x28/0x70
      [79885.206779]  [<ffffffff815531b8>] do_setlink+0x378/0xa00
      [79885.212731]  [<ffffffff81354fe1>] ? nla_parse+0x31/0xe0
      [79885.218612]  [<ffffffff815558ee>] rtnl_newlink+0x37e/0x560
      [79885.224768]  [<ffffffff812cfa19>] ? selinux_capable+0x39/0x50
      [79885.231217]  [<ffffffff812cbf98>] ? security_capable+0x18/0x20
      [79885.237765]  [<ffffffff81555114>] rtnetlink_rcv_msg+0x114/0x2f0
      [79885.244412]  [<ffffffff81551f87>] ? rtnl_lock+0x17/0x20
      [79885.250280]  [<ffffffff81551f87>] ? rtnl_lock+0x17/0x20
      [79885.256148]  [<ffffffff81555000>] ? __rtnl_unlock+0x20/0x20
      [79885.262413]  [<ffffffff81570fc1>] netlink_rcv_skb+0xa1/0xb0
      [79885.268661]  [<ffffffff81551fb5>] rtnetlink_rcv+0x25/0x40
      [79885.274727]  [<ffffffff815708bd>] netlink_unicast+0x19d/0x220
      [79885.281146]  [<ffffffff81570c45>] netlink_sendmsg+0x305/0x3f0
      [79885.287595]  [<ffffffff8152b188>] ? sock_update_classid+0x148/0x2e0
      [79885.294650]  [<ffffffff81525c2c>] sock_sendmsg+0xbc/0xf0
      [79885.300600]  [<ffffffff8152600c>] __sys_sendmsg+0x3ac/0x3c0
      [79885.306853]  [<ffffffff8109be23>] ? up_read+0x23/0x40
      [79885.312510]  [<ffffffff816896cc>] ? do_page_fault+0x2bc/0x570
      [79885.318968]  [<ffffffff81191854>] ? sys_brk+0x44/0x150
      [79885.324715]  [<ffffffff811c458c>] ? fget_light+0x24c/0x520
      [79885.330875]  [<ffffffff815286f9>] sys_sendmsg+0x49/0x90
      [79885.336707]  [<ffffffff8168e429>] system_call_fastpath+0x16/0x1b
      Signed-off-by: default avatarNarendra K <narendra_k@dell.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      68b3f28c
    • Neil Horman's avatar
      bnx2: Clean up remaining iounmap · 64f605c7
      Neil Horman authored
      commit c0357e97 modified bnx2 to switch from
      using ioremap/iounmap to pci_iomap/pci_iounmap.  They missed a spot in the error
      path of bnx2_init_one though.  This patch just cleans that up.
      Signed-off-by: default avatarNeil Horman <nhorman@tuxdriver.com>
      CC: Michael Chan <mcan@broadcom.com>
      CC: "David S. Miller" <davem@davemloft.net>
      Acked-by: default avatarMichael Chan <mchan@broadcom.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      64f605c7