1. 27 Feb, 2013 1 commit
  2. 26 Feb, 2013 25 commits
    • Marina Makienko's avatar
      isdn: hisax: add missing usb_free_urb · 114a6f8b
      Marina Makienko authored
      Add missing usb_free_urb() on failure path in st5481_setup_usb().
      
      Found by Linux Driver Verification project (linuxtesting.org).
      Signed-off-by: default avatarMarina Makienko <makienko@ispras.ru>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      114a6f8b
    • Jiri Pirko's avatar
      bond: check if slave count is 0 in case when deciding to take slave's mac · 6c8c4e4c
      Jiri Pirko authored
      in bond_enslave(), check slave_cnt before actually using slave address.
      
      introduced by:
      commit 409cc1f8 (bond: have random dev address by default instead of zeroes)
      Reported-by: default avatarGreg Rose <gregory.v.rose@intel.com>
      Signed-off-by: default avatarJiri Pirko <jiri@resnulli.us>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      6c8c4e4c
    • Daniel Mack's avatar
      drivers: net: ethernet: cpsw: consider number of slaves in interation · 0237c110
      Daniel Mack authored
      Make cpsw_add_default_vlan() look at the actual number of slaves for its
      iteration, so boards with less than 2 slaves don't ooops at boot.
      Signed-off-by: default avatarDaniel Mack <zonque@gmail.com>
      Cc: Mugunthan V N <mugunthanvnm@ti.com>
      Cc: David S. Miller <davem@davemloft.net>
      Acked-by: default avatarMugunthan V N <mugunthanvnm@ti.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      0237c110
    • David S. Miller's avatar
      Merge branch 'master' of git://1984.lsi.us.es/nf · b86c761f
      David S. Miller authored
      Pablo Neira Ayuso says:
      
      ====================
      The following patchset contains two bugfixes for netfilter/ipset via
      Jozsef Kadlecsik, they are:
      
      * Fix timeout corruption if sets are resized, by Josh Hunt.
      
      * Fix bogus error report if the flag nomatch is set, from Jozsef.
      ====================
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      b86c761f
    • David S. Miller's avatar
      Merge branch 'sfc-3.9' of git://git.kernel.org/pub/scm/linux/kernel/git/bwh/sfc · 3647d345
      David S. Miller authored
      Ben Hutchings says:
      
      ====================
      Some fixes that should go into 3.9:
      
      1. Fix packet corruption when using non-coherent RX DMA buffers.
      2. Fix occasional watchdog misfiring when changing MTU or ring size.
      
      These are longstanding bugs and should be fixed in stable as well, but
      I'd like to review other recent fixes first and send a separate request
      for stable inclusion.
      ====================
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      3647d345
    • Linus Torvalds's avatar
      Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net · 1cef9350
      Linus Torvalds authored
      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
    • Linus Torvalds's avatar
      Merge branch 'for-next' of git://git.kernel.org/pub/scm/linux/kernel/git/nab/target-pending · ecc88efb
      Linus Torvalds authored
      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
    • Linus Torvalds's avatar
      Merge tag 'rdma-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/roland/infiniband · 70a3a06d
      Linus Torvalds authored
      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
    • Linus Torvalds's avatar
      Merge tag 'iommu-updates-v3.9' of git://git.kernel.org/pub/scm/linux/kernel/git/joro/iommu · f6c0ffa8
      Linus Torvalds authored
      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
    • Linus Torvalds's avatar
      Merge branch 'for-v3.9' of git://git.linaro.org/people/mszyprowski/linux-dma-mapping · 42a0a1b0
      Linus Torvalds authored
      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
    • Linus Torvalds's avatar
      Merge branch 'i2c/for-next' of git://git.kernel.org/pub/scm/linux/kernel/git/wsa/linux · 52caa59e
      Linus Torvalds authored
      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
    • Linus Torvalds's avatar
      Merge tag 'gpio-for-linus' of git://git.secretlab.ca/git/linux · 4c8c225a
      Linus Torvalds authored
      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
    • Linus Torvalds's avatar
      Merge tag 'for-3.9-rc1' of git://gitorious.org/linux-pwm/linux-pwm · 3eb05225
      Linus Torvalds authored
      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
    • Linus Torvalds's avatar
      Merge tag 'mmc-updates-for-3.9-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/cjb/mmc · ed5dc237
      Linus Torvalds authored
      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
    • Linus Torvalds's avatar
      Merge branch 'for-next' of git://git.kernel.org/pub/scm/linux/kernel/git/cooloney/linux-leds · 0512c04a
      Linus Torvalds authored
      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
    • Linus Torvalds's avatar
      Merge branch 'next' of git://git.infradead.org/users/vkoul/slave-dma · 5115f3c1
      Linus Torvalds authored
      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
    • Roland Dreier's avatar
    • Ben Hutchings's avatar
      sfc: Detach net device when stopping queues for reconfiguration · 29c69a48
      Ben Hutchings authored
      We must only ever stop TX queues when they are full or the net device
      is not 'ready' so far as the net core, and specifically the watchdog,
      is concerned.  Otherwise, the watchdog may fire *immediately* if no
      packets have been added to the queue in the last 5 seconds.
      
      The device is ready if all the following are true:
      
      (a) It has a qdisc
      (b) It is marked present
      (c) It is running
      (d) The link is reported up
      
      (a) and (c) are normally true, and must not be changed by a driver.
      (d) is under our control, but fake link changes may disturb userland.
      This leaves (b).  We already mark the device absent during reset
      and self-test, but we need to do the same during MTU changes and ring
      reallocation.  We don't need to do this when the device is brought
      down because then (c) is already false.
      Signed-off-by: default avatarBen Hutchings <bhutchings@solarflare.com>
      29c69a48
    • Ben Hutchings's avatar
      sfc: Fix efx_rx_buf_offset() in the presence of swiotlb · b590ace0
      Ben Hutchings authored
      We assume that the mapping between DMA and virtual addresses is done
      on whole pages, so we can find the page offset of an RX buffer using
      the lower bits of the DMA address.  However, swiotlb maps in units of
      2K, breaking this assumption.
      
      Add an explicit page_offset field to struct efx_rx_buffer.
      Signed-off-by: default avatarBen Hutchings <bhutchings@solarflare.com>
      b590ace0
    • Ben Hutchings's avatar
      sfc: Properly sync RX DMA buffer when it is not the last in the page · 3a68f19d
      Ben Hutchings authored
      We may currently allocate two RX DMA buffers to a page, and only unmap
      the page when the second is completed.  We do not sync the first RX
      buffer to be completed; this can result in packet loss or corruption
      if the last RX buffer completed in a NAPI poll is the first in a page
      and is not DMA-coherent.  (In the middle of a NAPI poll, we will
      handle the following RX completion and unmap the page *before* looking
      at the content of the first buffer.)
      Signed-off-by: default avatarBen Hutchings <bhutchings@solarflare.com>
      3a68f19d
    • Linus Torvalds's avatar
      Merge tag 'pm+acpi-fixes-3.9-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm · c41b3810
      Linus Torvalds authored
      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
    • Linus Torvalds's avatar
      Merge tag 'pci-v3.9-changes' of git://git.kernel.org/pub/scm/linux/kernel/git/helgaas/pci · 556f12f6
      Linus Torvalds authored
      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
    • Linus Torvalds's avatar
      Merge branch 'drm-next' of git://people.freedesktop.org/~airlied/linux · fffddfd6
      Linus Torvalds authored
      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
    • Linus Torvalds's avatar
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs · 69086a78
      Linus Torvalds authored
      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
    • Linus Torvalds's avatar
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/ebiederm/user-namespace · 94f2f142
      Linus Torvalds authored
      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
  3. 25 Feb, 2013 14 commits
    • Linus Torvalds's avatar
      Merge git://git.kernel.org/pub/scm/virt/kvm/kvm · 8d168f71
      Linus Torvalds authored
      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
    • Linus Torvalds's avatar
      Merge git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6 · 32dc43e4
      Linus Torvalds authored
      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
    • Stephen Rothwell's avatar
      drm/tilcdc: only build on arm · be88298b
      Stephen Rothwell authored
      [airlied: hack for now until we fix cma helpers on other OF platforms]
      Signed-off-by: default avatarStephen Rothwell <sfr@canb.auug.org.au>
      Signed-off-by: default avatarDave Airlie <airlied@linux.ie>
      be88298b
    • Linus Torvalds's avatar
      Merge tag 'please-pull-vm_unwrapped' of git://git.kernel.org/pub/scm/linux/kernel/git/aegl/linux · d414c104
      Linus Torvalds authored
      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
    • Linus Torvalds's avatar
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jmorris/linux-security · f6d43b93
      Linus Torvalds authored
      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
    • Linus Torvalds's avatar
      Merge tag 'ktest-v3.9' of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-ktest · c69d0a15
      Linus Torvalds authored
      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
    • Linus Torvalds's avatar
      Merge tag 'modules-next-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux · 9043a265
      Linus Torvalds authored
      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
    • Ming Lei's avatar
      usbnet: smsc95xx: rename FEATURE_AUTOSUSPEND · eb970ff0
      Ming Lei authored
      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: default avatarMing Lei <ming.lei@canonical.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      eb970ff0
    • Ming Lei's avatar
      usbnet: smsc95xx: fix broken runtime suspend · 42e21c01
      Ming Lei authored
      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: default avatarMing Lei <ming.lei@canonical.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      42e21c01
    • Ming Lei's avatar
      usbnet: smsc95xx: fix suspend failure · 76437214
      Ming Lei authored
      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: default avatarMing Lei <ming.lei@canonical.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      76437214
    • Rafał Miłecki's avatar
      bgmac: fix indexing of 2nd level loops · 70a737b7
      Rafał Miłecki authored
      We were using the same variable for iterating two nested loops.
      Reported-by: default avatarTijs Van Buggenhout <tvb@able.be>
      Signed-off-by: default avatarRafał Miłecki <zajec5@gmail.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      70a737b7
    • Larry Finger's avatar
      b43: Fix lockdep splat on module unload · 63a02ce1
      Larry Finger authored
      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: default avatarLarry Finger <Larry.Finger@lwfinger.net>
      Cc: Stable <stable@vger.kernel.org> [V3.5+]
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      63a02ce1
    • Pravin B Shelar's avatar
      Revert "ip_gre: propogate target device GSO capability to the tunnel device" · 7992ae6d
      Pravin B Shelar authored
      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: default avatarPravin B Shelar <pshelar@nicira.com>
      Acked-by: default avatarDmitry Kravkov <dmitry@broadcom.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      7992ae6d
    • Pravin B Shelar's avatar
      IP_GRE: Fix GRE_CSUM case. · 8f10098f
      Pravin B Shelar authored
      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: default avatarPravin B Shelar <pshelar@nicira.com>
      Acked-by: default avatarDmitry Kravkov <dmitry@broadcom.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      8f10098f