1. 09 May, 2013 21 commits
    • Li Zefan's avatar
      shm: fix null pointer deref when userspace specifies invalid hugepage size · 091d0d55
      Li Zefan authored
      Dave reported an oops triggered by trinity:
      
        BUG: unable to handle kernel NULL pointer dereference at 0000000000000008
        IP: newseg+0x10d/0x390
        PGD cf8c1067 PUD cf8c2067 PMD 0
        Oops: 0000 [#1] PREEMPT SMP DEBUG_PAGEALLOC
        CPU: 2 PID: 7636 Comm: trinity-child2 Not tainted 3.9.0+#67
        ...
        Call Trace:
          ipcget+0x182/0x380
          SyS_shmget+0x5a/0x60
          tracesys+0xdd/0xe2
      
      This bug was introduced by commit af73e4d9 ("hugetlbfs: fix mmap
      failure in unaligned size request").
      Reported-by: default avatarDave Jones <davej@redhat.com>
      Cc: <stable@vger.kernel.org>
      Signed-off-by: default avatarLi Zefan <lizfan@huawei.com>
      Reviewed-by: default avatarNaoya Horiguchi <n-horiguchi@ah.jp.nec.com>
      Acked-by: default avatarRik van Riel <riel@redhat.com>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      091d0d55
    • Rik van Riel's avatar
      ipc,sem: fix semctl(..., GETNCNT) · de2657f9
      Rik van Riel authored
      The semctl GETNCNT returns the number of semops waiting for the
      specified semaphore to become nonzero.  After commit 9f1bc2c9
      ("ipc,sem: have only one list in struct sem_queue"), the semops waiting
      on just one semaphore are waiting on that semaphore's list.
      
      In order to return the correct count, we have to walk that list too, in
      addition to the sem_array's list for complex operations.
      Signed-off-by: default avatarRik van Riel <riel@redhat.com>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      de2657f9
    • Rik van Riel's avatar
      ipc,sem: fix semctl(..., GETZCNT) · ebc2e5e6
      Rik van Riel authored
      The semctl GETZCNT returns the number of semops waiting for the
      specified semaphore to become zero.  After commit 9f1bc2c9
      ("ipc,sem: have only one list in struct sem_queue"), the semops waiting
      on just one semaphore are waiting on that semaphore's list.
      
      In order to return the correct count, we have to walk that list too, in
      addition to the sem_array's list for complex operations.
      
      This bug broke dbench; it works again with this patch applied.
      Signed-off-by: default avatarRik van Riel <riel@redhat.com>
      Reported-by: default avatarKent Overstreet <koverstreet@google.com>
      Tested-by: default avatarKent Overstreet <koverstreet@google.com>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      ebc2e5e6
    • Linus Torvalds's avatar
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs · 07e07450
      Linus Torvalds authored
      Pull more vfs fixes from Al Viro:
       "Regression fix from Geert + yet another open-coded kernel_read()"
      
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs:
        ecryptfs: don't open-code kernel_read()
        xtensa simdisk: Fix proc_create_data() conversion fallout
      07e07450
    • Linus Torvalds's avatar
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mason/linux-btrfs · 983a5f84
      Linus Torvalds authored
      Pull btrfs update from Chris Mason:
       "These are mostly fixes.  The biggest exceptions are Josef's skinny
        extents and Jan Schmidt's code to rebuild our quota indexes if they
        get out of sync (or you enable quotas on an existing filesystem).
      
        The skinny extents are off by default because they are a new variation
        on the extent allocation tree format.  btrfstune -x enables them, and
        the new format makes the extent allocation tree about 30% smaller.
      
        I rebased this a few days ago to rework Dave Sterba's crc checks on
        the super block, but almost all of these go back to rc6, since I
        though 3.9 was due any minute.
      
        The biggest missing fix is the tracepoint bug that was hit late in
        3.9.  I ran into problems with that in overnight testing and I'm still
        tracking it down.  I'll definitely have that fixed for rc2."
      
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mason/linux-btrfs: (101 commits)
        Btrfs: allow superblock mismatch from older mkfs
        btrfs: enhance superblock checks
        btrfs: fix misleading variable name for flags
        btrfs: use unsigned long type for extent state bits
        Btrfs: improve the loop of scrub_stripe
        btrfs: read entire device info under lock
        btrfs: remove unused gfp mask parameter from release_extent_buffer callchain
        btrfs: handle errors returned from get_tree_block_key
        btrfs: make static code static & remove dead code
        Btrfs: deal with errors in write_dev_supers
        Btrfs: remove almost all of the BUG()'s from tree-log.c
        Btrfs: deal with free space cache errors while replaying log
        Btrfs: automatic rescan after "quota enable" command
        Btrfs: rescan for qgroups
        Btrfs: split btrfs_qgroup_account_ref into four functions
        Btrfs: allocate new chunks if the space is not enough for global rsv
        Btrfs: separate sequence numbers for delayed ref tracking and tree mod log
        btrfs: move leak debug code to functions
        Btrfs: return free space in cow error path
        Btrfs: set UUID in root_item for created trees
        ...
      983a5f84
    • Linus Torvalds's avatar
      Merge tag 'for-linus-v3.10-rc1-2' of git://oss.sgi.com/xfs/xfs · 8769e078
      Linus Torvalds authored
      Pull xfs update (#2) from Ben Myers:
      
       - add CONFIG_XFS_WARN, a step between zero debugging and
         CONFIG_XFS_DEBUG.
      
       - fix attrmulti and attrlist to fall back to vmalloc when kmalloc
         fails.
      
      * tag 'for-linus-v3.10-rc1-2' of git://oss.sgi.com/xfs/xfs:
        xfs: fallback to vmalloc for large buffers in xfs_compat_attrlist_by_handle
        xfs: fallback to vmalloc for large buffers in xfs_attrlist_by_handle
        xfs: introduce CONFIG_XFS_WARN
      8769e078
    • Al Viro's avatar
      ecryptfs: don't open-code kernel_read() · 39dfe6c6
      Al Viro authored
      Signed-off-by: default avatarAl Viro <viro@zeniv.linux.org.uk>
      39dfe6c6
    • Linus Torvalds's avatar
      Merge tag 'nfs-for-3.10-2' of git://git.linux-nfs.org/projects/trondmy/linux-nfs · 8cbc95ee
      Linus Torvalds authored
      Pull more NFS client bugfixes from Trond Myklebust:
      
       - Ensure that we match the 'sec=' mount flavour against the server list
      
       - Fix the NFSv4 byte range locking in the presence of delegations
      
       - Ensure that we conform to the NFSv4.1 spec w.r.t.  freeing lock
         stateids
      
       - Fix a pNFS data server connection race
      
      * tag 'nfs-for-3.10-2' of git://git.linux-nfs.org/projects/trondmy/linux-nfs:
        NFS4.1 Fix data server connection race
        NFSv3: match sec= flavor against server list
        NFSv4.1: Ensure that we free the lock stateid on the server
        NFSv4: Convert nfs41_free_stateid to use an asynchronous RPC call
        SUNRPC: Don't spam syslog with "Pseudoflavor not found" messages
        NFSv4.x: Fix handling of partially delegated locks
      8cbc95ee
    • Linus Torvalds's avatar
      Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net · ea44083a
      Linus Torvalds authored
      Pull networking update from David Miller:
      
       1) Propagate return error values properly in irda, spider_net, sfc, and
          bfin_mac.  From Wei Yongjun.
      
       2) Fix fec driver OOPS on rapid link up/down, from Frank Li.
      
       3) FIX VF resource allocation and chip message payload length errors in
          be2net driver, from Sathya Perla.
      
       4) Fix inner protocol inspection during GSO from Pravin B Shelar.
      
      * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net:
        if_cablemodem.h: Add parenthesis around ioctl macros
        gso: Handle Trans-Ether-Bridging protocol in skb_network_protocol()
        net: fec: fix kernel oops when plug/unplug cable many times
        bfin_mac: fix error return code in bfin_mac_probe()
        sfc: fix return value check in efx_ptp_probe_channel()
        net/spider_net: fix error return code in spider_net_open()
        net/irda: fix error return code in bfin_sir_open()
        net: of_mdio: fix behavior on missing phy device
        sierra_net: keep status interrupt URB active
        usbnet: allow status interrupt URB to always be active
        qmi_wwan/cdc_ether: add device IDs for Dell 5804 (Novatel E371) WWAN card
        be2net: disable TX in be_close()
        be2net: fix EQ from getting full while cleaning RX CQ
        be2net: fix payload_len value for GET_MAC_LIST cmd req
        be2net: provision VF resources before enabling SR-IOV
      ea44083a
    • Linus Torvalds's avatar
      Merge tag 'pci-v3.10-fixes-1' of git://git.kernel.org/pub/scm/linux/kernel/git/helgaas/pci · e15e6119
      Linus Torvalds authored
      Pull PCI updates from Bjorn Helgaas:
       "MSI:
            PCI: Set ->mask_pos correctly
        Hotplug:
            PCI: Delay final fixups until resources are assigned
        Moorestown:
            x86/pci/mrst: Use configuration mechanism 1 for 00:00.0, 00:02.0, 00:03.0"
      
      * tag 'pci-v3.10-fixes-1' of git://git.kernel.org/pub/scm/linux/kernel/git/helgaas/pci:
        PCI: Delay final fixups until resources are assigned
        x86/pci/mrst: Use configuration mechanism 1 for 00:00.0, 00:02.0, 00:03.0
        PCI: Set ->mask_pos correctly
      e15e6119
    • Geert Uytterhoeven's avatar
      xtensa simdisk: Fix proc_create_data() conversion fallout · 0757f615
      Geert Uytterhoeven authored
      arch/xtensa/platforms/iss/simdisk.c: In function 'proc_read_simdisk':
      arch/xtensa/platforms/iss/simdisk.c:220:12: warning: initialization discards 'const' qualifier from pointer target type [enabled by default]
      arch/xtensa/platforms/iss/simdisk.c: In function 'proc_write_simdisk':
      arch/xtensa/platforms/iss/simdisk.c:241:38: error: 'buffer' undeclared (first use in this function)
      arch/xtensa/platforms/iss/simdisk.c:241:38: note: each undeclared identifier is reported only once for each function it appears in
      
      Introduced by commit a69755b1 ("xtensa
      simdisk: switch to proc_create_data()")
      Signed-off-by: default avatarGeert Uytterhoeven <geert@linux-m68k.org>
      Signed-off-by: default avatarAl Viro <viro@zeniv.linux.org.uk>
      0757f615
    • Linus Torvalds's avatar
      Merge tag 'for-linus-20130509' of git://git.infradead.org/linux-mtd · a637b0d4
      Linus Torvalds authored
      Pull MTD update from David Woodhouse:
      
       - Lots of cleanups from Artem, including deletion of some obsolete
         drivers
      
       - Support partitions larger than 4GiB in device tree
      
       - Support for new SPI chips
      
      * tag 'for-linus-20130509' of git://git.infradead.org/linux-mtd: (83 commits)
        mtd: omap2: Use module_platform_driver()
        mtd: bf5xx_nand: Use module_platform_driver()
        mtd: denali_dt: Remove redundant use of of_match_ptr
        mtd: denali_dt: Change return value to fix smatch warning
        mtd: denali_dt: Use module_platform_driver()
        mtd: denali_dt: Fix incorrect error check
        mtd: nand: subpage write support for hardware based ECC schemes
        mtd: omap2: use msecs_to_jiffies()
        mtd: nand_ids: use size macros
        mtd: nand_ids: improve LEGACY_ID_NAND macro a bit
        mtd: add 4 Toshiba nand chips for the full-id case
        mtd: add the support to parse out the full-id nand type
        mtd: add new fields to nand_flash_dev{}
        mtd: sh_flctl: Use of_match_ptr() macro
        mtd: gpio: Use of_match_ptr() macro
        mtd: gpio: Use devm_kzalloc()
        mtd: davinci_nand: Use of_match_ptr()
        mtd: dataflash: Use of_match_ptr() macro
        mtd: remove h720x flash support
        mtd: onenand: remove OneNAND simulator
        ...
      a637b0d4
    • Linus Torvalds's avatar
      Merge tag 'firewire-updates' of git://git.kernel.org/pub/scm/linux/kernel/git/ieee1394/linux1394 · f78089e8
      Linus Torvalds authored
      Pull firewure updates from Stefan Richter:
        - fix controller removal when controller is in suspended state
        - fix video reception on VIA VT6306 with gstreamer, MythTV, and maybe dv4l
        - fix a startup issue with Agere/LSI FW643-e2
        - error logging improvements and other small updates
      
      * tag 'firewire-updates' of git://git.kernel.org/pub/scm/linux/kernel/git/ieee1394/linux1394:
        firewire: ohci: dump_stack() for PHY regs read/write failures
        firewire: ohci: Improve bus reset error messages
        firewire: ohci: Alias dev_* log functions
        firewire: ohci: Fix 'failed to read phy reg' on FW643 rev8
        firewire: ohci: fix VIA VT6306 video reception
        firewire: ohci: Check LPS before register access on pci removal
        firewire: ohci: Fix double free_irq()
        firewire: remove unnecessary alloc/OOM messages
        firewire: sbp2: replace BUG_ON by WARN_ON
        firewire: core: remove an always false test
        firewire: Remove two unneeded checks for macros
      f78089e8
    • Linus Torvalds's avatar
      Merge tag 'edac_fixes_for_3.10' of git://git.kernel.org/pub/scm/linux/kernel/git/bp/bp · 7462543a
      Linus Torvalds authored
      Pull two small EDAC fixes from Borislav Petkov.
      
      * tag 'edac_fixes_for_3.10' of git://git.kernel.org/pub/scm/linux/kernel/git/bp/bp:
        EDAC: Don't give write permission to read-only files
        EDAC, mc_sysfs.c: Fix string array pointer types
      7462543a
    • Linus Torvalds's avatar
      Merge git://www.linux-watchdog.org/linux-watchdog · bde9d73d
      Linus Torvalds authored
      Pull watchdog update from Wim Van Sebroeck:
       "Fix a kdump issue in hpwdt and a possible NULL dereference"
      
      * git://www.linux-watchdog.org/linux-watchdog:
        watchdog: Fix race condition in registration code
        watchdog: Convert to devm_ioremap_resource()
      bde9d73d
    • Linus Torvalds's avatar
      Merge tag 'gpio-for-linus' of git://git.secretlab.ca/git/linux · 5647ac0a
      Linus Torvalds authored
      Pull removal of GENERIC_GPIO from Grant Likely:
       "GENERIC_GPIO now synonymous with GPIOLIB.  There are no longer any
        valid cases for enableing GENERIC_GPIO without GPIOLIB, even though it
        is possible to do so which has been causing confusion and breakage.
        This branch does the work to completely eliminate GENERIC_GPIO."
      
      * tag 'gpio-for-linus' of git://git.secretlab.ca/git/linux:
        gpio: update gpio Chinese documentation
        Remove GENERIC_GPIO config option
        Convert selectors of GENERIC_GPIO to GPIOLIB
        blackfin: force use of gpiolib
        m68k: coldfire: use gpiolib
        mips: pnx833x: remove requirement for GENERIC_GPIO
        openrisc: default GENERIC_GPIO to false
        avr32: default GENERIC_GPIO to false
        xtensa: remove explicit selection of GENERIC_GPIO
        sh: replace CONFIG_GENERIC_GPIO by CONFIG_GPIOLIB
        powerpc: remove redundant GENERIC_GPIO selection
        unicore32: default GENERIC_GPIO to false
        unicore32: remove unneeded select GENERIC_GPIO
        arm: plat-orion: use GPIO driver on CONFIG_GPIOLIB
        arm: remove redundant GENERIC_GPIO selection
        mips: alchemy: require gpiolib
        mips: txx9: change GENERIC_GPIO to GPIOLIB
        mips: loongson: use GPIO driver on CONFIG_GPIOLIB
        mips: remove redundant GENERIC_GPIO select
      5647ac0a
    • Linus Torvalds's avatar
      Merge branch 'for-linus' of git://git.infradead.org/users/vkoul/slave-dma · 1763e735
      Linus Torvalds authored
      Pull slave-dmaengine updates from Vinod Koul:
       "This time we have dmatest improvements from Andy along with dw_dmac
        fixes.  He has also done support for acpi for dmanegine.
      
        Also we have bunch of fixes going in DT support for dmanegine for
        various folks.  Then Haswell and other ioat changes from Dave and
        SUDMAC support from Shimoda."
      
      * 'for-linus' of git://git.infradead.org/users/vkoul/slave-dma: (53 commits)
        dma: tegra: implement suspend/resume callbacks
        dma:of: Use a mutex to protect the of_dma_list
        dma: of: Fix of_node reference leak
        dmaengine: sirf: move driver init from module_init to subsys_initcall
        sudmac: add support for SUDMAC
        dma: sh: add Kconfig
        at_hdmac: move to generic DMA binding
        ioatdma: ioat3_alloc_sed can be static
        ioatdma: Adding write back descriptor error status support for ioatdma 3.3
        ioatdma: S1200 platforms ioatdma channel 2 and 3 falsely advertise RAID cap
        ioatdma: Adding support for 16 src PQ ops and super extended descriptors
        ioatdma: Removing hw bug workaround for CB3.x .2 and earlier
        dw_dmac: add ACPI support
        dmaengine: call acpi_dma_request_slave_channel as well
        dma: acpi-dma: introduce ACPI DMA helpers
        dma: of: Remove unnecessary list_empty check
        DMA: OF: Check properties value before running be32_to_cpup() on it
        DMA: of: Constant names
        ioatdma: skip silicon bug workaround for pq_align for cb3.3
        ioatdma: Removing PQ val disable for cb3.3
        ...
      1763e735
    • Linus Torvalds's avatar
      Merge branch 'next' of git://git.kernel.org/pub/scm/linux/kernel/git/rzhang/linux · b29bdba5
      Linus Torvalds authored
      Pull thermal management update from Zhang Rui:
       "The most important one is to build thermal core and governor and cpu
        cooling code into one module.  This fixes a regression that thermal
        core does not work if it is built as module, since 3.7.  I'll backport
        them to stable kernel once those changes are in upstream.
      
        The largest batch is the thermal kernel-doc & coding style
        updates/cleanups from Eduardo.
      
        Highlights:
      
         - build all thermal framework code into one module to fix a
           regression that thermal does not work if it is built as module.
      
         - Marvell Armada 370/XP thermal sensor driver
      
         - thermal core/cpu cooling kernel-doc & coding style updates and
           cleanups.
      
         - Add Eduardo Valentin as thermal sub-maintainer, both in mailing
           list and patchwork.  He will help me on arm thermal drivers."
      
      * 'next' of git://git.kernel.org/pub/scm/linux/kernel/git/rzhang/linux: (68 commits)
        thermal: db8500_cpufreq_cooling: remove usage of IS_ERR_OR_NULL()
        thermal: thermal_core: remove usage of IS_ERR_OR_NULL
        thermal: cpu_cooling: improve line breaking
        thermal: cpu_cooling: alignment improvements
        thermal: cpu_cooling: remove checkpatch.pl warning
        thermal: cpu_cooling: remove trailing blank line
        thermal: cpu_cooling: align on open parenthesis
        thermal: cpu_cooling: standardize comment style
        thermal: cpu_cooling: standardize end of function
        thermal: cpu_cooling: remove trailing white spaces
        Thermal: update documentation for thermal_zone_device_register
        thermal: update kernel-doc for thermal_zone_device_register
        thermal: update kernel-doc for create_trip_attrs
        thermal: update kernel-doc for thermal_cooling_device_register
        thermal: update kernel-doc for thermal_zone_unbind_cooling_device
        thermal: update kernel-doc for thermal_zone_bind_cooling_device
        thermal: use EXPORT_SYMBOL_GPL
        thermal: rename notify_thermal_framework to thermal_notify_framework
        thermal: update driver license
        thermal: use strlcpy instead of strcpy
        ...
      b29bdba5
    • Srivatsa S. Bhat's avatar
      EDAC: Don't give write permission to read-only files · c8c64d16
      Srivatsa S. Bhat authored
      I get the following warning on boot:
      
      ------------[ cut here ]------------
      WARNING: at drivers/base/core.c:575 device_create_file+0x9a/0xa0()
      Hardware name:  -[8737R2A]-
      Write permission without 'store'
      ...
      </snip>
      
      Drilling down, this is related to dynamic channel ce_count attribute
      files sporting a S_IWUSR mode without a ->store() function. Looking
      around, it appears that they aren't supposed to have a ->store()
      function. So remove the bogus write permission to get rid of the
      warning.
      Signed-off-by: default avatarSrivatsa S. Bhat <srivatsa.bhat@linux.vnet.ibm.com>
      Cc: Mauro Carvalho Chehab <mchehab@redhat.com>
      Cc: <stable@vger.kernel.org> # 3.[89]
      [ shorten commit message ]
      Signed-off-by: default avatarBorislav Petkov <bp@suse.de>
      c8c64d16
    • Guenter Roeck's avatar
      watchdog: Fix race condition in registration code · 60403f7a
      Guenter Roeck authored
      A race condition exists when registering the first watchdog device.
      Sequence of events:
      
      - watchdog_register_device calls watchdog_dev_register
      - watchdog_dev_register creates the watchdog misc device by calling
        misc_register.
        At that time, the matching character device (/dev/watchdog0) does not yet
        exist, and old_wdd is not set either.
      - Userspace gets an event and opens /dev/watchdog
      - watchdog_open is called and sets wdd = old_wdd, which is still NULL,
        and tries to dereference it. This causes the kernel to panic.
      
      Seen with systemd trying to open /dev/watchdog immediately after
      it was created.
      Reported-by: default avatarArkadiusz Miskiewicz <arekm@maven.pl>
      Signed-off-by: default avatarGuenter Roeck <linux@roeck-us.net>
      Tested-by: default avatarArkadiusz Miskiewicz <arekm@maven.pl>
      Signed-off-by: default avatarWim Van Sebroeck <wim@iguana.be>
      60403f7a
    • Sachin Kamat's avatar
      watchdog: Convert to devm_ioremap_resource() · 6330c707
      Sachin Kamat authored
      Use the newly introduced devm_ioremap_resource() instead of
      devm_request_and_ioremap() which provides more consistent error handling.
      
      devm_ioremap_resource() provides its own error messages; so all explicit
      error messages can be removed from the failure code paths.
      Signed-off-by: default avatarSachin Kamat <sachin.kamat@linaro.org>
      Reviewed-by: default avatarThierry Reding <thierry.reding@avionic-design.de>
      Cc: Gabor Juhos <juhosg@openwrt.org>
      Cc: Paul Mundt <lethal@linux-sh.org>
      Signed-off-by: default avatarWim Van Sebroeck <wim@iguana.be>
      6330c707
  2. 08 May, 2013 19 commits