1. 07 9月, 2012 1 次提交
  2. 20 8月, 2012 1 次提交
    • K
      crypto: caam - fix possible deadlock condition · ce026cb9
      Kim Phillips 提交于
      commit "crypto: caam - use non-irq versions of spinlocks for job rings"
      made two bad assumptions:
      
      (a) The caam_jr_enqueue lock isn't used in softirq context.
      Not true: jr_enqueue can be interrupted by an incoming net
      interrupt and the received packet may be sent for encryption,
      via caam_jr_enqueue in softirq context, thereby inducing a
      deadlock.
      
      This is evidenced when running netperf over an IPSec tunnel
      between two P4080's, with spinlock debugging turned on:
      
      [  892.092569] BUG: spinlock lockup on CPU#7, netperf/10634, e8bf5f70
      [  892.098747] Call Trace:
      [  892.101197] [eff9fc10] [c00084c0] show_stack+0x48/0x15c (unreliable)
      [  892.107563] [eff9fc50] [c0239c2c] do_raw_spin_lock+0x16c/0x174
      [  892.113399] [eff9fc80] [c0596494] _raw_spin_lock+0x3c/0x50
      [  892.118889] [eff9fc90] [c0445e74] caam_jr_enqueue+0xf8/0x250
      [  892.124550] [eff9fcd0] [c044a644] aead_decrypt+0x6c/0xc8
      [  892.129625] BUG: spinlock lockup on CPU#5, swapper/5/0, e8bf5f70
      [  892.129629] Call Trace:
      [  892.129637] [effa7c10] [c00084c0] show_stack+0x48/0x15c (unreliable)
      [  892.129645] [effa7c50] [c0239c2c] do_raw_spin_lock+0x16c/0x174
      [  892.129652] [effa7c80] [c0596494] _raw_spin_lock+0x3c/0x50
      [  892.129660] [effa7c90] [c0445e74] caam_jr_enqueue+0xf8/0x250
      [  892.129666] [effa7cd0] [c044a644] aead_decrypt+0x6c/0xc8
      [  892.129674] [effa7d00] [c0509724] esp_input+0x178/0x334
      [  892.129681] [effa7d50] [c0519778] xfrm_input+0x77c/0x818
      [  892.129688] [effa7da0] [c050e344] xfrm4_rcv_encap+0x20/0x30
      [  892.129697] [effa7db0] [c04b90c8] ip_local_deliver+0x190/0x408
      [  892.129703] [effa7de0] [c04b966c] ip_rcv+0x32c/0x898
      [  892.129709] [effa7e10] [c048b998] __netif_receive_skb+0x27c/0x4e8
      [  892.129715] [effa7e80] [c048d744] netif_receive_skb+0x4c/0x13c
      [  892.129726] [effa7eb0] [c03c28ac] _dpa_rx+0x1a8/0x354
      [  892.129732] [effa7ef0] [c03c2ac4] ingress_rx_default_dqrr+0x6c/0x108
      [  892.129742] [effa7f10] [c0467ae0] qman_poll_dqrr+0x170/0x1d4
      [  892.129748] [effa7f40] [c03c153c] dpaa_eth_poll+0x20/0x94
      [  892.129754] [effa7f60] [c048dbd0] net_rx_action+0x13c/0x1f4
      [  892.129763] [effa7fa0] [c003d1b8] __do_softirq+0x108/0x1b0
      [  892.129769] [effa7ff0] [c000df58] call_do_softirq+0x14/0x24
      [  892.129775] [ebacfe70] [c0004868] do_softirq+0xd8/0x104
      [  892.129780] [ebacfe90] [c003d5a4] irq_exit+0xb8/0xd8
      [  892.129786] [ebacfea0] [c0004498] do_IRQ+0xa4/0x1b0
      [  892.129792] [ebacfed0] [c000fad8] ret_from_except+0x0/0x18
      [  892.129798] [ebacff90] [c0009010] cpu_idle+0x94/0xf0
      [  892.129804] [ebacffb0] [c059ff88] start_secondary+0x42c/0x430
      [  892.129809] [ebacfff0] [c0001e28] __secondary_start+0x30/0x84
      [  892.281474]
      [  892.282959] [eff9fd00] [c0509724] esp_input+0x178/0x334
      [  892.288186] [eff9fd50] [c0519778] xfrm_input+0x77c/0x818
      [  892.293499] [eff9fda0] [c050e344] xfrm4_rcv_encap+0x20/0x30
      [  892.299074] [eff9fdb0] [c04b90c8] ip_local_deliver+0x190/0x408
      [  892.304907] [eff9fde0] [c04b966c] ip_rcv+0x32c/0x898
      [  892.309872] [eff9fe10] [c048b998] __netif_receive_skb+0x27c/0x4e8
      [  892.315966] [eff9fe80] [c048d744] netif_receive_skb+0x4c/0x13c
      [  892.321803] [eff9feb0] [c03c28ac] _dpa_rx+0x1a8/0x354
      [  892.326855] [eff9fef0] [c03c2ac4] ingress_rx_default_dqrr+0x6c/0x108
      [  892.333212] [eff9ff10] [c0467ae0] qman_poll_dqrr+0x170/0x1d4
      [  892.338872] [eff9ff40] [c03c153c] dpaa_eth_poll+0x20/0x94
      [  892.344271] [eff9ff60] [c048dbd0] net_rx_action+0x13c/0x1f4
      [  892.349846] [eff9ffa0] [c003d1b8] __do_softirq+0x108/0x1b0
      [  892.355338] [eff9fff0] [c000df58] call_do_softirq+0x14/0x24
      [  892.360910] [e7169950] [c0004868] do_softirq+0xd8/0x104
      [  892.366135] [e7169970] [c003d5a4] irq_exit+0xb8/0xd8
      [  892.371101] [e7169980] [c0004498] do_IRQ+0xa4/0x1b0
      [  892.375979] [e71699b0] [c000fad8] ret_from_except+0x0/0x18
      [  892.381466] [e7169a70] [c0445e74] caam_jr_enqueue+0xf8/0x250
      [  892.387127] [e7169ab0] [c044ad4c] aead_givencrypt+0x6ac/0xa70
      [  892.392873] [e7169b20] [c050a0b8] esp_output+0x2b4/0x570
      [  892.398186] [e7169b80] [c0519b9c] xfrm_output_resume+0x248/0x7c0
      [  892.404194] [e7169bb0] [c050e89c] xfrm4_output_finish+0x18/0x28
      [  892.410113] [e7169bc0] [c050e8f4] xfrm4_output+0x48/0x98
      [  892.415427] [e7169bd0] [c04beac0] ip_local_out+0x48/0x98
      [  892.420740] [e7169be0] [c04bec7c] ip_queue_xmit+0x16c/0x490
      [  892.426314] [e7169c10] [c04d6128] tcp_transmit_skb+0x35c/0x9a4
      [  892.432147] [e7169c70] [c04d6f98] tcp_write_xmit+0x200/0xa04
      [  892.437808] [e7169cc0] [c04c8ccc] tcp_sendmsg+0x994/0xcec
      [  892.443213] [e7169d40] [c04eebfc] inet_sendmsg+0xd0/0x164
      [  892.448617] [e7169d70] [c04792f8] sock_sendmsg+0x8c/0xbc
      [  892.453931] [e7169e40] [c047aecc] sys_sendto+0xc0/0xfc
      [  892.459069] [e7169f10] [c047b934] sys_socketcall+0x110/0x25c
      [  892.464729] [e7169f40] [c000f480] ret_from_syscall+0x0/0x3c
      
      (b) since the caam_jr_dequeue lock is only used in bh context,
      then semantically it should use _bh spin_lock types.  spin_lock_bh
      semantics are to disable back-halves, and used when a lock is shared
      between softirq (bh) context and process and/or h/w IRQ context.
      Since the lock is only used within softirq context, and this tasklet
      is atomic, there is no need to do the additional work to disable
      back halves.
      
      This patch adds back-half disabling protection to caam_jr_enqueue
      spin_locks to fix (a), and drops it from caam_jr_dequeue to fix (b).
      Signed-off-by: NKim Phillips <kim.phillips@freescale.com>
      Signed-off-by: NHerbert Xu <herbert@gondor.apana.org.au>
      ce026cb9
  3. 30 7月, 2012 1 次提交
  4. 27 7月, 2012 9 次提交
    • L
      Merge git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6 · 44a6b844
      Linus Torvalds 提交于
      Pull crypto updates from Herbert Xu:
      
       - Fixed algorithm construction hang when self-test fails.
       - Added SHA variants to talitos AEAD list.
       - New driver for Exynos random number generator.
       - Performance enhancements for arc4.
       - Added hwrng support to caam.
       - Added ahash support to caam.
       - Fixed bad kfree in aesni-intel.
       - Allow aesni-intel in FIPS mode.
       - Added atmel driver with support for AES/3DES/SHA.
       - Bug fixes for mv_cesa.
       - CRC hardware driver for BF60x family processors.
      
      * git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6: (66 commits)
        crypto: twofish-avx - remove useless instruction
        crypto: testmgr - add aead cbc aes hmac sha1,256,512 test vectors
        crypto: talitos - add sha224, sha384 and sha512 to existing AEAD algorithms
        crypto: talitos - export the talitos_submit function
        crypto: talitos - move talitos structures to header file
        crypto: atmel - add new tests to tcrypt
        crypto: atmel - add Atmel SHA1/SHA256 driver
        crypto: atmel - add Atmel DES/TDES driver
        crypto: atmel - add Atmel AES driver
        ARM: AT91SAM9G45: add crypto peripherals
        crypto: testmgr - allow aesni-intel and ghash_clmulni-intel in fips mode
        hwrng: exynos - Add support for Exynos random number generator
        crypto: aesni-intel - fix wrong kfree pointer
        crypto: caam - ERA retrieval and printing for SEC device
        crypto: caam - Using alloc_coherent for caam job rings
        crypto: algapi - Fix hang on crypto allocation
        crypto: arc4 - now arc needs blockcipher support
        crypto: caam - one tasklet per job ring
        crypto: caam - consolidate memory barriers from job ring en/dequeue
        crypto: caam - only query h/w in job ring dequeue path
        ...
      44a6b844
    • L
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input · 945c40c6
      Linus Torvalds 提交于
      Pull input layer updates from Dmitry Torokhov:
       "First set of updates for the input subsystem.  You will get a new
        touchscreen driver (Melfas mms114), a new keypad driver for LPC32xx
        SoC, large update to Atmel mXT touchscreen driver, a lot of drivers
        acquired device tree support and a slew of other fixes."
      
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input: (57 commits)
        Input: add MELFAS mms114 touchscreen driver
        Input: add support for key scan interface of the LPC32xx SoC
        Input: omap4-keypad - add device tree support
        Input: hanwang - add support for Art Master II tablet
        Input: spear_keyboard - reconfigure operating frequency on suspend
        Input: spear_keyboard - fix clock handling during suspend/resume
        Input: ff-memless - fix a couple min_t() casts
        Input: synaptics - print firmware ID and board number at init
        Input: spear_keyboard - generalize keyboard frequency configuration
        Input: spear_keyboard - rename bit definitions to reflect register
        Input: spear_keyboard - use correct io accessors
        Input: spear-keyboard - fix disable device_init_wakeup in remove
        Input: wacom_i2c - fix compiler warning
        Input: imx_keypad - check error returned by clk_prepare_enable()
        Input: imx_keypad - adapt the new kpp clock name
        Input: imx_keypad - use clk_prepare_enable/clk_disable_unprepare()
        Input: ad7879 - add option to correct xy axis
        Input: synaptics_usb - Remove TrackPoint name trailing whitespace
        Revert "Input: atmel_mxt_ts - warn if sysfs could not be created"
        Input: MT - Include win8 support
        ...
      945c40c6
    • L
      Merge tag 'spi-3.6' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/misc · 0082c16e
      Linus Torvalds 提交于
      Pull spi updates from Mark Brown:
       "Since Grant is even more specacularly busy than usual for the time
        being I've been collecting SPI patches for him for this release -
        probably things will revert back to Grant before the next release.
      
        There's nothing too exciting here, mostly it's simple driver specific
        stuff:
      
         - Add spi: to the modaliases of SPI devices to provide namespacing.
         - A driver for AD-FMCOMMS1-EBZ.
         - DT binding for Orion.
         - Fixes and cleanups for i.MX, PL0022, OMAP and bitbang drivers.
      
         There may be a few more fixes I've missed, people keep sending me new
         things."
      
      * tag 'spi-3.6' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/misc:
        spi/orion: remove uneeded spi_info
        spi/bcm63xx: fix clock configuration selection
        spi/orion: add device tree binding
        spi/omap2: mark omap2_mcspi_master_setup as __devinit
        spi: omap2-mcspi: Fix the below warning
        spi: Add AD-FMCOMMS1-EBZ I2C-SPI bridge driver
        spi/imx: use gpio_is_valid to determine if a gpio is valid
        spi/imx: remove redundant config.speed_hz setting
        spi/gpio: start with CS non-active
        spi: tegra: use dmaengine based dma driver
        spi/pl022: cleanup pl022 header documentation
        spi/pl022: enable runtime PM
        spi/pl022: delete DB5500 support
        spi/pl022: disable port when unused
        spi: Add "spi:" prefix to modalias attribute of spi devices
      0082c16e
    • H
      bcma: fix invalid PMU chip control masks · 1f03bf06
      Hauke Mehrtens 提交于
      Commit b9562545 ("bcma: complete workaround for BCMA43224 and
      BCM4313") introduced the wrong masks for setting the chip control
      registers - the "mask" parameter is inverse.
      
      It should be the mask of bits *not* changed, which is admittedly a bit
      non-intuitive.
      
      The incorrect mask not only causes the driver to not work correctly on
      the chips affected (eg the BCM43224 on the Macbook Air 4,2) but the
      state persists over a soft reset, causing the next boot to not
      necessarily see the device correctly.
      Reported-and-tested-by: NLinus Torvalds <torvalds@linux-foundation.org>
      Tested-by: NSeth Forshee <seth.forshee@canonical.com>
      Cc: Hauke Mehrtens <hauke@hauke-m.de>
      Cc: Arend Van Spriel <arend@broadcom.com>
      Cc: Pieter-Paul Giesberts <pieterpg@broadcom.com>
      Cc: Brett Rudley <brudley@broadcom.com>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      1f03bf06
    • L
      Merge tag 'char-misc-3.6-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/char-misc · b84382f5
      Linus Torvalds 提交于
      Pull char/misc patches from Greg Kroah-Hartman:
       "Here's the "big" pull request for 3.6-rc1 for the char/misc drivers.
      
        It's really just a few updates to the mei driver, plus 4 other tiny
        patches, nothing big at all.
      
        Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>"
      
      * tag 'char-misc-3.6-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/char-misc:
        mei: use module_pci_driver
        powerpc/BSR: cleanup the error path of bsr_init
        mei: mei_irq_thread_write_handler - line break fix
        mei: streamline the _mei_irq_thread_close/ioctol functions
        mei: introduce mei_data2slots wrapper
        mei: mei_wd_host_init: update the comment
        mei: remove write only wariable wd_due_counter
        mei: mei_device can be const for mei register access functions
        mei: revamp host buffer interface function
        mei: don't query HCSR for host buffer depth
        mei: group wd_interface_reg with watchdog variables within struct mei_device
        mei: mei_irq_thread_write_handler check for overflow
        mei: make mei_write_message more readable
        mei: check for error codes that mei_flow_ctrl_creds retuns
        misc: at25: Parse dt settings
        misc: hpilo: increase number of max supported channels
        mei: mei.txt: minor grammar fixes
      b84382f5
    • L
      Merge tag 'driver-core-3.6-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core · fa93669a
      Linus Torvalds 提交于
      Pull driver core changes from Greg Kroah-Hartman:
       "Here's the big driver core pull request for 3.6-rc1.
      
        Unlike 3.5, this kernel should be a lot tamer, with the printk changes
        now settled down.  All we have here is some extcon driver updates, w1
        driver updates, a few printk cleanups that weren't needed for 3.5, but
        are good to have now, and some other minor fixes/changes in the driver
        core.
      
        All of these have been in the linux-next releases for a while now.
      
        Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>"
      
      * tag 'driver-core-3.6-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core: (38 commits)
        printk: Export struct log size and member offsets through vmcoreinfo
        Drivers: hv: Change the hex constant to a decimal constant
        driver core: don't trigger uevent after failure
        extcon: MAX77693: Add extcon-max77693 driver to support Maxim MAX77693 MUIC device
        sysfs: fail dentry revalidation after namespace change fix
        sysfs: fail dentry revalidation after namespace change
        extcon: spelling of detach in function doc
        extcon: arizona: Stop microphone detection if we give up on it
        extcon: arizona: Update cable reporting calls and split headset
        PM / Runtime: Do not increment device usage counts before probing
        kmsg - do not flush partial lines when the console is busy
        kmsg - export "continuation record" flag to /dev/kmsg
        kmsg - avoid warning for CONFIG_PRINTK=n compilations
        kmsg - properly print over-long continuation lines
        driver-core: Use kobj_to_dev instead of re-implementing it
        driver-core: Move kobj_to_dev from genhd.h to device.h
        driver core: Move deferred devices to the end of dpm_list before probing
        driver core: move uevent call to driver_register
        driver core: fix shutdown races with probe/remove(v3)
        Extcon: Arizona: Add driver for Wolfson Arizona class devices
        ...
      fa93669a
    • L
      Merge tag 'staging-3.6-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging · b13bc8dd
      Linus Torvalds 提交于
      Pull staging tree patches from Greg Kroah-Hartman:
       "Here's the big staging tree merge for the 3.6-rc1 merge window.
      
        There are some patches in here outside of drivers/staging/, notibly
        the iio code (which is still stradeling the staging / not staging
        boundry), the pstore code, and the tracing code.  All of these have
        gotten acks from the various subsystem maintainers to be included in
        this tree.  The pstore and tracing patches are related, and are coming
        here as they replace one of the android staging drivers.
      
        Otherwise, the normal staging mess.  Lots of cleanups and a few new
        drivers (some iio drivers, and the large csr wireless driver
        abomination.)
      
        Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>"
      
      Fixed up trivial conflicts in drivers/staging/comedi/drivers/s626.h and
      drivers/staging/gdm72xx/netlink_k.c
      
      * tag 'staging-3.6-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging: (1108 commits)
        staging: csr: delete a bunch of unused library functions
        staging: csr: remove csr_utf16.c
        staging: csr: remove csr_pmem.h
        staging: csr: remove CsrPmemAlloc
        staging: csr: remove CsrPmemFree()
        staging: csr: remove CsrMemAllocDma()
        staging: csr: remove CsrMemCalloc()
        staging: csr: remove CsrMemAlloc()
        staging: csr: remove CsrMemFree() and CsrMemFreeDma()
        staging: csr: remove csr_util.h
        staging: csr: remove CsrOffSetOf()
        stating: csr: remove unneeded #includes in csr_util.c
        staging: csr: make CsrUInt16ToHex static
        staging: csr: remove CsrMemCpy()
        staging: csr: remove CsrStrLen()
        staging: csr: remove CsrVsnprintf()
        staging: csr: remove CsrStrDup
        staging: csr: remove CsrStrChr()
        staging: csr: remove CsrStrNCmp
        staging: csr: remove CsrStrCmp
        ...
      b13bc8dd
    • L
      Merge tag 'usb-3.6-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb · 9fc37779
      Linus Torvalds 提交于
      Pull USB patches from Greg Kroah-Hartman:
       "Here's the big USB patch set for the 3.6-rc1 merge window.
      
        Lots of little changes in here, primarily for gadget controllers and
        drivers.  There's some scsi changes that I think also went in through
        the scsi tree, but they merge just fine.  All of these patches have
        been in the linux-next tree for a while now.
      
        Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>"
      
      Fix up trivial conflicts in include/scsi/scsi_device.h (same libata
      conflict that Jeff had already encountered)
      
      * tag 'usb-3.6-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb: (207 commits)
        usb: Add USB_QUIRK_RESET_RESUME for all Logitech UVC webcams
        usb: Add quirk detection based on interface information
        usb: s3c-hsotg: Add header file protection macros in s3c-hsotg.h
        USB: ehci-s5p: Add vbus setup function to the s5p ehci glue layer
        USB: add USB_VENDOR_AND_INTERFACE_INFO() macro
        USB: notify phy when root hub port connect change
        USB: remove 8 bytes of padding from usb_host_interface on 64 bit builds
        USB: option: add ZTE MF821D
        USB: sierra: QMI mode MC7710 moved to qcserial
        USB: qcserial: adding Sierra Wireless devices
        USB: qcserial: support generic Qualcomm serial ports
        USB: qcserial: make probe more flexible
        USB: qcserial: centralize probe exit path
        USB: qcserial: consolidate usb_set_interface calls
        USB: ehci-s5p: Add support for device tree
        USB: ohci-exynos: Add support for device tree
        USB: ehci-omap: fix compile failure(v1)
        usb: host: tegra: pass correct pointer in ehci_setup()
        USB: ehci-fsl: Update ifdef check to work on 64-bit ppc
        USB: serial: keyspan: Removed unrequired parentheses.
        ...
      9fc37779
    • L
      Merge tag 'upstream-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jgarzik/libata-dev · 5e23ae49
      Linus Torvalds 提交于
      Pull libata updates from Jeff Garzik:
       "Notable changes:
      
         - Updating libata to directly bind with ACPI / runtime power mgmt.
           This is a pre-req for SATA ZPODD (CD-ROM power management).
      
           Touches ACPI (exports++) and SCSI in minor ways.  Has been in
           linux-next for weeks.
      
           The rest of this should come via SCSI tree, as it involves a lot of
           updates to the 'sr' driver etc.
      
        Other, minor changes:
      
         - module_pci_driver() removes a lot of common boilerplate from each
           PCI driver
      
         - minor coding style, whitespace cleanups
      
         - pata_pcmcia bug fix, caught by Coccinelle
      
         - pata_imx, sata_dwc_460ex minor vendor updates
      
         - ahci_platform: use simple PM ops, and thereby add hibernation cb's
      
         - Add a few device-specific quirks"
      
      * tag 'upstream-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jgarzik/libata-dev: (23 commits)
        [libata] pata_cmd64x: whitespace cleanup
        libata-acpi: fix up for acpi_pm_device_sleep_state API
        sata_dwc_460ex: device tree may specify dma_channel
        ahci, trivial: fixed coding style issues related to braces
        ahci_platform: add hibernation callbacks
        libata-eh.c: local functions should not be exposed globally
        libata-transport.c: local functions should not be exposed globally
        sata_dwc_460ex: support hardreset
        ata: use module_pci_driver
        drivers/ata/pata_pcmcia.c: adjust suspicious bit operation
        pata_imx: Convert to clk_prepare_enable/clk_disable_unprepare
        ahci: Enable SB600 64bit DMA on MSI K9AGM2 (MS-7327) v2
        [libata] Prevent interface errors with Seagate FreeAgent GoFlex
        drivers/acpi/glue: revert accidental license-related 6b66d958 bits
        libata-acpi: add missing inlines in libata.h
        libata: tell scsi layer device supports runtime power off
        libata: detect Device Attention support
        libata-acpi: register/unregister device to/from power resource
        libata-acpi: add ata port runtime D3Cold support
        libata-acpi: set acpi state for SATA port
        ...
      5e23ae49
  5. 26 7月, 2012 16 次提交
  6. 25 7月, 2012 12 次提交
    • D
      Merge branch 'next' into for-linus · 314820c9
      Dmitry Torokhov 提交于
      314820c9
    • L
      Merge tag 'scsi-misc' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi · bdc0077a
      Linus Torvalds 提交于
      Pull first round of SCSI updates from James Bottomley:
       "The most important feature of this patch set is the new async
        infrastructure that makes sure async_synchronize_full() synchronizes
        all domains and allows us to remove all the hacks (like having
        scsi_complete_async_scans() in the device base code) and means that
        the async infrastructure will "just work" in future.
      
        The rest is assorted driver updates (aacraid, bnx2fc, virto-scsi,
        megaraid, bfa, lpfc, qla2xxx, qla4xxx) plus a lot of infrastructure
        work in sas and FC.
      
        Signed-off-by: James Bottomley <JBottomley@Parallels.com>"
      
      * tag 'scsi-misc' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi: (97 commits)
        [SCSI] Revert "[SCSI] fix async probe regression"
        [SCSI] cleanup usages of scsi_complete_async_scans
        [SCSI] queue async scan work to an async_schedule domain
        [SCSI] async: make async_synchronize_full() flush all work regardless of domain
        [SCSI] async: introduce 'async_domain' type
        [SCSI] bfa: Fix to set correct return error codes and misc cleanup.
        [SCSI] aacraid: Series 7 Async. (performance) mode support
        [SCSI] aha152x: Allow use on 64bit systems
        [SCSI] virtio-scsi: Add vdrv->scan for post VIRTIO_CONFIG_S_DRIVER_OK LUN scanning
        [SCSI] bfa: squelch lockdep complaint with a spin_lock_init
        [SCSI] qla2xxx: remove unnecessary reads of PCI_CAP_ID_EXP
        [SCSI] qla4xxx: remove unnecessary read of PCI_CAP_ID_EXP
        [SCSI] ufs: fix incorrect return value about SUCCESS and FAILED
        [SCSI] ufs: reverse the ufshcd_is_device_present logic
        [SCSI] ufs: use module_pci_driver
        [SCSI] usb-storage: update usb devices for write cache quirk in quirk list.
        [SCSI] usb-storage: add support for write cache quirk
        [SCSI] set to WCE if usb cache quirk is present.
        [SCSI] virtio-scsi: hotplug support for virtio-scsi
        [SCSI] virtio-scsi: split scatterlist per target
        ...
      bdc0077a
    • L
      Merge git://git.kernel.org/pub/scm/linux/kernel/git/steve/gfs2-3.0-nmw · 801b0365
      Linus Torvalds 提交于
      Pull GFS2 updates from Steven Whitehouse.
      
      * git://git.kernel.org/pub/scm/linux/kernel/git/steve/gfs2-3.0-nmw:
        GFS2: Eliminate 64-bit divides
        GFS2: Reduce file fragmentation
        GFS2: kernel panic with small gfs2 filesystems - 1 RG
        GFS2: Fixing double brelse'ing bh allocated in gfs2_meta_read when EIO occurs
        GFS2: Combine functions get_local_rgrp and gfs2_inplace_reserve
        GFS2: Add kobject release method
        GFS2: Size seq_file buffer more carefully
        GFS2: Use seq_vprintf for glocks debugfs file
        seq_file: Add seq_vprintf function and export it
        GFS2: Use lvbs for storing rgrp information with mount option
        GFS2: Cache last hash bucket for glock seq_files
        GFS2: Increase buffer size for glocks and glstats debugfs files
        GFS2: Fix error handling when reading an invalid block from the journal
        GFS2: Add "top dir" flag support
        GFS2: Fold quota data into the reservations struct
        GFS2: Extend the life of the reservations
      801b0365
    • L
      Merge branch 'for-3.6' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/cgroup · 614a6d43
      Linus Torvalds 提交于
      Pull cgroup changes from Tejun Heo:
       "Nothing too interesting.  A minor bug fix and some cleanups."
      
      * 'for-3.6' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/cgroup:
        cgroup: Update remount documentation
        cgroup: cgroup_rm_files() was calling simple_unlink() with the wrong inode
        cgroup: Remove populate() documentation
        cgroup: remove hierarchy_mutex
      614a6d43
    • L
      Merge branch 'for-3.6' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/wq · a08489c5
      Linus Torvalds 提交于
      Pull workqueue changes from Tejun Heo:
       "There are three major changes.
      
         - WQ_HIGHPRI has been reimplemented so that high priority work items
           are served by worker threads with -20 nice value from dedicated
           highpri worker pools.
      
         - CPU hotplug support has been reimplemented such that idle workers
           are kept across CPU hotplug events.  This makes CPU hotplug cheaper
           (for PM) and makes the code simpler.
      
         - flush_kthread_work() has been reimplemented so that a work item can
           be freed while executing.  This removes an annoying behavior
           difference between kthread_worker and workqueue."
      
      * 'for-3.6' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/wq:
        workqueue: fix spurious CPU locality WARN from process_one_work()
        kthread_worker: reimplement flush_kthread_work() to allow freeing the work item being executed
        kthread_worker: reorganize to prepare for flush_kthread_work() reimplementation
        workqueue: simplify CPU hotplug code
        workqueue: remove CPU offline trustee
        workqueue: don't butcher idle workers on an offline CPU
        workqueue: reimplement CPU online rebinding to handle idle workers
        workqueue: drop @bind from create_worker()
        workqueue: use mutex for global_cwq manager exclusion
        workqueue: ROGUE workers are UNBOUND workers
        workqueue: drop CPU_DYING notifier operation
        workqueue: perform cpu down operations from low priority cpu_notifier()
        workqueue: reimplement WQ_HIGHPRI using a separate worker_pool
        workqueue: introduce NR_WORKER_POOLS and for_each_worker_pool()
        workqueue: separate out worker_pool flags
        workqueue: use @pool instead of @gcwq or @cpu where applicable
        workqueue: factor out worker_pool from global_cwq
        workqueue: don't use WQ_HIGHPRI for unbound workqueues
      a08489c5
    • L
      Merge branch 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jack/linux-fs · 08d9329c
      Linus Torvalds 提交于
      Pull misc udf, ext2, ext3, and isofs fixes from Jan Kara:
       "Assorted, mostly trivial, fixes for udf, ext2, ext3, and isofs.  I'm
        on vacation and scarcely checking email since we are expecting baby
        any day now but these fixes should be safe to go in and I don't want
        to delay them unnecessarily."
      
      * 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jack/linux-fs:
        udf: avoid info leak on export
        isofs: avoid info leak on export
        udf: Improve table length check to avoid possible overflow
        ext3: Check return value of blkdev_issue_flush()
        jbd: Check return value of blkdev_issue_flush()
        udf: Do not decrement i_blocks when freeing indirect extent block
        udf: Fix memory leak when mounting
        ext2: cleanup the confused goto label
        UDF: Remove unnecessary variable "offset" from udf_fill_inode
        udf: stop using s_dirt
        ext3: force ro mount if ext3_setup_super() fails
        quota: fix checkpatch.pl warning by replacing <asm/uaccess.h> with <linux/uaccess.h>
      08d9329c
    • L
      Merge branch 'for-next' of git://git.kernel.org/pub/scm/linux/kernel/git/gerg/m68knommu · 2c05b2c8
      Linus Torvalds 提交于
      Pull m68knommu arch update from Greg Ungerer:
       "Quite a varied set of changes this time.
         - A little more merge cleanup, this time the assembler entry code.
         - New sub-architecture support for the ColdFire 5251/5253 and 5441x
           CPU families.
         - Specific clk support code for the ColdFire 520x and 532x CPU
           familes.
         - Refactoring of the ColdFire GPIO support.
         - PCI bus support for some ColdFire CPUS that have PCI hardware (54xx
           family).  This showed up a few problems with ColdFire cache,
           allocating coherent memory and bi-directional DMA support.  Fixes
           for those too."
      
      * 'for-next' of git://git.kernel.org/pub/scm/linux/kernel/git/gerg/m68knommu: (21 commits)
        m68k: allow PCI bus to be enabled for ColdFire m54xx CPUs
        m68k: add PCI bus code support for the ColdFire M54xx SoC family
        m68k: add IO access definitions to support PCI on ColdFire platforms
        m68k: add PCI bus support definitions for the ColdFire M54xx SoC family
        m68k: common PCI support definitions and code
        m68k: add support for DMA_BIDIRECTIONAL in dma support functions
        m68k: fix ColdFire clear cache operation
        m68k: use simpler dma_alloc_coherent() for ColdFire CPUs
        m68knommu: platform support for 8390 based ethernet used on some boards
        m68knommu: Add clk definitions for m532x.
        m68knommu: Add clk definitions for m520x.
        m68knommu: Add rtc device for m5441x.
        m68knommu: add definitions for the third interrupt controller on devices that don't have a third interrupt controller.
        m68knommu: Add support for the Coldfire m5441x.
        m68knommu: use MCF_IRQ_PIT1 instead of MCFINT_VECBASE + MCFINT_PIT1
        coldfire-qspi: Add support for the Coldfire 5251/5253.
        m68knommu: Add support for the Coldfire 5251/5253
        m68knommu: refactor Coldfire GPIO not to require GPIOLIB, eliminate mcf_gpio_chips.
        m68k: merge the MMU and non-MMU versions of the entry.S code
        m68k: use jbsr to call functions instead of bsrl
        ...
      2c05b2c8
    • L
      Merge branch 'next' of git://git.infradead.org/users/vkoul/slave-dma · c511dc1f
      Linus Torvalds 提交于
      Pull slave-dmaengine update from Vinod Koul:
       "This time we have a new dmaengine driver from the tegra folks.  Also
        we have Guennadi's cleanup of sh drivers which incudes a library for
        sh drivers.  And the usual odd fixes in bunch of drivers and some nice
        cleanup of dw_dmac from Andy."
      
      Fix up conflicts in drivers/mmc/host/sh_mmcif.c
      
      * 'next' of git://git.infradead.org/users/vkoul/slave-dma: (46 commits)
        dmaengine: Cleanup logging messages
        mmc: sh_mmcif: switch to the new DMA channel allocation and configuration
        dma: sh: provide a migration path for slave drivers to stop using .private
        dma: sh: use an integer slave ID to improve API compatibility
        dmaengine: shdma: prepare to stop using struct dma_chan::private
        sh: remove unused DMA device pointer from SIU platform data
        ASoC: siu: don't use DMA device for channel filtering
        dmaengine: shdma: (cosmetic) simplify a static function
        dmaengine: at_hdmac: add a few const qualifiers
        dw_dmac: use 'u32' for LLI structure members, not dma_addr_t
        dw_dmac: mark dwc_dump_lli inline
        dma: mxs-dma: Export missing symbols from mxs-dma.c
        dma: shdma: convert to the shdma base library
        ASoC: fsi: prepare for conversion to the shdma base library
        usb: renesas_usbhs: prepare for conversion to the shdma base library
        ASoC: siu: prepare for conversion to the shdma base library
        serial: sh-sci: prepare for conversion to the shdma base library
        mmc: sh_mobile_sdhi: prepare for conversion to the shdma base library
        mmc: sh_mmcif: remove unneeded struct sh_mmcif_dma, prepare to shdma conversion
        dma: shdma: prepare for conversion to the shdma base library
        ...
      c511dc1f
    • L
      Merge tag 'clk-for-linus' of git://git.linaro.org/people/mturquette/linux · 9161c3b7
      Linus Torvalds 提交于
      Pull common clk framework changes from Michael Turquette:
       "This includes a small number of core framework improvments, platform
        ports and new DT bindings."
      
      Fix up trivial conflicts in drivers/clk/Makefile
      
      * tag 'clk-for-linus' of git://git.linaro.org/people/mturquette/linux: (21 commits)
        clk: fix compile for OF && !COMMON_CLK
        clk: fix clk_get on of_clk_get_by_name return check
        clk: mxs: clk_register_clkdev mx28 usb clocks
        clk: add highbank clock support
        dt: add clock binding doc to primecell bindings
        clk: add DT fixed-clock binding support
        clk: add DT clock binding support
        ARM: integrator: convert to common clock
        clk: add versatile ICST307 driver
        ARM: integrator: put symbolic bus names on devices
        ARM: u300: convert to common clock
        clk: cache parent clocks only for muxes
        clk: wm831x: Add initial WM831x clock driver
        clk: Constify struct clk_init_data
        clk: Add CLK_IS_BASIC flag to identify basic clocks
        clk: Add support for rate table based dividers
        clk: Add support for power of two type dividers
        clk: mxs: imx28: decrease the frequency of ref_io1 for SSP2 and SSP3
        clk: mxs: add clkdev lookup for pwm
        clk: mxs: Fix the GPMI clock name
        ...
      9161c3b7
    • L
      Merge tag 'iommu-updates-v3.6-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/joro/iommu · 97027da6
      Linus Torvalds 提交于
      Pull IOMMU updates from Joerg Roedel:
       "The most important part of these updates is the IOMMU groups code
        enhancement written by Alex Williamson.  It abstracts the problem that
        a given hardware IOMMU can't isolate any given device from any other
        device (e.g.  32 bit PCI devices can't usually be isolated).  Devices
        that can't be isolated are grouped together.  This code is required
        for the upcoming VFIO framework.
      
        Another IOMMU-API change written by me is the introduction of domain
        attributes.  This makes it easier to handle GART-like IOMMUs with the
        IOMMU-API because now the start-address and the size of the domain
        address space can be queried.
      
        Besides that there are a few cleanups and fixes for the NVidia Tegra
        IOMMU drivers and the reworked init-code for the AMD IOMMU.  The
        latter is from my patch-set to support interrupt remapping.  The rest
        of this patch-set requires x86 changes which are not mergabe yet.  So
        full support for interrupt remapping with AMD IOMMUs will come in a
        future merge window."
      
      * tag 'iommu-updates-v3.6-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/joro/iommu: (33 commits)
        iommu/amd: Fix hotplug with iommu=pt
        iommu/amd: Add missing spin_lock initialization
        iommu/amd: Convert iommu initialization to state machine
        iommu/amd: Introduce amd_iommu_init_dma routine
        iommu/amd: Move unmap_flush message to amd_iommu_init_dma_ops()
        iommu/amd: Split enable_iommus() routine
        iommu/amd: Introduce early_amd_iommu_init routine
        iommu/amd: Move informational prinks out of iommu_enable
        iommu/amd: Split out PCI related parts of IOMMU initialization
        iommu/amd: Use acpi_get_table instead of acpi_table_parse
        iommu/amd: Fix sparse warnings
        iommu/tegra: Don't call alloc_pdir with as->lock
        iommu/tegra: smmu: Fix unsleepable memory allocation at alloc_pdir()
        iommu/tegra: smmu: Remove unnecessary sanity check at alloc_pdir()
        iommu/exynos: Implement DOMAIN_ATTR_GEOMETRY attribute
        iommu/tegra: Implement DOMAIN_ATTR_GEOMETRY attribute
        iommu/msm: Implement DOMAIN_ATTR_GEOMETRY attribute
        iommu/omap: Implement DOMAIN_ATTR_GEOMETRY attribute
        iommu/vt-d: Implement DOMAIN_ATTR_GEOMETRY attribute
        iommu/amd: Implement DOMAIN_ATTR_GEOMETRY attribute
        ...
      97027da6
    • L
      Merge tag 'for-3.6' of git://git.kernel.org/pub/scm/linux/kernel/git/helgaas/pci · 6dd53aa4
      Linus Torvalds 提交于
      Pull PCI changes from Bjorn Helgaas:
       "Host bridge hotplug:
          - Add MMCONFIG support for hot-added host bridges (Jiang Liu)
        Device hotplug:
          - Move fixups from __init to __devinit (Sebastian Andrzej Siewior)
          - Call FINAL fixups for hot-added devices, too (Myron Stowe)
          - Factor out generic code for P2P bridge hot-add (Yinghai Lu)
          - Remove all functions in a slot, not just those with _EJx (Amos
            Kong)
        Dynamic resource management:
          - Track bus number allocation (struct resource tree per domain)
            (Yinghai Lu)
          - Make P2P bridge 1K I/O windows work with resource reassignment
            (Bjorn Helgaas, Yinghai Lu)
          - Disable decoding while updating 64-bit BARs (Bjorn Helgaas)
        Power management:
          - Add PCIe runtime D3cold support (Huang Ying)
        Virtualization:
          - Add VFIO infrastructure (ACS, DMA source ID quirks) (Alex
            Williamson)
          - Add quirks for devices with broken INTx masking (Jan Kiszka)
        Miscellaneous:
          - Fix some PCI Express capability version issues (Myron Stowe)
          - Factor out some arch code with a weak, generic, pcibios_setup()
            (Myron Stowe)"
      
      * tag 'for-3.6' of git://git.kernel.org/pub/scm/linux/kernel/git/helgaas/pci: (122 commits)
        PCI: hotplug: ensure a consistent return value in error case
        PCI: fix undefined reference to 'pci_fixup_final_inited'
        PCI: build resource code for M68K architecture
        PCI: pciehp: remove unused pciehp_get_max_lnk_width(), pciehp_get_cur_lnk_width()
        PCI: reorder __pci_assign_resource() (no change)
        PCI: fix truncation of resource size to 32 bits
        PCI: acpiphp: merge acpiphp_debug and debug
        PCI: acpiphp: remove unused res_lock
        sparc/PCI: replace pci_cfg_fake_ranges() with pci_read_bridge_bases()
        PCI: call final fixups hot-added devices
        PCI: move final fixups from __init to __devinit
        x86/PCI: move final fixups from __init to __devinit
        MIPS/PCI: move final fixups from __init to __devinit
        PCI: support sizing P2P bridge I/O windows with 1K granularity
        PCI: reimplement P2P bridge 1K I/O windows (Intel P64H2)
        PCI: disable MEM decoding while updating 64-bit MEM BARs
        PCI: leave MEM and IO decoding disabled during 64-bit BAR sizing, too
        PCI: never discard enable/suspend/resume_early/resume fixups
        PCI: release temporary reference in __nv_msi_ht_cap_quirk()
        PCI: restructure 'pci_do_fixups()'
        ...
      6dd53aa4
    • L
      Merge tag 'dt-for-3.6' of git://sources.calxeda.com/kernel/linux · f14121ab
      Linus Torvalds 提交于
      Pull devicetree updates from Rob Herring:
       "A small set of changes for devicetree:
         - Couple of Documentation fixes
         - Addition of new helper function of_node_full_name
         - Improve of_parse_phandle_with_args return values
         - Some NULL related sparse fixes"
      
      Grant's busy packing.
      
      * tag 'dt-for-3.6' of git://sources.calxeda.com/kernel/linux:
        of: mtd: nuke useless const qualifier
        devicetree: add helper inline for retrieving a node's full name
        of: return -ENOENT when no property
        usage-model.txt: fix typo machine_init->init_machine
        of: Fix null pointer related warnings in base.c file
        LED: Fix missing semicolon in OF documentation
        of: fix a few typos in the binding documentation
      f14121ab