1. 02 10月, 2012 8 次提交
    • L
      Merge branch 'core-locking-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 627312b9
      Linus Torvalds 提交于
      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
    • L
      Merge branch 'core-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 94095a1f
      Linus Torvalds 提交于
      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
    • L
      Merge branch 'core-rcu-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 620e7753
      Linus Torvalds 提交于
      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
    • L
      Merge tag 'ktest-v3.7' of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-ktest · 6977b4c7
      Linus Torvalds 提交于
      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
    • L
      Merge tag 'localmodconfig-v3.7-2' of... · 69e9576b
      Linus Torvalds 提交于
      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
    • Y
      localmodconfig: Fix localyesconfig to set to 'y' not 'm' · 4eae518d
      Yuta Ando 提交于
      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: NYuta Ando <yuta.and@gmail.com>
      Signed-off-by: NSteven Rostedt <rostedt@rostedt.homelinux.com>
      4eae518d
    • L
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/hid · 9fa40a11
      Linus Torvalds 提交于
      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
    • L
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial · 99dbb163
      Linus Torvalds 提交于
      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
  2. 01 10月, 2012 12 次提交
    • L
      Merge tag 'regulator-3.7' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regulator · aae6f989
      Linus Torvalds 提交于
      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
    • L
      Merge tag 'regmap-3.7' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regmap · b34e5f55
      Linus Torvalds 提交于
      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
    • L
      Merge git://git.kernel.org/pub/scm/linux/kernel/git/steve/gfs2-3.0-nmw · e151960a
      Linus Torvalds 提交于
      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
    • J
      Merge branch 'multitouch' into for-linus · cdcd3ac4
      Jiri Kosina 提交于
      Conflicts:
      	drivers/hid/hid-multitouch.c
      cdcd3ac4
    • J
      Merge branch 'upstream' into for-linus · a3cbe10e
      Jiri Kosina 提交于
      Conflicts:
      	drivers/hid/usbhid/hid-quirks.c
      a3cbe10e
    • J
      Merge branches 'from-henrik', 'hidraw', 'logitech', 'picolcd', 'ps3',... · fa2bd301
      Jiri Kosina 提交于
      Merge branches 'from-henrik', 'hidraw', 'logitech', 'picolcd', 'ps3', 'uclogic', 'wacom' and 'wiimote' into for-linus
      fa2bd301
    • R
      HID: hidraw: don't deallocate memory when it is in use · 4fe9f8e2
      Ratan Nalumasu 提交于
      When a device is unplugged, wait for all processes that have opened the device
      to close before deallocating the device.
      Signed-off-by: NRatan Nalumasu <ratan@google.com>
      Signed-off-by: NJiri Kosina <jkosina@suse.cz>
      4fe9f8e2
    • B
      HID: picoLCD: optimize for inactive debugfs · 56fa9441
      Bruno Prémont 提交于
      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: NBruno Prémont <bonbons@linux-vserver.org>
      Signed-off-by: NJiri Kosina <jkosina@suse.cz>
      56fa9441
    • X
      HID: multitouch: add support for GeneralTouch multi-touchscreen · f5ff4e1e
      Xianhan Yu 提交于
      Fix the touch-up no response problem on GeneralTouch twofingers touchscreen and
      modify the driver for new GeneralTouch PWT touchscreen.
      Signed-off-by: NXianhan Yu <aroundight77@gmail.com>
      Reviewed-by Benjamin Tissoires <benjamin.tissoires@gmail.com>
      Signed-off-by: NJiri Kosina <jkosina@suse.cz>
      f5ff4e1e
    • D
      HID: Add support for Sony PS3 BD Remote Control · 5844c1cd
      David Dillow 提交于
      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: NDavid Dillow <dave@thedillows.org>
      Signed-off-by: NAntonio Ospite <ospite@studenti.unina.it>
      Signed-off-by: NJiri Kosina <jkosina@suse.cz>
      5844c1cd
    • K
      HID: keep dev_rdesc unmodified and use it for comparisons · 86e6b77e
      Kevin Daughtridge 提交于
      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: NKevin Daughtridge <kevin@kdau.com>
      Signed-off-by: NJiri Kosina <jkosina@suse.cz>
      86e6b77e
    • L
      Linux 3.6 · a0d271cb
      Linus Torvalds 提交于
      a0d271cb
  3. 30 9月, 2012 3 次提交
    • M
      vfs: dcache: fix deadlock in tree traversal · 8110e16d
      Miklos Szeredi 提交于
      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: NMiklos Szeredi <mszeredi@suse.cz>
      Cc: Al Viro <viro@ZenIV.linux.org.uk>
      Cc: stable@vger.kernel.org
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      8110e16d
    • L
      Merge tag 'iommu-fixes-v3.6-rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/joro/iommu · 6a3e3dbe
      Linus Torvalds 提交于
      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
    • L
      Merge git://git.infradead.org/users/willy/linux-nvme · 21e98932
      Linus Torvalds 提交于
      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. 29 9月, 2012 5 次提交
    • L
      mtdchar: fix offset overflow detection · 9c603e53
      Linus Torvalds 提交于
      Sasha Levin has been running trinity in a KVM tools guest, and was able
      to trigger the BUG_ON() at arch/x86/mm/pat.c:279 (verifying the range of
      the memory type).  The call trace showed that it was mtdchar_mmap() that
      created an invalid remap_pfn_range().
      
      The problem is that mtdchar_mmap() does various really odd and subtle
      things with the vma page offset etc, and uses the wrong types (and the
      wrong overflow) detection for it.
      
      For example, the page offset may well be 32-bit on a 32-bit
      architecture, but after shifting it up by PAGE_SHIFT, we need to use a
      potentially 64-bit resource_size_t to correctly hold the full value.
      
      Also, we need to check that the vma length plus offset doesn't overflow
      before we check that it is smaller than the length of the mtdmap region.
      
      This fixes things up and tries to make the code a bit easier to read.
      Reported-and-tested-by: NSasha Levin <levinsasha928@gmail.com>
      Acked-by: NSuresh Siddha <suresh.b.siddha@intel.com>
      Acked-by: NArtem Bityutskiy <dedekind1@gmail.com>
      Cc: David Woodhouse <dwmw2@infradead.org>
      Cc: linux-mtd@lists.infradead.org
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      9c603e53
    • L
      Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net · 6672d90f
      Linus Torvalds 提交于
      Pull networking fixes from David S Miller:
      
       1) Netfilter xt_limit module can use uninitialized rules, from Jan
          Engelhardt.
      
       2) Wei Yongjun has found several more spots where error pointers were
          treated as NULL/non-NULL and vice versa.
      
       3) bnx2x was converted to pci_io{,un}map() but one remaining plain
          iounmap() got missed.  From Neil Horman.
      
       4) Due to a fence-post type error in initialization of inetpeer entries
          (which is where we store the ICMP rate limiting information), we can
          erroneously drop ICMPs if the inetpeer was created right around when
          jiffies wraps.
      
          Fix from Nicolas Dichtel.
      
       5) smsc75xx resume fix from Steve Glendinnig.
      
       6) LAN87xx smsc chips need an explicit hardware init, from Marek Vasut.
      
       7) qlcnic uses msleep() with locks held, fix from Narendra K.
      
      * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net:
        netdev: octeon: fix return value check in octeon_mgmt_init_phy()
        inetpeer: fix token initialization
        qlcnic: Fix scheduling while atomic bug
        bnx2: Clean up remaining iounmap
        net: phy: smsc: Implement PHY config_init for LAN87xx
        smsc75xx: fix resume after device reset
        netdev: pasemi: fix return value check in pasemi_mac_phy_init()
        team: fix return value check
        l2tp: fix return value check
        netfilter: xt_limit: have r->cost != 0 case work
      6672d90f
    • L
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs · 7596824e
      Linus Torvalds 提交于
      Pull vfs fixes from Al Viro:
       "A couple of fixes; one for automount/lazy umount race, another a
        classic "we don't protect the refcount transition to zero with the
        lock that protects looking for object in hash" kind of crap in lockd."
      
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs:
        close the race in nlmsvc_free_block()
        do_add_mount()/umount -l races
      7596824e
    • L
      Merge branch 'for-linus-3.6-rc-final' of git://git.kernel.org/pub/scm/linux/kernel/git/rw/uml · 97956605
      Linus Torvalds 提交于
      Pull UML fixes from Richard Weinberger.
      
      * 'for-linus-3.6-rc-final' of git://git.kernel.org/pub/scm/linux/kernel/git/rw/uml:
        um: Preinclude include/linux/kern_levels.h
        um: Fix IPC on um
        um: kill thread->forking
        um: let signal_delivered() do SIGTRAP on singlestepping into handler
        um: don't leak floating point state and segment registers on execve()
        um: take cleaning singlestep to start_thread()
      97956605
    • L
      Merge tag 'dm-3.6-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/agk/linux-dm · c3a086e6
      Linus Torvalds 提交于
      Pull dm fixes from Alasdair G Kergon:
       "A few fixes for problems discovered during the 3.6 cycle.
      
        Of particular note, are fixes to the thin target's discard support,
        which I hope is finally working correctly; and fixes for multipath
        ioctls and device limits when there are no paths."
      
      * tag 'dm-3.6-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/agk/linux-dm:
        dm verity: fix overflow check
        dm thin: fix discard support for data devices
        dm thin: tidy discard support
        dm: retain table limits when swapping to new table with no devices
        dm table: clear add_random unless all devices have it set
        dm: handle requests beyond end of device instead of using BUG_ON
        dm mpath: only retry ioctl when no paths if queue_if_no_path set
        dm thin: do not set discard_zeroes_data
      c3a086e6
  5. 28 9月, 2012 12 次提交
    • A
      thp: avoid VM_BUG_ON page_count(page) false positives in __collapse_huge_page_copy · 99a1300e
      Andrea Arcangeli 提交于
      Speculative cache pagecache lookups can elevate the refcount from
      under us, so avoid the false positive. If the refcount is < 2 we'll be
      notified by a VM_BUG_ON in put_page_testzero as there are two
      put_page(src_page) in a row before returning from this function.
      Signed-off-by: NAndrea Arcangeli <aarcange@redhat.com>
      Reviewed-by: NRik van Riel <riel@redhat.com>
      Reviewed-by: NJohannes Weiner <hannes@cmpxchg.org>
      Cc: Hugh Dickins <hughd@google.com>
      Cc: Mel Gorman <mgorman@suse.de>
      Cc: Petr Holasek <pholasek@redhat.com>
      Cc: Andrew Morton <akpm@linux-foundation.org>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      99a1300e
    • J
      iommu/amd: Fix wrong assumption in iommu-group specific code · 0774e392
      Joerg Roedel 提交于
      The new IOMMU groups code in the AMD IOMMU driver makes the
      assumption that there is a pci_dev struct available for all
      device-ids listed in the IVRS ACPI table. Unfortunatly this
      assumption is not true and so this code causes a NULL
      pointer dereference at boot on some systems.
      
      Fix it by making sure the given pointer is never NULL when
      passed to the group specific code. The real fix is larger
      and will be queued for v3.7.
      Reported-by: NFlorian Dazinger <florian@dazinger.net>
      Signed-off-by: NJoerg Roedel <joerg.roedel@amd.com>
      0774e392
    • M
      Merge remote-tracking branches 'regulator/topic/core',... · 6a2027ab
      Mark Brown 提交于
      Merge remote-tracking branches 'regulator/topic/core', 'regulator/topic/bypass', 'regulator/topic/tol', 'regulator/topic/drivers' and 'regulator/topic/tps6586x' into regulator-next
      6a2027ab
    • M
      regulator: arizona-ldo: Remove top voltage · e96961da
      Mark Brown 提交于
      The highest voltage step is not supported.
      Signed-off-by: NMark Brown <broonie@opensource.wolfsonmicro.com>
      e96961da
    • W
      netdev: octeon: fix return value check in octeon_mgmt_init_phy() · df555b66
      Wei Yongjun 提交于
      In case of error, the function of_phy_connect() returns NULL
      pointer not ERR_PTR(). The IS_ERR() test in the return value
      check should be replaced with NULL test.
      
      dpatch engine is used to auto generate this patch.
      (https://github.com/weiyj/dpatch)
      Signed-off-by: NWei Yongjun <yongjun_wei@trendmicro.com.cn>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      df555b66
    • L
      Merge branch 'drm-fixes' of git://people.freedesktop.org/~airlied/linux · 63994137
      Linus Torvalds 提交于
      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
    • L
      Merge tag 'usb-3.6-rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb · a31fb698
      Linus Torvalds 提交于
      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
    • D
      ALSA: snd-usb: fix next_packet_size calls for pause case · 8dce30c8
      Daniel Mack 提交于
      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: NDaniel Mack <zonque@gmail.com>
      Reviewed-by: NTakashi Iwai <tiwai@suse.de>
      Reported-and-tested-by: NChristian Tefzer <ctrefzer@gmx.de>
      Cc: stable@kernel.org
      [ Taking directly because Takashi is on vacation  - Linus ]
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      8dce30c8
    • L
      Merge tag 'asoc-3.6' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/sound · 9a7c5909
      Linus Torvalds 提交于
      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
    • N
      inetpeer: fix token initialization · bc9259a8
      Nicolas Dichtel 提交于
      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: NNicolas Dichtel <nicolas.dichtel@6wind.com>
      Signed-off-by: NEric Dumazet <edumazet@google.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      bc9259a8
    • N
      qlcnic: Fix scheduling while atomic bug · 68b3f28c
      Narendra K 提交于
      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: NNarendra K <narendra_k@dell.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      68b3f28c
    • N
      bnx2: Clean up remaining iounmap · 64f605c7
      Neil Horman 提交于
      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: NNeil Horman <nhorman@tuxdriver.com>
      CC: Michael Chan <mcan@broadcom.com>
      CC: "David S. Miller" <davem@davemloft.net>
      Acked-by: NMichael Chan <mchan@broadcom.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      64f605c7