1. 27 2月, 2013 18 次提交
    • L
      Merge tag 'ext4_for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tytso/ext4 · 6515925b
      Linus Torvalds 提交于
      Pull ext4 updates from Theodore Ts'o:
       "The one new feature added in this patch series is the ability to use
        the "punch hole" functionality for inodes that are not using extent
        maps.
      
        In the bug fix category, we fixed some races in the AIO and fstrim
        code, and some potential NULL pointer dereferences and memory leaks in
        error handling code paths.
      
        In the optimization category, we fixed a performance regression in the
        jbd2 layer introduced by commit d9b01934 ("jbd: fix fsync() tid
        wraparound bug", introduced in v3.0) which shows up in the AIM7
        benchmark.  We also further optimized jbd2 by minimize the amount of
        time that transaction handles are held active.
      
        This patch series also features some additional enhancement of the
        extent status tree, which is now used to cache extent information in a
        more efficient/compact form than what we use on-disk."
      
      * tag 'ext4_for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tytso/ext4: (65 commits)
        ext4: fix free clusters calculation in bigalloc filesystem
        ext4: no need to remove extent if len is 0 in ext4_es_remove_extent()
        ext4: fix xattr block allocation/release with bigalloc
        ext4: reclaim extents from extent status tree
        ext4: adjust some functions for reclaiming extents from extent status tree
        ext4: remove single extent cache
        ext4: lookup block mapping in extent status tree
        ext4: track all extent status in extent status tree
        ext4: let ext4_ext_map_blocks return EXT4_MAP_UNWRITTEN flag
        ext4: rename and improbe ext4_es_find_extent()
        ext4: add physical block and status member into extent status tree
        ext4: refine extent status tree
        ext4: use ERR_PTR() abstraction for ext4_append()
        ext4: refactor code to read directory blocks into ext4_read_dirblock()
        ext4: add debugging context for warning in ext4_da_update_reserve_space()
        ext4: use KERN_WARNING for warning messages
        jbd2: use module parameters instead of debugfs for jbd_debug
        ext4: use module parameters instead of debugfs for mballoc_debug
        ext4: start handle at the last possible moment when creating inodes
        ext4: fix the number of credits needed for acl ops with inline data
        ...
      6515925b
    • L
      Merge branch 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jack/linux-fs · bbbd27e6
      Linus Torvalds 提交于
      Pull ext2, ext3, udf updates from Jan Kara:
       "Several UDF fixes, a support for UDF extent cache, and couple of ext2
        and ext3 cleanups and minor fixes"
      
      * 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jack/linux-fs:
        Ext2: remove the static function release_blocks to optimize the kernel
        Ext2: mark inode dirty after the function dquot_free_block_nodirty is called
        Ext2: remove the overhead check about sb in the function ext2_new_blocks
        udf: Remove unused s_extLength from udf_bitmap
        udf: Make s_block_bitmap standard array
        udf: Fix bitmap overflow on large filesystems with small block size
        udf: add extent cache support in case of file reading
        udf: Write LVID to disk after opening / closing
        Ext3: return ENOMEM rather than EIO if sb_getblk fails
        Ext2: return ENOMEM rather than EIO if sb_getblk fails
        Ext3: use unlikely to improve the efficiency of the kernel
        Ext2: use unlikely to improve the efficiency of the kernel
        Ext3: add necessary check in case IO error happens
        Ext2: free memory allocated and forget buffer head when io error happens
        ext3: Fix memory leak when quota options are specified multiple times
        ext3, ext4, ocfs2: remove unused macro NAMEI_RA_INDEX
      bbbd27e6
    • L
      Merge tag 'upstream-3.9-rc1' of git://git.infradead.org/linux-ubifs · a6590b9f
      Linus Torvalds 提交于
      Pull ubifs updates from Artem Bityutskiy:
       "It's been quite silent and we have only a couple of bug-fixes for the
        orphans handling code plus one cosmetic change."
      
      * tag 'upstream-3.9-rc1' of git://git.infradead.org/linux-ubifs:
        UBIFS: fix double free of ubifs_orphan objects
        UBIFS: fix use of freed ubifs_orphan objects
        UBIFS: rename random32() to prandom_u32()
      a6590b9f
    • L
      Merge tag 'f2fs-for-3.9' of git://git.kernel.org/pub/scm/linux/kernel/git/jaegeuk/f2fs · 1085db4a
      Linus Torvalds 提交于
      Pull f2fs update from Jaegeuk Kim:
       "[Major bug fixes]
         o Store device file information correctly
         o Fix -EIO handling with respect to power-off-recovery
         o Allocate blocks with global locks
         o Fix wrong calculation of the SSR cost
      
        [Cleanups]
         o Get rid of fake on-stack dentries
      
        [Enhancement]
         o Support (un)freeze_fs
         o Enhance the f2fs_gc flow
         o Support 32-bit binary execution on 64-bit kernel"
      
      * tag 'f2fs-for-3.9' of git://git.kernel.org/pub/scm/linux/kernel/git/jaegeuk/f2fs: (29 commits)
        f2fs: avoid build warning
        f2fs: add compat_ioctl to provide backward compatability
        f2fs: fix calculation of max. gc cost in the SSR case
        f2fs: clarify and enhance the f2fs_gc flow
        f2fs: optimize the return condition for has_not_enough_free_secs
        f2fs: make an accessor to get sections for particular block type
        f2fs: mark gc_thread as NULL when thread creation is failed
        f2fs: name gc task as per the block device
        f2fs: remove unnecessary gc option check and balance_fs
        f2fs: remove repeated F2FS_SET_SB_DIRT call
        f2fs: when check superblock failed, try to check another superblock
        f2fs: use F2FS_BLKSIZE to judge bloksize and page_cache_size
        f2fs: add device name in debugfs
        f2fs: stop repeated checking if cp is needed
        f2fs: avoid balanc_fs during evict_inode
        f2fs: remove the use of page_cache_release
        f2fs: fix typo mistake for data_version description
        f2fs: reorganize code for ra_node_page
        f2fs: avoid redundant call to has_not_enough_free_secs in f2fs_gc
        f2fs: add un/freeze_fs into super_operations
        ...
      1085db4a
    • L
      Merge tag 'virtio-next-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux · 3c834b6f
      Linus Torvalds 提交于
      Pull virtio updates from Rusty Russell:
       "All trivial, thanks to the stuff which didn't quite make it time"
      
      * tag 'virtio-next-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux:
        virtio_console: Initialize guest_connected=true for rproc_serial
        virtio: use module_virtio_driver.
        virtio: Add module driver macro for virtio drivers.
        virtio_console: Use virtio device index to generate port name
        virtio: make pci_device_id const
        virtio: make config_ops const
        virtio-mmio: fix wrong comment about register offset
        virtio_console: Let unconnected rproc device receive data.
      3c834b6f
    • L
      Merge tag 'vfio-v3.9-rc1' of git://github.com/awilliam/linux-vfio · 515d01f7
      Linus Torvalds 提交于
      Pull VFIO updates from Alex Williamson:
       - Fixes PCIe v1 extended capability support
      
       - Cleans up read/write access functions
      
       - Fix Removal test to properly wait until devices are unused
      
       - Enable pcieport driver usage for non-accessible devices w/in groups
      
       - Extensions for PCI VGA support
      
      * tag 'vfio-v3.9-rc1' of git://github.com/awilliam/linux-vfio:
        drivers/vfio: remove depends on CONFIG_EXPERIMENTAL
        vfio-pci: Add support for VGA region access
        vfio-pci: Manage user power state transitions
        vfio: whitelist pcieport
        vfio: Protect vfio_dev_present against device_del
        vfio-pci: Cleanup BAR access
        vfio-pci: Cleanup read/write functions
        vfio-pci: Enable PCIe extended capabilities on v1
      515d01f7
    • L
      Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net · 1cef9350
      Linus Torvalds 提交于
      Pull networking fixes from David Miller:
      
       1) ping_err() ICMP error handler looks at wrong ICMP header, from Li
          Wei.
      
       2) TCP socket hash function on ipv6 is too weak, from Eric Dumazet.
      
       3) netif_set_xps_queue() forgets to drop mutex on errors, fix from
          Alexander Duyck.
      
       4) sum_frag_mem_limit() can deadlock due to lack of BH disabling, fix
          from Eric Dumazet.
      
       5) TCP SYN data is miscalculated in tcp_send_syn_data(), because the
          amount of TCP option space was not taken into account properly in
          this code path.  Fix from yuchung Cheng.
      
       6) MLX4 driver allocates device queues with the wrong size, from Kleber
          Sacilotto.
      
       7) sock_diag can access past the end of the sock_diag_handlers[] array,
          from Mathias Krause.
      
       8) vlan_set_encap_proto() makes incorrect assumptions about where
          skb->data points, rework the logic so that it works regardless of
          where skb->data happens to be.  From Jesse Gross.
      
       9) Fix gianfar build failure with NET_POLL enabled, from Paul
          Gortmaker.
      
      10) Fix Ipv4 ID setting and checksum calculations in GRE driver, from
         Pravin B Shelar.
      
      11) bgmac driver does:
      
              int i;
      
              for (i = 0; ...; ...) {
                      ...
                      for (i = 0; ...; ...) {
      
          effectively corrupting the outer loop index, use a seperate
          variable for the inner loops.  From Rafał Miłecki.
      
      12) Fix suspend bugs in smsc95xx driver, from Ming Lei.
      
      * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net: (35 commits)
        usbnet: smsc95xx: rename FEATURE_AUTOSUSPEND
        usbnet: smsc95xx: fix broken runtime suspend
        usbnet: smsc95xx: fix suspend failure
        bgmac: fix indexing of 2nd level loops
        b43: Fix lockdep splat on module unload
        Revert "ip_gre: propogate target device GSO capability to the tunnel device"
        IP_GRE: Fix GRE_CSUM case.
        VXLAN: Use tunnel_ip_select_ident() for tunnel IP-Identification.
        IP_GRE: Fix IP-Identification.
        net/pasemi: Fix missing coding style
        vmxnet3: fix ethtool ring buffer size setting
        vmxnet3: make local function static
        bnx2x: remove dead code and make local funcs static
        gianfar: fix compile fail for NET_POLL=y due to struct packing
        vlan: adjust vlan_set_encap_proto() for its callers
        sock_diag: Simplify sock_diag_handlers[] handling in __sock_diag_rcv_msg
        sock_diag: Fix out-of-bounds access to sock_diag_handlers[]
        vxlan: remove depends on CONFIG_EXPERIMENTAL
        mlx4_en: fix allocation of CPU affinity reverse-map
        mlx4_en: fix allocation of device tx_cq
        ...
      1cef9350
    • L
      Merge branch 'for-next' of git://git.kernel.org/pub/scm/linux/kernel/git/nab/target-pending · ecc88efb
      Linus Torvalds 提交于
      Pull scsi target updates from Nicholas Bellinger:
       "The highlights in this series include:
      
         - Improve sg_table lookup scalability in RAMDISK_MCP (martin)
      
         - Add device attribute to expose config name for INQUIRY model (tregaron)
      
         - Convert tcm_vhost to use lock-less list for cmd completion (asias)
      
         - Add tcm_vhost support for multiple target's per endpoint (asias)
      
         - Add tcm_vhost support for multiple queues per vhost (asias)
      
         - Add missing mapped_lun bounds checking during make_mappedlun setup
           in generic fabric configfs code (jan engelhardt + nab)
      
         - Enforce individual iscsi-target network portal export once per
           TargetName endpoint (grover + nab)
      
         - Add WRITE_SAME w/ UNMAP=0 emulation to FILEIO backend (nab)
      
        Things have been mostly quiet this round, with majority of the work
        being done on the iser-target WIP driver + associated iscsi-target
        refactoring patches currently in flight for v3.10 code.
      
        At this point there is one patch series left outstanding from Asias to
        add support for UNMAP + WRITE_SAME w/ UNMAP=1 to FILEIO awaiting
        feedback from hch & Co, that will likely be included in a post
        v3.9-rc1 PULL request if there are no objections.
      
        Also, there is a regression bug recently reported off-list that seems
        to be effecting v3.5 and v3.6 kernels with MSFT iSCSI initiators that
        is still being tracked down.  No word if this effects >= v3.7 just
        yet, but if so there will likely another PULL request coming your
        way.."
      
      * 'for-next' of git://git.kernel.org/pub/scm/linux/kernel/git/nab/target-pending: (26 commits)
        target: Rename spc_get_write_same_sectors -> sbc_get_write_same_sectors
        target/file: Add WRITE_SAME w/ UNMAP=0 emulation support
        iscsi-target: Enforce individual network portal export once per TargetName
        iscsi-target: Refactor iscsit_get_np sockaddr matching into iscsit_check_np_match
        target: Add missing mapped_lun bounds checking during make_mappedlun setup
        target: Fix lookup of dynamic NodeACLs during cached demo-mode operation
        target: Fix parameter list length checking in MODE SELECT
        target: Fix error checking for UNMAP commands
        target: Fix sense data for out-of-bounds IO operations
        target_core_rd: break out unterminated loop during copy
        tcm_vhost: Multi-queue support
        tcm_vhost: Multi-target support
        target: Add device attribute to expose config_item_name for INQUIRY model
        target: don't truncate the fail intr address
        target: don't always say "ipv6" as address type
        target/iblock: Use backend REQ_FLUSH hint for WriteCacheEnabled status
        iscsi-target: make some temporary buffers larger
        tcm_vhost: Optimize gup in vhost_scsi_map_to_sgl
        tcm_vhost: Use iov_num_pages to calculate sgl_count
        tcm_vhost: Introduce iov_num_pages
        ...
      ecc88efb
    • L
      Merge tag 'rdma-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/roland/infiniband · 70a3a06d
      Linus Torvalds 提交于
      Pull infiniband update from Roland Dreier:
       "Main batch of InfiniBand/RDMA changes for 3.9:
      
         - SRP error handling fixes from Bart Van Assche
      
         - Implementation of memory windows for mlx4 from Shani Michaeli
      
         - Lots of cxgb4 HW driver fixes from Vipul Pandya
      
         - Make iSER work for virtual functions, other fixes from Or Gerlitz
      
         - Fix for bug in qib HW driver from Mike Marciniszyn
      
         - IPoIB fixes from me, Itai Garbi, Shlomo Pongratz, Yan Burman
      
         - Various cleanups and warning fixes from Julia Lawall, Paul Bolle,
           Wei Yongjun"
      
      * tag 'rdma-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/roland/infiniband: (41 commits)
        IB/mlx4: Advertise MW support
        IB/mlx4: Support memory window binding
        mlx4: Implement memory windows allocation and deallocation
        mlx4_core: Enable memory windows in {INIT, QUERY}_HCA
        mlx4_core: Disable memory windows for virtual functions
        IPoIB: Free ipoib neigh on path record failure so path rec queries are retried
        IB/srp: Fail I/O requests if the transport is offline
        IB/srp: Avoid endless SCSI error handling loop
        IB/srp: Avoid sending a task management function needlessly
        IB/srp: Track connection state properly
        IB/mlx4: Remove redundant NULL check before kfree
        IB/mlx4: Fix compiler warning about uninitialized 'vlan' variable
        IB/mlx4: Convert is_xxx variables in build_mlx_header() to bool
        IB/iser: Enable iser when FMRs are not supported
        IB/iser: Avoid error prints on EAGAIN registration failures
        IB/iser: Use proper define for the commands per LUN value advertised to SCSI ML
        IB/uverbs: Implement memory windows support in uverbs
        IB/core: Add "type 2" memory windows support
        mlx4_core: Propagate MR deregistration failures to caller
        mlx4_core: Rename MPT-related functions to have mpt_ prefix
        ...
      70a3a06d
    • L
      Merge tag 'iommu-updates-v3.9' of git://git.kernel.org/pub/scm/linux/kernel/git/joro/iommu · f6c0ffa8
      Linus Torvalds 提交于
      Pull IOMMU Updates from Joerg Roedel:
       "Besides some fixes and cleanups in the code there are three more
        important changes to point out this time:
      
      	* New IOMMU driver for the ARM SHMOBILE platform
      	* An IOMMU-API extension for non-paging IOMMUs (required for
      	  upcoming PAMU driver)
      	* Rework of the way the Tegra IOMMU driver accesses its
      	  registetrs - register windows are easier to extend now.
      
        There are also a few changes to non-iommu code, but that is acked by
        the respective maintainers."
      
      * tag 'iommu-updates-v3.9' of git://git.kernel.org/pub/scm/linux/kernel/git/joro/iommu: (23 commits)
        iommu/tegra: assume CONFIG_OF in SMMU driver
        iommu/tegra: assume CONFIG_OF in gart driver
        iommu/amd: Remove redundant NULL check before dma_ops_domain_free().
        iommu/amd: Initialize device table after dma_ops
        iommu/vt-d: Zero out allocated memory in dmar_enable_qi
        iommu/tegra: smmu: Fix incorrect mask for regbase
        iommu/exynos: Make exynos_sysmmu_disable static
        ARM: mach-shmobile: r8a7740: Add IPMMU device
        ARM: mach-shmobile: sh73a0: Add IPMMU device
        ARM: mach-shmobile: sh7372: Add IPMMU device
        iommu/shmobile: Add iommu driver for Renesas IPMMU modules
        iommu: Add DOMAIN_ATTR_WINDOWS domain attribute
        iommu: Add domain window handling functions
        iommu: Implement DOMAIN_ATTR_PAGING attribute
        iommu: Check for valid pgsize_bitmap in iommu_map/unmap
        iommu: Make sure DOMAIN_ATTR_MAX is really the maximum
        iommu/tegra: smmu: Change SMMU's dependency on ARCH_TEGRA
        iommu/tegra: smmu: Use helper function to check for valid register offset
        iommu/tegra: smmu: Support variable MMIO ranges/blocks
        iommu/tegra: Add missing spinlock initialization
        ...
      f6c0ffa8
    • L
      Merge branch 'for-v3.9' of git://git.linaro.org/people/mszyprowski/linux-dma-mapping · 42a0a1b0
      Linus Torvalds 提交于
      Pull DMA-mapping updates from Marek Szyprowski:
       "This time all patches are related only to ARM DMA-mapping subsystem.
        The main extension provided by this pull request is highmem support.
        Besides that it contains a bunch of small bugfixes and cleanups."
      
      * 'for-v3.9' of git://git.linaro.org/people/mszyprowski/linux-dma-mapping:
        ARM: DMA-mapping: fix memory leak in IOMMU dma-mapping implementation
        ARM: dma-mapping: Add maximum alignment order for dma iommu buffers
        ARM: dma-mapping: use himem for DMA buffers for IOMMU-mapped devices
        ARM: dma-mapping: add support for CMA regions placed in highmem zone
        arm: dma mapping: export arm iommu functions
        ARM: dma-mapping: Add arm_iommu_detach_device()
        ARM: dma-mapping: Add macro to_dma_iommu_mapping()
        ARM: dma-mapping: Set arm_dma_set_mask() for iommu->set_dma_mask()
        ARM: iommu: Include linux/kref.h in asm/dma-iommu.h
      42a0a1b0
    • L
      Merge branch 'i2c/for-next' of git://git.kernel.org/pub/scm/linux/kernel/git/wsa/linux · 52caa59e
      Linus Torvalds 提交于
      Pull i2c updates from Wolfram Sang:
       "Highlights:
      
         - new drivers for Intel ismt & Broadcom bcm2835
         - a number of drivers got support for more variants and mostly got
           cleaned up on the way (sis630, i801, at91, tegra, designware)
         - i2c got rid of all *_set_drvdata(..., NULL) on remove/probe failure
         - removed the i2c_smbus_process_call from the core since there are no
           users
         - mxs can now switch between PIO and DMA depending on the message
           size and the bus speed can now be arbitrary
      
        In addition, there is the usual bunch of fixes, cleanups, devm_*
        conversions, etc"
      
      Fixed conflict (and buggy devm_* conversion) in i2c-s3c2410.c
      
      * 'i2c/for-next' of git://git.kernel.org/pub/scm/linux/kernel/git/wsa/linux: (39 commits)
        i2c: Remove unneeded xxx_set_drvdata(..., NULL) calls
        i2c: pxa: remove incorrect __exit annotations
        i2c: ocores: Fix pointer to integer cast warning
        i2c: tegra: remove warning dump if timeout happen in transfer
        i2c: fix i2c-ismt.c printk format warning
        i2c: i801: Add Device IDs for Intel Wellsburg PCH
        i2c: add bcm2835 driver
        i2c: ismt: Add Seth and Myself as maintainers
        i2c: sis630: checkpatch cleanup
        i2c: sis630: display unsigned hex
        i2c: sis630: use hex to constants for SMBus commands
        i2c: sis630: fix behavior after collision
        i2c: sis630: clear sticky bits
        i2c: sis630: Add SIS964 support
        i2c: isch: Add module parameter for backbone clock rate if divider is unset
        i2c: at91: fix unsed variable warning when building with !CONFIG_OF
        i2c: Adding support for Intel iSMT SMBus 2.0 host controller
        i2c: sh_mobile: don't send a stop condition by default inside transfers
        i2c: sh_mobile: eliminate an open-coded "goto" loop
        i2c: sh_mobile: fix timeout error handling
        ...
      52caa59e
    • L
      Merge tag 'gpio-for-linus' of git://git.secretlab.ca/git/linux · 4c8c225a
      Linus Torvalds 提交于
      Pull GPIO changes from Grant Likely:
       "This branch contains the usual set of individual driver improvements
        and bug fixes, as well as updates to the core code.  The more notable
        changes include:
      
         - Internally add new API for referencing GPIOs by gpio_desc instead
           of number.  Eventually this will become a public API
      
         - ACPI GPIO binding support"
      
      * tag 'gpio-for-linus' of git://git.secretlab.ca/git/linux: (33 commits)
        arm64: select ARCH_WANT_OPTIONAL_GPIOLIB
        gpio: em: Use irq_domain_add_simple() to fix runtime error
        gpio: using common order: let 'static const' instead of 'const static'
        gpio/vt8500: memory cleanup missing
        gpiolib: Fix locking on gpio debugfs files
        gpiolib: let gpio_chip reference its descriptors
        gpiolib: use descriptors internally
        gpiolib: use gpio_chips list in gpiochip_find_base
        gpiolib: use gpio_chips list in sysfs ops
        gpiolib: use gpio_chips list in gpiochip_find
        gpiolib: use gpio_chips list in gpiolib_sysfs_init
        gpiolib: link all gpio_chips using a list
        gpio/langwell: cleanup driver
        gpio/langwell: Add Cloverview ids to pci device table
        gpio/lynxpoint: add chipset gpio driver.
        gpiolib: add missing braces in gpio_direction_show
        gpiolib-acpi: Fix error checks in interrupt requesting
        gpio: mpc8xxx: don't set IRQ_TYPE_NONE when creating irq mapping
        gpiolib: remove gpiochip_reserve()
        arm: pxa: tosa: do not use gpiochip_reserve()
        ...
      4c8c225a
    • L
      Merge tag 'for-3.9-rc1' of git://gitorious.org/linux-pwm/linux-pwm · 3eb05225
      Linus Torvalds 提交于
      Pull PWM changes from Thierry Reding:
       "A new driver has been added to support the PWM mode of the timer
        counter blocks found on Atmel AT91 SoCs.  The VT8500 driver now
        supports changing the PWM signal polarity and the TI drivers (EHRPWM
        and ECAP) gained suspend and resume functionality.
      
        User drivers can now query the core for whether access to a PWM device
        will sleep (if the PWM chip is on a slow bus such as I2C or SPI).
      
        The pwm-backlight driver now handles the backlight BL_CORE_FBBLANK
        state in addition to the FB layer's blanking states.
      
        To round things off, a few fixes and cleanups are also included"
      
      * tag 'for-3.9-rc1' of git://gitorious.org/linux-pwm/linux-pwm:
        pwm: twl: Use to_twl() instead of container_of()
        pwm: tegra: assume CONFIG_OF
        pwm_backlight: Validate dft_brightness in main probe function
        pwm: Export pwm_{set,get}_chip_data()
        pwm: Make Kconfig entries more consistent
        pwm: Add can_sleep property to drivers
        pwm: Add pwm_can_sleep() as exported API to users
        pwm-backlight: handle BL_CORE_FBBLANK state
        pwm: pwm-tiecap: Low power sleep support
        pwm: pwm-tiehrpwm: Low power sleep support
        pwm: pwm-tiehrpwm: Update the clock handling of pwm-tiehrpwm driver
        pwm: vt8500: Add polarity support
        pwm: vt8500: Register write busy test performed incorrectly
        pwm: atmel: add Timer Counter Block PWM driver
      3eb05225
    • L
      Merge tag 'mmc-updates-for-3.9-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/cjb/mmc · ed5dc237
      Linus Torvalds 提交于
      Pull MMC update from Chris Ball:
       "MMC highlights for 3.9:
      
        Core:
         - Support for packed commands in eMMC 4.5.  (This requires a host
           capability to be turned on.  It increases write throughput by 20%+,
           but may also increase average write latency; more testing needed.)
         - Add DT bindings for capability flags.
         - Add mmc_of_parse() for shared DT parsing between drivers.
      
        Drivers:
         - android-goldfish: New MMC driver for the Android Goldfish emulator.
         - mvsdio: Add DT bindings, pinctrl, use slot-gpio for card detection.
         - omap_hsmmc: Fix boot hangs with RPMB partitions.
         - sdhci-bcm2835: New driver for controller used by Raspberry Pi.
         - sdhci-esdhc-imx: Add 8-bit data, auto CMD23 support, use slot-gpio.
         - sh_mmcif: Add support for eMMC DDR, bundled MMCIF IRQs.
         - tmio_mmc: Add DT bindings, support for vccq regulator"
      
      * tag 'mmc-updates-for-3.9-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/cjb/mmc: (92 commits)
        mmc: tegra: assume CONFIG_OF, remove platform data
        mmc: add DT bindings for more MMC capability flags
        mmc: tmio: add support for the VccQ regulator
        mmc: tmio: remove unused and deprecated symbols
        mmc: sh_mobile_sdhi: use managed resource allocations
        mmc: sh_mobile_sdhi: remove unused .pdata field
        mmc: tmio-mmc: parse device-tree bindings
        mmc: tmio-mmc: define device-tree bindings
        mmc: sh_mmcif: use mmc_of_parse() to parse standard MMC DT bindings
        mmc: (cosmetic) remove "extern" from function declarations
        mmc: provide a standard MMC device-tree binding parser centrally
        mmc: detailed definition of CD and WP MMC line polarities in DT
        mmc: sdhi, tmio: only check flags in tmio-mmc driver proper
        mmc: sdhci: Fix parameter of sdhci_do_start_signal_voltage_switch()
        mmc: sdhci: check voltage range only on regulators aware of voltage value
        mmc: bcm2835: set SDHCI_QUIRK_DATA_TIMEOUT_USES_SDCLK
        mmc: support packed write command for eMMC4.5 devices
        mmc: add packed command feature of eMMC4.5
        mmc: rtsx: remove driving adjustment
        mmc: use regulator_can_change_voltage() instead of regulator_count_voltages
        ...
      ed5dc237
    • L
      Merge branch 'for-next' of git://git.kernel.org/pub/scm/linux/kernel/git/cooloney/linux-leds · 0512c04a
      Linus Torvalds 提交于
      Pull LED subsystem update from Bryan Wu.
      
      * 'for-next' of git://git.kernel.org/pub/scm/linux/kernel/git/cooloney/linux-leds: (61 commits)
        leds: leds-sunfire: use dev_err()/pr_err() instead of printk()
        leds: 88pm860x: Add missing of_node_put()
        leds: tca6507: Use of_get_child_count()
        leds: leds-pwm: make it depend on PWM and not HAVE_PWM
        Documentation: leds: update LP55xx family devices
        leds-lp55xx: fix problem on removing LED attributes
        leds-lp5521/5523: add author and copyright description
        leds-lp5521/5523: use new lp55xx common header
        leds-lp55xx: clean up headers
        leds-lp55xx: clean up definitions
        leds-lp55xx: clean up unused data and functions
        leds-lp55xx: clean up _remove()
        leds-lp55xx: add new function for removing device attribtues
        leds-lp55xx: code refactoring on selftest function
        leds-lp55xx: use common device attribute driver function
        leds-lp55xx: support device specific attributes
        leds-lp5523: use generic firmware interface
        leds-lp5521: use generic firmware interface
        leds-lp55xx: support firmware interface
        leds-lp55xx: add new lp55xx_register_sysfs() for the firmware interface
        ...
      0512c04a
    • L
      Merge branch 'next' of git://git.infradead.org/users/vkoul/slave-dma · 5115f3c1
      Linus Torvalds 提交于
      Pull slave-dmaengine updates from Vinod Koul:
       "This is fairly big pull by my standards as I had missed last merge
        window.  So we have the support for device tree for slave-dmaengine,
        large updates to dw_dmac driver from Andy for reusing on different
        architectures.  Along with this we have fixes on bunch of the drivers"
      
      Fix up trivial conflicts, usually due to #include line movement next to
      each other.
      
      * 'next' of git://git.infradead.org/users/vkoul/slave-dma: (111 commits)
        Revert "ARM: SPEAr13xx: Pass DW DMAC platform data from DT"
        ARM: dts: pl330: Add #dma-cells for generic dma binding support
        DMA: PL330: Register the DMA controller with the generic DMA helpers
        DMA: PL330: Add xlate function
        DMA: PL330: Add new pl330 filter for DT case.
        dma: tegra20-apb-dma: remove unnecessary assignment
        edma: do not waste memory for dma_mask
        dma: coh901318: set residue only if dma is in progress
        dma: coh901318: avoid unbalanced locking
        dmaengine.h: remove redundant else keyword
        dma: of-dma: protect list write operation by spin_lock
        dmaengine: ste_dma40: do not remove descriptors for cyclic transfers
        dma: of-dma.c: fix memory leakage
        dw_dmac: apply default dma_mask if needed
        dmaengine: ioat - fix spare sparse complain
        dmaengine: move drivers/of/dma.c -> drivers/dma/of-dma.c
        ioatdma: fix race between updating ioat->head and IOAT_COMPLETION_PENDING
        dw_dmac: add support for Lynxpoint DMA controllers
        dw_dmac: return proper residue value
        dw_dmac: fill individual length of descriptor
        ...
      5115f3c1
    • R
  2. 26 2月, 2013 22 次提交
    • L
      Merge tag 'pm+acpi-fixes-3.9-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm · c41b3810
      Linus Torvalds 提交于
      Pull ACPI and power management fixes from Rafael Wysocki:
      
       - Fixes for blackfin and microblaze build problems introduced by the
         removal of global pm_idle.  From Lars-Peter Clausen.
      
       - OPP core build fix from Shawn Guo.
      
       - Error condition check fix for the new imx6q-cpufreq driver from Wei
         Yongjun.
      
       - Fix for an AER driver crash related to the lack of APEI
         initialization for acpi=off.  From Rafael J Wysocki.
      
       - Fix for a USB breakage on Thinkpad T430 related to ACPI power
         resources and PCI wakeup from Rafael J.  Wysocki.
      
      * tag 'pm+acpi-fixes-3.9-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm:
        ACPI / PM: Take unusual configurations of power resources into account
        imx6q-cpufreq: fix return value check in imx6q_cpufreq_probe()
        PM / OPP: fix condition for empty of_init_opp_table()
        ACPI / APEI: Fix crash in apei_hest_parse() for acpi=off
        microblaze idle: Fix compile error
        blackfin idle: Fix compile error
      c41b3810
    • L
      Merge tag 'pci-v3.9-changes' of git://git.kernel.org/pub/scm/linux/kernel/git/helgaas/pci · 556f12f6
      Linus Torvalds 提交于
      Pull PCI changes from Bjorn Helgaas:
       "Host bridge hotplug
          - Major overhaul of ACPI host bridge add/start (Rafael Wysocki, Yinghai Lu)
          - Major overhaul of PCI/ACPI binding (Rafael Wysocki, Yinghai Lu)
          - Split out ACPI host bridge and ACPI PCI device hotplug (Yinghai Lu)
          - Stop caching _PRT and make independent of bus numbers (Yinghai Lu)
      
        PCI device hotplug
          - Clean up cpqphp dead code (Sasha Levin)
          - Disable ARI unless device and upstream bridge support it (Yijing Wang)
          - Initialize all hot-added devices (not functions 0-7) (Yijing Wang)
      
        Power management
          - Don't touch ASPM if disabled (Joe Lawrence)
          - Fix ASPM link state management (Myron Stowe)
      
        Miscellaneous
          - Fix PCI_EXP_FLAGS accessor (Alex Williamson)
          - Disable Bus Master in pci_device_shutdown (Konstantin Khlebnikov)
          - Document hotplug resource and MPS parameters (Yijing Wang)
          - Add accessor for PCIe capabilities (Myron Stowe)
          - Drop pciehp suspend/resume messages (Paul Bolle)
          - Make pci_slot built-in only (not a module) (Jiang Liu)
          - Remove unused PCI/ACPI bind ops (Jiang Liu)
          - Removed used pci_root_bus (Bjorn Helgaas)"
      
      * tag 'pci-v3.9-changes' of git://git.kernel.org/pub/scm/linux/kernel/git/helgaas/pci: (51 commits)
        PCI/ACPI: Don't cache _PRT, and don't associate them with bus numbers
        PCI: Fix PCI Express Capability accessors for PCI_EXP_FLAGS
        ACPI / PCI: Make pci_slot built-in only, not a module
        PCI/PM: Clear state_saved during suspend
        PCI: Use atomic_inc_return() rather than atomic_add_return()
        PCI: Catch attempts to disable already-disabled devices
        PCI: Disable Bus Master unconditionally in pci_device_shutdown()
        PCI: acpiphp: Remove dead code for PCI host bridge hotplug
        PCI: acpiphp: Create companion ACPI devices before creating PCI devices
        PCI: Remove unused "rc" in virtfn_add_bus()
        PCI: pciehp: Drop suspend/resume ENTRY messages
        PCI/ASPM: Don't touch ASPM if forcibly disabled
        PCI/ASPM: Deallocate upstream link state even if device is not PCIe
        PCI: Document MPS parameters pci=pcie_bus_safe, pci=pcie_bus_perf, etc
        PCI: Document hpiosize= and hpmemsize= resource reservation parameters
        PCI: Use PCI Express Capability accessor
        PCI: Introduce accessor to retrieve PCIe Capabilities Register
        PCI: Put pci_dev in device tree as early as possible
        PCI: Skip attaching driver in device_add()
        PCI: acpiphp: Keep driver loaded even if no slots found
        ...
      556f12f6
    • L
      Merge branch 'drm-next' of git://people.freedesktop.org/~airlied/linux · fffddfd6
      Linus Torvalds 提交于
      Pull drm merge from Dave Airlie:
       "Highlights:
      
         - TI LCD controller KMS driver
      
         - TI OMAP KMS driver merged from staging
      
         - drop gma500 stub driver
      
         - the fbcon locking fixes
      
         - the vgacon dirty like zebra fix.
      
         - open firmware videomode and hdmi common code helpers
      
         - major locking rework for kms object handling - pageflip/cursor
           won't block on polling anymore!
      
         - fbcon helper and prime helper cleanups
      
         - i915: all over the map, haswell power well enhancements, valleyview
           macro horrors cleaned up, killing lots of legacy GTT code,
      
         - radeon: CS ioctl unification, deprecated UMS support, gpu reset
           rework, VM fixes
      
         - nouveau: reworked thermal code, external dp/tmds encoder support
           (anx9805), fences sleep instead of polling,
      
         - exynos: all over the driver fixes."
      
      Lovely conflict in radeon/evergreen_cs.c between commit de0babd6
      ("drm/radeon: enforce use of radeon_get_ib_value when reading user cmd")
      and the new changes that modified that evergreen_dma_cs_parse()
      function.
      
      * 'drm-next' of git://people.freedesktop.org/~airlied/linux: (508 commits)
        drm/tilcdc: only build on arm
        drm/i915: Revert hdmi HDP pin checks
        drm/tegra: Add list of framebuffers to debugfs
        drm/tegra: Fix color expansion
        drm/tegra: Split DC_CMD_STATE_CONTROL register write
        drm/tegra: Implement page-flipping support
        drm/tegra: Implement VBLANK support
        drm/tegra: Implement .mode_set_base()
        drm/tegra: Add plane support
        drm/tegra: Remove bogus tegra_framebuffer structure
        drm: Add consistency check for page-flipping
        drm/radeon: Use generic HDMI infoframe helpers
        drm/tegra: Use generic HDMI infoframe helpers
        drm: Add EDID helper documentation
        drm: Add HDMI infoframe helpers
        video: Add generic HDMI infoframe helpers
        drm: Add some missing forward declarations
        drm: Move mode tables to drm_edid.c
        drm: Remove duplicate drm_mode_cea_vic()
        gma500: Fix n, m1 and m2 clock limits for sdvo and lvds
        ...
      fffddfd6
    • L
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs · 69086a78
      Linus Torvalds 提交于
      Pull vfs fix from Al Viro:
       "Fix for 3.8 breakage introduced by "vfs: Allow unprivileged
        manipulation of the mount namespace" - accessing mnt->mnt_ns is done
        there without needed locking *and* without any real need.
      
        Definite -stable fodder, fortunately not going too far back.
      
        This is *not* all - there will be much bigger vfs pull request
        tomorrow."
      
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs:
        get rid of unprotected dereferencing of mnt->mnt_ns
      69086a78
    • L
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/ebiederm/user-namespace · 94f2f142
      Linus Torvalds 提交于
      Pull user namespace and namespace infrastructure changes from Eric W Biederman:
       "This set of changes starts with a few small enhnacements to the user
        namespace.  reboot support, allowing more arbitrary mappings, and
        support for mounting devpts, ramfs, tmpfs, and mqueuefs as just the
        user namespace root.
      
        I do my best to document that if you care about limiting your
        unprivileged users that when you have the user namespace support
        enabled you will need to enable memory control groups.
      
        There is a minor bug fix to prevent overflowing the stack if someone
        creates way too many user namespaces.
      
        The bulk of the changes are a continuation of the kuid/kgid push down
        work through the filesystems.  These changes make using uids and gids
        typesafe which ensures that these filesystems are safe to use when
        multiple user namespaces are in use.  The filesystems converted for
        3.9 are ceph, 9p, afs, ocfs2, gfs2, ncpfs, nfs, nfsd, and cifs.  The
        changes for these filesystems were a little more involved so I split
        the changes into smaller hopefully obviously correct changes.
      
        XFS is the only filesystem that remains.  I was hoping I could get
        that in this release so that user namespace support would be enabled
        with an allyesconfig or an allmodconfig but it looks like the xfs
        changes need another couple of days before it they are ready."
      
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/ebiederm/user-namespace: (93 commits)
        cifs: Enable building with user namespaces enabled.
        cifs: Convert struct cifs_ses to use a kuid_t and a kgid_t
        cifs: Convert struct cifs_sb_info to use kuids and kgids
        cifs: Modify struct smb_vol to use kuids and kgids
        cifs: Convert struct cifsFileInfo to use a kuid
        cifs: Convert struct cifs_fattr to use kuid and kgids
        cifs: Convert struct tcon_link to use a kuid.
        cifs: Modify struct cifs_unix_set_info_args to hold a kuid_t and a kgid_t
        cifs: Convert from a kuid before printing current_fsuid
        cifs: Use kuids and kgids SID to uid/gid mapping
        cifs: Pass GLOBAL_ROOT_UID and GLOBAL_ROOT_GID to keyring_alloc
        cifs: Use BUILD_BUG_ON to validate uids and gids are the same size
        cifs: Override unmappable incoming uids and gids
        nfsd: Enable building with user namespaces enabled.
        nfsd: Properly compare and initialize kuids and kgids
        nfsd: Store ex_anon_uid and ex_anon_gid as kuids and kgids
        nfsd: Modify nfsd4_cb_sec to use kuids and kgids
        nfsd: Handle kuids and kgids in the nfs4acl to posix_acl conversion
        nfsd: Convert nfsxdr to use kuids and kgids
        nfsd: Convert nfs3xdr to use kuids and kgids
        ...
      94f2f142
    • L
      Merge git://git.kernel.org/pub/scm/virt/kvm/kvm · 8d168f71
      Linus Torvalds 提交于
      Pull KVM ARM compile fixes from Gleb Natapov:
       "Fix ARM KVM compilation breakage due to changes from kvm.git"
      
      * git://git.kernel.org/pub/scm/virt/kvm/kvm:
        ARM: KVM: fix compilation after removal of user_alloc from struct kvm_memory_slot
        ARM: KVM: Rename KVM_MEMORY_SLOTS -> KVM_USER_MEM_SLOTS
        ARM: KVM: fix kvm_arch_{prepare,commit}_memory_region
      8d168f71
    • L
      Merge git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6 · 32dc43e4
      Linus Torvalds 提交于
      Pull crypto update from Herbert Xu:
       "Here is the crypto update for 3.9:
      
         - Added accelerated implementation of crc32 using pclmulqdq.
      
         - Added test vector for fcrypt.
      
         - Added support for OMAP4/AM33XX cipher and hash.
      
         - Fixed loose crypto_user input checks.
      
         - Misc fixes"
      
      * git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6: (43 commits)
        crypto: user - ensure user supplied strings are nul-terminated
        crypto: user - fix empty string test in report API
        crypto: user - fix info leaks in report API
        crypto: caam - Added property fsl,sec-era in SEC4.0 device tree binding.
        crypto: use ERR_CAST
        crypto: atmel-aes - adjust duplicate test
        crypto: crc32-pclmul - Kill warning on x86-32
        crypto: x86/twofish - assembler clean-ups: use ENTRY/ENDPROC, localize jump labels
        crypto: x86/sha1 - assembler clean-ups: use ENTRY/ENDPROC
        crypto: x86/serpent - use ENTRY/ENDPROC for assember functions and localize jump targets
        crypto: x86/salsa20 - assembler cleanup, use ENTRY/ENDPROC for assember functions and rename ECRYPT_* to salsa20_*
        crypto: x86/ghash - assembler clean-up: use ENDPROC at end of assember functions
        crypto: x86/crc32c - assembler clean-up: use ENTRY/ENDPROC
        crypto: cast6-avx: use ENTRY()/ENDPROC() for assembler functions
        crypto: cast5-avx: use ENTRY()/ENDPROC() for assembler functions and localize jump targets
        crypto: camellia-x86_64/aes-ni: use ENTRY()/ENDPROC() for assembler functions and localize jump targets
        crypto: blowfish-x86_64: use ENTRY()/ENDPROC() for assembler functions and localize jump targets
        crypto: aesni-intel - add ENDPROC statements for assembler functions
        crypto: x86/aes - assembler clean-ups: use ENTRY/ENDPROC, localize jump targets
        crypto: testmgr - add test vector for fcrypt
        ...
      32dc43e4
    • S
      drm/tilcdc: only build on arm · be88298b
      Stephen Rothwell 提交于
      [airlied: hack for now until we fix cma helpers on other OF platforms]
      Signed-off-by: NStephen Rothwell <sfr@canb.auug.org.au>
      Signed-off-by: NDave Airlie <airlied@linux.ie>
      be88298b
    • L
      Merge tag 'please-pull-vm_unwrapped' of git://git.kernel.org/pub/scm/linux/kernel/git/aegl/linux · d414c104
      Linus Torvalds 提交于
      Pull ia64 update from Tony Luck:
       "ia64 vm patch series that was cooking in -mm tree"
      
      * tag 'please-pull-vm_unwrapped' of git://git.kernel.org/pub/scm/linux/kernel/git/aegl/linux:
        mm: use vm_unmapped_area() in hugetlbfs on ia64 architecture
        mm: use vm_unmapped_area() on ia64 architecture
      d414c104
    • L
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jmorris/linux-security · f6d43b93
      Linus Torvalds 提交于
      Pull security subsystem fixes from James Morris:
       "From Mimi:
      
          Both of these patches are bug fixes for patches, which were
          upstreamed in this open window.  The first patch addresses a merge
          issue.  The second patch addresses a CONFIG_BLOCK dependency."
      
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jmorris/linux-security:
        block: fix part_pack_uuid() build error
        ima: "remove enforce checking duplication" merge fix
      f6d43b93
    • L
      Merge tag 'ktest-v3.9' of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-ktest · c69d0a15
      Linus Torvalds 提交于
      Pull ktest update from Steven Rostedt:
       "Added ability to have all builds test warnings.
      
        Fixed failing reboot when the reboot produces a non fatal error.
      
        Config reading fixes and other cleanups"
      
      * tag 'ktest-v3.9' of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-ktest:
        ktest: Remove indexes from warnings check
        ktest: Ignore warnings during reboot
        ktest: Search for linux banner for successful reboot
        ktest: Add make_warnings_file and process full warnings
        ktest: Allow a test option to use its default option
        ktest: Strip off '\n' when reading which files were modified
        ktest: Do not require CONSOLE for build or install bisects
      c69d0a15
    • L
      Merge tag 'modules-next-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux · 9043a265
      Linus Torvalds 提交于
      Pull module update from Rusty Russell:
       "The sweeping change is to make add_taint() explicitly indicate whether
        to disable lockdep, but it's a mechanical change."
      
      * tag 'modules-next-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux:
        MODSIGN: Add option to not sign modules during modules_install
        MODSIGN: Add -s <signature> option to sign-file
        MODSIGN: Specify the hash algorithm on sign-file command line
        MODSIGN: Simplify Makefile with a Kconfig helper
        module: clean up load_module a little more.
        modpost: Ignore ARC specific non-alloc sections
        module: constify within_module_*
        taint: add explicit flag to show whether lock dep is still OK.
        module: printk message when module signature fail taints kernel.
      9043a265
    • M
      usbnet: smsc95xx: rename FEATURE_AUTOSUSPEND · eb970ff0
      Ming Lei 提交于
      The name of FEATURE_AUTOSUSPEND is very misleading and the actual
      meaning is remote wakeup, but a device incapable of remote wakeup
      still can support USB autosuspend under some situations, so rename
      it to avoid misunderstanding.
      
      Cc: Steve Glendinning <steve.glendinning@shawell.net>
      Signed-off-by: NMing Lei <ming.lei@canonical.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      eb970ff0
    • M
      usbnet: smsc95xx: fix broken runtime suspend · 42e21c01
      Ming Lei 提交于
      Commit b2d4b150(smsc95xx: enable dynamic autosuspend) implements
      autosuspend, but breaks current runtime suspend, such as:
      when the interface becomes down, the usb device can't be put into
      runtime suspend any more.
      
      This patch fixes the broken runtime suspend.
      
      Cc: Steve Glendinning <steve.glendinning@shawell.net>
      Signed-off-by: NMing Lei <ming.lei@canonical.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      42e21c01
    • M
      usbnet: smsc95xx: fix suspend failure · 76437214
      Ming Lei 提交于
      The three below functions:
      
      	smsc95xx_enter_suspend0()
      	smsc95xx_enter_suspend1()
      	smsc95xx_enter_suspend2()
      
      return > 0 in case of success, so they will cause smsc95xx_suspend()
      to return > 0 and cause suspend failure.
      
      The bug is introduced in commit 3b9f7d(smsc95xx: fix error handling
      in suspend failure case).
      
      Cc: <stable@vger.kernel.org>		[3.8]
      Cc: Steve Glendinning <steve.glendinning@shawell.net>
      Signed-off-by: NMing Lei <ming.lei@canonical.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      76437214
    • R
      bgmac: fix indexing of 2nd level loops · 70a737b7
      Rafał Miłecki 提交于
      We were using the same variable for iterating two nested loops.
      Reported-by: NTijs Van Buggenhout <tvb@able.be>
      Signed-off-by: NRafał Miłecki <zajec5@gmail.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      70a737b7
    • L
      b43: Fix lockdep splat on module unload · 63a02ce1
      Larry Finger 提交于
      On unload, b43 produces a lockdep warning that can be summarized in the
      following way:
      
       ======================================================
       [ INFO: possible circular locking dependency detected ]
       3.8.0-wl+ #117 Not tainted
       -------------------------------------------------------
       modprobe/5557 is trying to acquire lock:
        ((&wl->firmware_load)){+.+.+.}, at: [<ffffffff81062160>] flush_work+0x0/0x2a0
      
       but task is already holding lock:
        (rtnl_mutex){+.+.+.}, at: [<ffffffff813bd7d2>] rtnl_lock+0x12/0x20
      
       which lock already depends on the new lock.
       [ INFO: possible circular locking dependency detected ]
       ======================================================
      
      The full output is available at http://lkml.indiana.edu/hypermail/linux/kernel/1302.3/00060.html.
      To summarize, commit 6b6fa586 added a 'cancel_work_sync(&wl->firmware_load)'
      call in the wrong place.
      
      The fix is to move the cancel_work_sync() call to b43_bcma_remove() and
      b43_ssb_remove(). Thanks to Johannes Berg and Michael Buesch for help in
      diagnosing the log output.
      Signed-off-by: NLarry Finger <Larry.Finger@lwfinger.net>
      Cc: Stable <stable@vger.kernel.org> [V3.5+]
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      63a02ce1
    • P
      Revert "ip_gre: propogate target device GSO capability to the tunnel device" · 7992ae6d
      Pravin B Shelar 提交于
      This reverts commit eb6b9a8c.
      
      Above commit limits GSO capability of gre device to just TSO, but
      software GRE-GSO is capable of handling all GSO capabilities.
      
      This patch also fixes following panic which reverted commit introduced:-
      
      BUG: unable to handle kernel NULL pointer dereference at 00000000000000a2
      IP: [<ffffffffa0680fd1>] ipgre_tunnel_bind_dev+0x161/0x1f0 [ip_gre]
      PGD 42bc19067 PUD 42bca9067 PMD 0
      Oops: 0000 [#1] SMP
      Pid: 2636, comm: ip Tainted: GF            3.8.0+ #83 Dell Inc. PowerEdge R620/0KCKR5
      RIP: 0010:[<ffffffffa0680fd1>]  [<ffffffffa0680fd1>] ipgre_tunnel_bind_dev+0x161/0x1f0 [ip_gre]
      RSP: 0018:ffff88042bfcb708  EFLAGS: 00010246
      RAX: 00000000000005b6 RBX: ffff88042d2fa000 RCX: 0000000000000044
      RDX: 0000000000000018 RSI: 0000000000000078 RDI: 0000000000000060
      RBP: ffff88042bfcb748 R08: 0000000000000018 R09: 000000000000000c
      R10: 0000000000000020 R11: 000000000101010a R12: ffff88042d2fa800
      R13: 0000000000000000 R14: ffff88042d2fa800 R15: ffff88042cd7f650
      FS:  00007fa784f55700(0000) GS:ffff88043fd20000(0000) knlGS:0000000000000000
      CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
      CR2: 00000000000000a2 CR3: 000000042d8b9000 CR4: 00000000000407e0
      DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
      DR3: 0000000000000000 DR6: 00000000ffff0ff0 DR7: 0000000000000400
      Process ip (pid: 2636, threadinfo ffff88042bfca000, task ffff88042d142a80)
      Stack:
       0000000100000000 002f000000000000 0a01010100000000 000000000b010101
       ffff88042d2fa800 ffff88042d2fa000 ffff88042bfcb858 ffff88042f418c00
       ffff88042bfcb798 ffffffffa068199a ffff88042bfcb798 ffff88042d2fa830
      Call Trace:
       [<ffffffffa068199a>] ipgre_newlink+0xca/0x160 [ip_gre]
       [<ffffffff8143b692>] rtnl_newlink+0x532/0x5f0
       [<ffffffff8143b2fc>] ? rtnl_newlink+0x19c/0x5f0
       [<ffffffff81438978>] rtnetlink_rcv_msg+0x2c8/0x340
       [<ffffffff814386b0>] ? rtnetlink_rcv+0x40/0x40
       [<ffffffff814560f9>] netlink_rcv_skb+0xa9/0xd0
       [<ffffffff81438695>] rtnetlink_rcv+0x25/0x40
       [<ffffffff81455ddc>] netlink_unicast+0x1ac/0x230
       [<ffffffff81456a45>] netlink_sendmsg+0x265/0x380
       [<ffffffff814138c0>] sock_sendmsg+0xb0/0xe0
       [<ffffffff8141141e>] ? move_addr_to_kernel+0x4e/0x90
       [<ffffffff81420445>] ? verify_iovec+0x85/0xf0
       [<ffffffff81414ffd>] __sys_sendmsg+0x3fd/0x420
       [<ffffffff8114b701>] ? handle_mm_fault+0x251/0x3b0
       [<ffffffff8114f39f>] ? vma_link+0xcf/0xe0
       [<ffffffff81415239>] sys_sendmsg+0x49/0x90
       [<ffffffff814ffd19>] system_call_fastpath+0x16/0x1b
      
      CC: Dmitry Kravkov <dmitry@broadcom.com>
      Signed-off-by: NPravin B Shelar <pshelar@nicira.com>
      Acked-by: NDmitry Kravkov <dmitry@broadcom.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      7992ae6d
    • P
      IP_GRE: Fix GRE_CSUM case. · 8f10098f
      Pravin B Shelar 提交于
      commit "ip_gre: allow CSUM capable devices to handle packets"
      aa0e51cd, broke GRE_CSUM case.
      GRE_CSUM needs checksum computed for inner packet. Therefore
      csum-calculation can not be offloaded if tunnel device requires
      GRE_CSUM.  Following patch fixes it by computing inner packet checksum
      for GRE_CSUM type, for all other type of GRE devices csum is offloaded.
      
      CC: Dmitry Kravkov <dmitry@broadcom.com>
      Signed-off-by: NPravin B Shelar <pshelar@nicira.com>
      Acked-by: NDmitry Kravkov <dmitry@broadcom.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      8f10098f
    • P
      VXLAN: Use tunnel_ip_select_ident() for tunnel IP-Identification. · 8dc98eb2
      Pravin B Shelar 提交于
      tunnel_ip_select_ident() is more efficient when generating ip-header
      id given inner packet is of ipv4 type.
      Signed-off-by: NPravin B Shelar <pshelar@nicira.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      8dc98eb2
    • P
      IP_GRE: Fix IP-Identification. · 490ab081
      Pravin B Shelar 提交于
      GRE-GSO generates ip fragments with id 0,2,3,4... for every
      GSO packet, which is not correct. Following patch fixes it
      by setting ip-header id unique id of fragments are allowed.
      As Eric Dumazet suggested it is optimized by using inner ip-header
      whenever inner packet is ipv4.
      Signed-off-by: NPravin B Shelar <pshelar@nicira.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      490ab081
    • D
      Merge branch 'wireless' · 2bedc2e6
      David S. Miller 提交于
      John W. Linville says:
      
      ====================
      This is a batch of fixes intended for the 3.9 stream...
      
      Avinash Patil gives us a mwifiex fix to prevent a system freeze when
      that driver is unloaded.
      
      Daniel Drake brings a patch to avoid dropping the carrier flag across a
      suspend.  This prevents improper packet drops.
      
      Wei Yongjun delivers a brcmfmac for a lock leak on an error path.
      ====================
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      2bedc2e6