1. 17 6月, 2014 2 次提交
    • A
      ARM: keystone requires ARM_PATCH_PHYS_VIRT · 13ee8955
      Arnd Bergmann 提交于
      The dynamic relocation that the keystone platform performs
      only works if we can pick the phys offset at boot time. It's
      possible that there is another solution for this, but this
      is the easiest workaround. Kernels with ARM_PATCH_PHYS_VIRT
      are not portable across platforms, and I see no reason why
      anyone would run a kernel without ARM_PATCH_PHYS_VIRT on
      keystone.
      Signed-off-by: NArnd Bergmann <arnd@arndb.de>
      Acked-by: NSantosh Shilimkar <santosh.shilimkar@ti.com>
      13ee8955
    • A
      ARM: omap2: fix am43xx dependency on l2x0 cache · 2ad501cc
      Arnd Bergmann 提交于
      Commit d941f86f ("ARM: l2c: AM43x: add L2 cache support") enabled
      the L2 cache support for the am43xx SoC, but caused a build regression
      when the driver for that cache controller is disabled:
      
      arch/arm/mach-omap2/built-in.o: In function `am43xx_init_early':
      :(.init.text+0xb20): undefined reference to `omap_l2_cache_init'
      
      This did not happen for OMAP4, which has the same call, but enables
      the l2x0 driver unconditionally. We could do the same thing for
      am43xx, but it seems better to allow turning it off and make the
      code work in either case.
      
      This adds an inline wrapper for omap_l2_cache_init for the disabled
      case, and removes the 'select' from OMAP4 so it becomes a user
      visible option.
      Signed-off-by: NArnd Bergmann <arnd@arndb.de>
      Acked-by: NTony Lindgren <tony@atomide.com>
      Cc: linux-omap@vger.kernel.org
      2ad501cc
  2. 12 6月, 2014 4 次提交
    • L
      Merge tag 'soc2-for-3.16' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc · 2dc24b0d
      Linus Torvalds 提交于
      Pull part two of ARM SoC updates from Arnd Bergmann:
       "This is a small follow-up to the larger ARM SoC updates merged last
        week, almost entirely for the keystone platform.
      
        The main change here is to use the new dma-ranges parsing code that
        came in through Russell's ARM tree.  This allows the keystone platform
        to do cache-coherent DMA and to finally support all the available
        physical memory when LPAE is enabled.
      
        Aside from this, the keystone reset driver has been rewritten, and
        there is a small bug fix to allow building the orion5x platform again"
      
      * tag 'soc2-for-3.16' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc:
        ARM: keystone: Drop use of meminfo since its not available anymore
        ARM: orion5x: fix mvebu_mbus_dt_init call
        ARM: configs: keystone: enable reset driver support
        ARM: dts: keystone: update reset node to work with reset driver
        ARM: keystone: remove redundant reset stuff
        ARM: keystone: Update the dma offset for non-dt platform devices
        ARM: keystone: Switch over to coherent memory address space
        ARM: configs: keystone: add MTD_SPI_NOR (new dependency for M25P80)
        ARM: configs: keystone: drop CONFIG_COMMON_CLK_DEBUG
      2dc24b0d
    • L
      Merge branch 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jack/linux-fs · 2840c566
      Linus Torvalds 提交于
      Pull reiserfs and ext3 changes from Jan Kara:
       "Big reiserfs cleanup from Jeff, an ext3 deadlock fix, and some small
        cleanups"
      
      * 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jack/linux-fs: (34 commits)
        reiserfs: Fix compilation breakage with CONFIG_REISERFS_CHECK
        ext3: Fix deadlock in data=journal mode when fs is frozen
        reiserfs: call truncate_setsize under tailpack mutex
        fs/jbd/revoke.c: replace shift loop by ilog2
        reiserfs: remove obsolete __constant_cpu_to_le32
        reiserfs: balance_leaf refactor, split up balance_leaf_when_delete
        reiserfs: balance_leaf refactor, format balance_leaf_finish_node
        reiserfs: balance_leaf refactor, format balance_leaf_new_nodes_paste
        reiserfs: balance_leaf refactor, format balance_leaf_paste_right
        reiserfs: balance_leaf refactor, format balance_leaf_insert_right
        reiserfs: balance_leaf refactor, format balance_leaf_paste_left
        reiserfs: balance_leaf refactor, format balance_leaf_insert_left
        reiserfs: balance_leaf refactor, pull out balance_leaf{left, right, new_nodes, finish_node}
        reiserfs: balance_leaf refactor, pull out balance_leaf_finish_node_paste
        reiserfs: balance_leaf refactor pull out balance_leaf_finish_node_insert
        reiserfs: balance_leaf refactor, pull out balance_leaf_new_nodes_paste
        reiserfs: balance_leaf refactor, pull out balance_leaf_new_nodes_insert
        reiserfs: balance_leaf refactor, pull out balance_leaf_paste_right
        reiserfs: balance_leaf refactor, pull out balance_leaf_insert_right
        reiserfs: balance_leaf refactor, pull out balance_leaf_paste_left
        ...
      2840c566
    • L
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mason/linux-btrfs · 859862dd
      Linus Torvalds 提交于
      Pull btrfs updates from Chris Mason:
       "The biggest change here is Josef's rework of the btrfs quota
        accounting, which improves the in-memory tracking of delayed extent
        operations.
      
        I had been working on Btrfs stack usage for a while, mostly because it
        had become impossible to do long stress runs with slab, lockdep and
        pagealloc debugging turned on without blowing the stack.  Even though
        you upgraded us to a nice king sized stack, I kept most of the
        patches.
      
        We also have some very hard to find corruption fixes, an awesome sysfs
        use after free, and the usual assortment of optimizations, cleanups
        and other fixes"
      
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mason/linux-btrfs: (80 commits)
        Btrfs: convert smp_mb__{before,after}_clear_bit
        Btrfs: fix scrub_print_warning to handle skinny metadata extents
        Btrfs: make fsync work after cloning into a file
        Btrfs: use right type to get real comparison
        Btrfs: don't check nodes for extent items
        Btrfs: don't release invalid page in btrfs_page_exists_in_range()
        Btrfs: make sure we retry if page is a retriable exception
        Btrfs: make sure we retry if we couldn't get the page
        btrfs: replace EINVAL with EOPNOTSUPP for dev_replace raid56
        trivial: fs/btrfs/ioctl.c: fix typo s/substract/subtract/
        Btrfs: fix leaf corruption after __btrfs_drop_extents
        Btrfs: ensure btrfs_prev_leaf doesn't miss 1 item
        Btrfs: fix clone to deal with holes when NO_HOLES feature is enabled
        btrfs: free delayed node outside of root->inode_lock
        btrfs: replace EINVAL with ERANGE for resize when ULLONG_MAX
        Btrfs: fix transaction leak during fsync call
        btrfs: Avoid trucating page or punching hole in a already existed hole.
        Btrfs: update commit root on snapshot creation after orphan cleanup
        Btrfs: ioctl, don't re-lock extent range when not necessary
        Btrfs: avoid visiting all extent items when cloning a range
        ...
      859862dd
    • L
      Merge tag 'xfs-for-linus-3.16-rc1' of git://oss.sgi.com/xfs/xfs · 412dd3a6
      Linus Torvalds 提交于
      Pull xfs updates from Dave Chinner:
       "This update contains:
         - cleanup removing unused function args
         - rework of the filestreams allocator to use dentry cache parent
           lookups
         - new on-disk free inode btree and optimised inode allocator
         - various bug fixes
         - rework of internal attribute API
         - cleanup of superblock feature bit support to remove historic cruft
         - more fixes and minor cleanups
         - added a new directory/attribute geometry abstraction
         - yet more fixes and minor cleanups"
      
      * tag 'xfs-for-linus-3.16-rc1' of git://oss.sgi.com/xfs/xfs: (86 commits)
        xfs: fix xfs_da_args sparse warning in xfs_readdir
        xfs: Fix rounding in xfs_alloc_fix_len()
        xfs: tone down writepage/releasepage WARN_ONs
        xfs: small cleanup in xfs_lowbit64()
        xfs: kill xfs_buf_geterror()
        xfs: xfs_readsb needs to check for magic numbers
        xfs: block allocation work needs to be kswapd aware
        xfs: remove redundant geometry information from xfs_da_state
        xfs: replace attr LBSIZE with xfs_da_geometry
        xfs: pass xfs_da_args to xfs_attr_leaf_newentsize
        xfs: use xfs_da_geometry for block size in attr code
        xfs: remove mp->m_dir_geo from directory logging
        xfs: reduce direct usage of mp->m_dir_geo
        xfs: move node entry counts to xfs_da_geometry
        xfs: convert dir/attr btree threshold to xfs_da_geometry
        xfs: convert m_dirblksize to xfs_da_geometry
        xfs: convert m_dirblkfsbs to xfs_da_geometry
        xfs: convert directory segment limits to xfs_da_geometry
        xfs: convert directory db conversion to xfs_da_geometry
        xfs: convert directory dablk conversion to xfs_da_geometry
        ...
      412dd3a6
  3. 11 6月, 2014 34 次提交
    • L
      Merge branch 'for-linus' of git://git.kernel.dk/linux-block · 23d4ed53
      Linus Torvalds 提交于
      Pull block layer fixes from Jens Axboe:
       "Final small batch of fixes to be included before -rc1.  Some general
        cleanups in here as well, but some of the blk-mq fixes we need for the
        NVMe conversion and/or scsi-mq.  The pull request contains:
      
         - Support for not merging across a specified "chunk size", if set by
           the driver.  Some NVMe devices perform poorly for IO that crosses
           such a chunk, so we need to support it generically as part of
           request merging avoid having to do complicated split logic.  From
           me.
      
         - Bump max tag depth to 10Ki tags.  Some scsi devices have a huge
           shared tag space.  Before we failed with EINVAL if a too large tag
           depth was specified, now we truncate it and pass back the actual
           value.  From me.
      
         - Various blk-mq rq init fixes from me and others.
      
         - A fix for enter on a dying queue for blk-mq from Keith.  This is
           needed to prevent oopsing on hot device removal.
      
         - Fixup for blk-mq timer addition from Ming Lei.
      
         - Small round of performance fixes for mtip32xx from Sam Bradshaw.
      
         - Minor stack leak fix from Rickard Strandqvist.
      
         - Two __init annotations from Fabian Frederick"
      
      * 'for-linus' of git://git.kernel.dk/linux-block:
        block: add __init to blkcg_policy_register
        block: add __init to elv_register
        block: ensure that bio_add_page() always accepts a page for an empty bio
        blk-mq: add timer in blk_mq_start_request
        blk-mq: always initialize request->start_time
        block: blk-exec.c: Cleaning up local variable address returnd
        mtip32xx: minor performance enhancements
        blk-mq: ->timeout should be cleared in blk_mq_rq_ctx_init()
        blk-mq: don't allow queue entering for a dying queue
        blk-mq: bump max tag depth to 10K tags
        block: add blk_rq_set_block_pc()
        block: add notion of a chunk size for request merging
      23d4ed53
    • L
      Merge tag 'for-linus-20140610' of git://git.infradead.org/linux-mtd · e413a19a
      Linus Torvalds 提交于
      Pull MTD updates from Brian Norris:
       - refactor m25p80.c driver for use as a general SPI NOR framework for
         other drivers which may speak to SPI NOR flash without providing full
         SPI support (i.e., not part of drivers/spi/)
       - new Freescale QuadSPI driver (utilizing new SPI NOR framework)
       - updates for the STMicro "FSM" SPI NOR driver
       - fix sync/flush behavior on mtd_blkdevs
       - fixup subpage write support on a few NAND drivers
       - correct the MTD OOB test for odd-sized OOB areas
       - add BCH-16 support for OMAP NAND
       - fix warnings and trivial refactoring
       - utilize new ECC DT bindings in pxa3xx NAND driver
       - new LPDDR NVM driver
       - address a few assorted bugs caught by Coverity
       - add new imx6sx support for GPMI NAND
       - use a bounce buffer for NAND when non-DMA-able buffers are used
      
      * tag 'for-linus-20140610' of git://git.infradead.org/linux-mtd: (77 commits)
        mtd: gpmi: add gpmi support for imx6sx
        mtd: maps: remove check for CONFIG_MTD_SUPERH_RESERVE
        mtd: bf5xx_nand: use the managed version of kzalloc
        mtd: pxa3xx_nand: make the driver work on big-endian systems
        mtd: nand: omap: fix omap_calculate_ecc_bch() for-loop error
        mtd: nand: r852: correct write_buf loop bounds
        mtd: nand_bbt: handle error case for nand_create_badblock_pattern()
        mtd: nand_bbt: remove unused variable
        mtd: maps: sc520cdp: fix warnings
        mtd: slram: fix unused variable warning
        mtd: pfow: remove unused variable
        mtd: lpddr: fix Kconfig dependency, for I/O accessors
        mtd: nand: pxa3xx: Add supported ECC strength and step size to the DT binding
        mtd: nand: pxa3xx: Use ECC strength and step size devicetree binding
        mtd: nand: pxa3xx: Clean pxa_ecc_init() error handling
        mtd: nand: Warn the user if the selected ECC strength is too weak
        mtd: nand: omap: Documentation: How to select correct ECC scheme for your device ?
        mtd: nand: omap: add support for BCH16_ECC - NAND driver updates
        mtd: nand: omap: add support for BCH16_ECC - ELM driver updates
        mtd: nand: omap: add support for BCH16_ECC - GPMC driver updates
        ...
      e413a19a
    • L
      Merge tag 'md/3.16' of git://neil.brown.name/md · 8d0304e6
      Linus Torvalds 提交于
      Pull md updates from Neil Brown:
       "Assorted md fixes for 3.16
      
        Mostly performance improvements with a few corner-case bug fixes"
      
      * tag 'md/3.16' of git://neil.brown.name/md:
        raid5: speedup sync_request processing
        md/raid5: deadlock between retry_aligned_read with barrier io
        raid5: add an option to avoid copy data from bio to stripe cache
        md/bitmap: remove confusing code from filemap_get_page.
        raid5: avoid release list until last reference of the stripe
        md: md_clear_badblocks should return an error code on failure.
        md/raid56: Don't perform reads to support writes until stripe is ready.
        md: refuse to change shape of array if it is active but read-only
      8d0304e6
    • J
      reiserfs: Fix compilation breakage with CONFIG_REISERFS_CHECK · 19ef1229
      Jan Kara 提交于
      There was a bug in debug printout when CONFIG_REISERFS_CHECK was
      enabled so one of the assertions in do_balan.c didn't compile. Fix it.
      
      Fixes: 0080e9f9Signed-off-by: NJan Kara <jack@suse.cz>
      19ef1229
    • B
      Merge MTD pullreq from 3.15-rc5 · f1900c79
      Brian Norris 提交于
      f1900c79
    • L
      Merge git://www.linux-watchdog.org/linux-watchdog · dfb94547
      Linus Torvalds 提交于
      Pull watchdog updates from Wim Van Sebroeck:
       "This contains:
         - addition of the Intel MID watchdog
         - removal of W83697HF and W83697UG drivers (code was merged into
           w83627hf_wdt driver)
         - addition of Armada 375/380 SoC support
         - conversion of imx2_wdt to regmap API and to watchdog core API
         - lots of other small improvements and fixes"
      
      [ Wim was also tagged by gmail as a spammer, but not delayed by days
        unlike Ben ]
      
      * git://www.linux-watchdog.org/linux-watchdog: (25 commits)
        x86: intel-mid: add watchdog platform code for Merrifield
        watchdog: add Intel MID watchdog driver support
        watchdog: sp805: Set watchdog_device->timeout from ->set_timeout()
        booke/watchdog: refine and clean up the codes
        watchdog: iop_wdt only builds for mach-iop13xx
        watchdog: Remove drivers for W83697HF and W83697UG
        watchdog: w83627hf_wdt: Add early_disable module parameter
        ARM: mvebu: Add A375/A380 watchdog binding documentation
        watchdog: orion: Add Armada 375/380 SoC support
        watchdog: orion: Introduce per-SoC enabled() function
        watchdog: orion: Introduce per-SoC stop() function
        watchdog: orion: Remove unneeded atomic access
        watchdog: orion: Introduce a SoC-specific RSTOUT mapping
        watchdog: orion: Move the register ioremap'ing to its own function
        watchdog: xilinx: Make of_device_id array const
        watchdog: imx2_wdt: convert to watchdog core api
        watchdog: imx2_wdt: convert to use regmap API.
        watchdog: imx2_wdt: Sort the header files alphabetically
        watchdog: ath79_wdt: switch to clk_prepare/clk_disable
        watchdog: ath79_wdt: avoid spurious restarts on AR934x
        ...
      dfb94547
    • L
      Merge branch 'next' of git://git.kernel.org/pub/scm/linux/kernel/git/benh/powerpc · c5aec4c7
      Linus Torvalds 提交于
      Pull powerpc updates from Ben Herrenschmidt:
       "Here is the bulk of the powerpc changes for this merge window.  It got
        a bit delayed in part because I wasn't paying attention, and in part
        because I discovered I had a core PCI change without a PCI maintainer
        ack in it.  Bjorn eventually agreed it was ok to merge it though we'll
        probably improve it later and I didn't want to rebase to add his ack.
      
        There is going to be a bit more next week, essentially fixes that I
        still want to sort through and test.
      
        The biggest item this time is the support to build the ppc64 LE kernel
        with our new v2 ABI.  We previously supported v2 userspace but the
        kernel itself was a tougher nut to crack.  This is now sorted mostly
        thanks to Anton and Rusty.
      
        We also have a fairly big series from Cedric that add support for
        64-bit LE zImage boot wrapper.  This was made harder by the fact that
        traditionally our zImage wrapper was always 32-bit, but our new LE
        toolchains don't really support 32-bit anymore (it's somewhat there
        but not really "supported") so we didn't want to rely on it.  This
        meant more churn that just endian fixes.
      
        This brings some more LE bits as well, such as the ability to run in
        LE mode without a hypervisor (ie. under OPAL firmware) by doing the
        right OPAL call to reinitialize the CPU to take HV interrupts in the
        right mode and the usual pile of endian fixes.
      
        There's another series from Gavin adding EEH improvements (one day we
        *will* have a release with less than 20 EEH patches, I promise!).
      
        Another highlight is the support for the "Split core" functionality on
        P8 by Michael.  This allows a P8 core to be split into "sub cores" of
        4 threads which allows the subcores to run different guests under KVM
        (the HW still doesn't support a partition per thread).
      
        And then the usual misc bits and fixes ..."
      
      [ Further delayed by gmail deciding that BenH is a dirty spammer.
        Google knows.  ]
      
      * 'next' of git://git.kernel.org/pub/scm/linux/kernel/git/benh/powerpc: (155 commits)
        powerpc/powernv: Add missing include to LPC code
        selftests/powerpc: Test the THP bug we fixed in the previous commit
        powerpc/mm: Check paca psize is up to date for huge mappings
        powerpc/powernv: Pass buffer size to OPAL validate flash call
        powerpc/pseries: hcall functions are exported to modules, need _GLOBAL_TOC()
        powerpc: Exported functions __clear_user and copy_page use r2 so need _GLOBAL_TOC()
        powerpc/powernv: Set memory_block_size_bytes to 256MB
        powerpc: Allow ppc_md platform hook to override memory_block_size_bytes
        powerpc/powernv: Fix endian issues in memory error handling code
        powerpc/eeh: Skip eeh sysfs when eeh is disabled
        powerpc: 64bit sendfile is capped at 2GB
        powerpc/powernv: Provide debugfs access to the LPC bus via OPAL
        powerpc/serial: Use saner flags when creating legacy ports
        powerpc: Add cpu family documentation
        powerpc/xmon: Fix up xmon format strings
        powerpc/powernv: Add calls to support little endian host
        powerpc: Document sysfs DSCR interface
        powerpc: Fix regression of per-CPU DSCR setting
        powerpc: Split __SYSFS_SPRSETUP macro
        arch: powerpc/fadump: Cleaning up inconsistent NULL checks
        ...
      c5aec4c7
    • L
      Merge branch 'for_linus' of git://cavan.codon.org.uk/platform-drivers-x86 · 2937f5ef
      Linus Torvalds 提交于
      Pull x86 platform driver updates from Matthew Garrett:
       "Very little of excitement here - the most significant is a new driver
        for detecting device freefall on Dells, other than that it's pretty
        much entirely minor fixes for specific machines"
      
      * 'for_linus' of git://cavan.codon.org.uk/platform-drivers-x86:
        hp-wmi: Enable hotkeys on some systems
        thinkpad_acpi: Add mappings for F9 - F12 hotkeys on X240 / T440 / T540
        platform: x86: dell-smo8800: Dell Latitude freefall driver (ACPI SMO8800/SMO8810)
        ideapad_laptop: Introduce the use of the managed version of kzalloc
        platform/x86: Fix run-time dependencies of OLPC drivers
        platform: x86: asus-wmi.c: Cleaning up uninitialized variables
        ix86/mid/thermal: Introduce the use of the managed version of kzalloc
        platform x86 Kconfig: Refer to the laptop list in the Compal driver help
        Documentation: Add list of laptop models supported by the Compal driver
        ideapad-laptop: Blacklist rfkill control on the Lenovo Yoga 2 11
        asus-wmi: Set WAPF to 4 for Asus X550CA
        alienware-wmi: For WMAX HDMI method, introduce a way to query HDMI cable status
        alienware-wmi: Update WMAX brightness method limit to 15
        pvpanic: Set high notifier priority
        platform/x86: samsung-laptop: Add support for Samsung's NP7[34]0U3E models.
        toshiba_acpi: Add alternative keymap support for Satellite M840
        platform-drivers-x86: intel_pmic_gpio: Fix off-by-one valid offset range check
      2937f5ef
    • K
      hp-wmi: Enable hotkeys on some systems · f82bdd0d
      Kyle Evans 提交于
      This is a third attempt to enable these buttons. The new variable being
      commit 997daa1b (i.e. hp-wmi: detect
      "2009 BIOS or later"). Older systems that do not have the 2009 BIOS query
      method respond with a dummy value, in this case 4. Using that, we can
      target a fairly narrow group of systems. i.e. old enough to not have
      HPWMI_FEATURE_QUERY 0xd, but new enough to have HPWMI_BIOS_QUERY 0x9.
      This group may be further limited if some systems respond with something
      other than 4 to non-existant feature queries.
      Signed-off-by: NKyle Evans <kvans32@gmail.com>
      Signed-off-by: NMatthew Garrett <matthew.garrett@nebula.com>
      f82bdd0d
    • H
      thinkpad_acpi: Add mappings for F9 - F12 hotkeys on X240 / T440 / T540 · 8b9dd4fa
      Hans de Goede 提交于
      The T440s user guide says that when Fn-lock is not active, the *40s' F9 - F12
      keys should be mapped to: control-panel, search, show-all-windows and Computer.
      
      These keys generate the sofar unused 28 - 31 hotkey scancodes.
      
      For the first 2 this nicely matches the icons on the keys, for the latter 2
      the icons are somewhat creative, which is why I ended up looking them up in
      the user manual.
      Signed-off-by: NHans de Goede <hdegoede@redhat.com>
      Signed-off-by: NMatthew Garrett <matthew.garrett@nebula.com>
      8b9dd4fa
    • P
      platform: x86: dell-smo8800: Dell Latitude freefall driver (ACPI SMO8800/SMO8810) · 4738d8aa
      Pali Rohár 提交于
      This acpi driver provide supports for freefall sensors SMO8800/SMO8810 which
      can be found on Dell Latitude laptops. Driver register /dev/freefall misc
      device which has same interface as driver hp_accel freefall driver. So any
      existing applications for HP freefall sensor /dev/freefall will work for with
      this new driver for Dell Latitude laptops too.
      Signed-off-by: NPali Rohár <pali.rohar@gmail.com>
      Cc: Sonal Santan <sonal.santan@gmail.com>
      Tested-By: NValdis Kletnieks <valdis.kletnieks@vt.edu>
      Acked-By: NValdis Kletnieks <valdis.kletnieks@vt.edu>
      Signed-off-by: NMatthew Garrett <matthew.garrett@nebula.com>
      4738d8aa
    • H
      ideapad_laptop: Introduce the use of the managed version of kzalloc · b3facd7b
      Himangi Saraogi 提交于
      This patch moves data allocated using kzalloc to managed data allocated
      using devm_kzalloc and cleans now unnecessary kfrees in probe and remove
      functions. The label sysfs_failed is removed as it is no longer
      required.  Also, linux/device.h is added to make sure the devm_*()
      routine declarations are unambiguously available.
      
      The following Coccinelle semantic patch was used for making the change:
      
      @platform@
      identifier p, probefn, removefn;
      @@
      struct platform_driver p = {
        .probe = probefn,
        .remove = removefn,
      };
      
      @prb@
      identifier platform.probefn, pdev;
      expression e, e1, e2;
      @@
      probefn(struct platform_device *pdev, ...) {
        <+...
      - e = kzalloc(e1, e2)
      + e = devm_kzalloc(&pdev->dev, e1, e2)
        ...
      ?-kfree(e);
        ...+>
      }
      
      @rem depends on prb@
      identifier platform.removefn;
      expression e;
      @@
      removefn(...) {
        <...
      - kfree(e);
        ...>
      }
      Signed-off-by: NHimangi Saraogi <himangi774@gmail.com>
      Acked-by: NJulia Lawall <julia.lawall@lip6.fr>
      Signed-off-by: NMatthew Garrett <matthew.garrett@nebula.com>
      b3facd7b
    • J
      platform/x86: Fix run-time dependencies of OLPC drivers · b02fdfcc
      Jean Delvare 提交于
      Let the xo15-ebook driver depend on OLPC as all other OLPC drivers
      already do. Add COMPILE_TEST as an alternative for both xo1-rfkill
      and xo15-ebook, to increase the build testing coverage.
      Signed-off-by: NJean Delvare <jdelvare@suse.de>
      Cc: Matthew Garrett <matthew.garrett@nebula.com>
      Signed-off-by: NMatthew Garrett <matthew.garrett@nebula.com>
      b02fdfcc
    • R
      platform: x86: asus-wmi.c: Cleaning up uninitialized variables · 8ad3be1e
      Rickard Strandqvist 提交于
      There is a risk that the variable will be used without being initialized.
      
      This was largely found by using a static code analysis program called cppcheck.
      Signed-off-by: NRickard Strandqvist <rickard_strandqvist@spectrumdigital.se>
      Signed-off-by: NMatthew Garrett <matthew.garrett@nebula.com>
      8ad3be1e
    • H
      ix86/mid/thermal: Introduce the use of the managed version of kzalloc · 14627e36
      Himangi Saraogi 提交于
      This patch moves data allocated using kzalloc to managed data allocated
      using devm_kzalloc and cleans now unnecessary kfrees in probe and remove
      functions.
      
      The following Coccinelle semantic patch was used for making the change:
      
      @platform@
      identifier p, probefn, removefn;
      @@
      struct platform_driver p = {
        .probe = probefn,
        .remove = removefn,
      };
      
      @prb@
      identifier platform.probefn, pdev;
      expression e, e1, e2;
      @@
      probefn(struct platform_device *pdev, ...) {
        <+...
      - e = kzalloc(e1, e2)
      + e = devm_kzalloc(&pdev->dev, e1, e2)
        ...
      ?-kfree(e);
        ...+>
      }
      
      @rem depends on prb@
      identifier platform.removefn;
      expression e;
      @@
      removefn(...) {
        <...
      - kfree(e);
        ...>
      }
      Signed-off-by: NHimangi Saraogi <himangi774@gmail.com>
      Signed-off-by: NMatthew Garrett <matthew.garrett@nebula.com>
      14627e36
    • I
    • I
    • H
      ideapad-laptop: Blacklist rfkill control on the Lenovo Yoga 2 11 · 85093f79
      Hans de Goede 提交于
      The Lenovo Yoga 2 11 always reports everything as blocked, causing userspace
      to not even try to use the wlan / bluetooth even though they work fine.
      
      Note this patch also removes the "else priv->rfk[i] = NULL;" bit of the
      rfkill initialization, it is not necessary as the priv struct is allocated
      with kzalloc.
      Reported-and-tested-by: NVincent Gerris <vgerris@gmail.com>
      Signed-off-by: NHans de Goede <hdegoede@redhat.com>
      Signed-off-by: NMatthew Garrett <matthew.garrett@nebula.com>
      85093f79
    • A
      asus-wmi: Set WAPF to 4 for Asus X550CA · c08db55f
      Andreas Utterberg 提交于
      The 'asus-nb-wmi' WAPF parameter must be set to 4, so the internal Wireless LAN device is operational.
      Signed-off-by: NAndreas Utterberg <andreas.utterberg@thundera.se>
      Signed-off-by: NMatthew Garrett <matthew.garrett@nebula.com>
      c08db55f
    • M
      alienware-wmi: For WMAX HDMI method, introduce a way to query HDMI cable status · bc2ef884
      Mario Limonciello 提交于
      Since there are now multiple HDMI attributes associated with the WMAX method,
      create a sysfs group for them instead.
      Signed-off-by: NMario Limonciello <mario_limonciello@dell.com>
      Signed-off-by: NMatthew Garrett <matthew.garrett@nebula.com>
      bc2ef884
    • L
      Merge branch 'akpm' (patches from Andrew Morton) · 9ee4d7a6
      Linus Torvalds 提交于
      Merge leftovers from Andrew Morton:
       "A few leftovers: ocfs2, gcov, RTC"
      
      * emailed patches from Andrew Morton <akpm@linux-foundation.org>:
        rtc: s5m: consolidate two device type switch statements
        rtc: s5m: add support for S2MPS14 RTC
        rtc: s5m: support different register layout
        rtc: s5m: use shorter time of register update
        rtc: s5m: remove undocumented time init on first boot
        mfd/rtc: sec/s5m: rename SEC* symbols to S5M
        gcov: add support for GCC 4.9
        ocfs2/o2net: incorrect to terminate accepting connections loop upon rejecting an invalid one
      9ee4d7a6
    • K
      rtc: s5m: consolidate two device type switch statements · a0347f20
      Krzysztof Kozlowski 提交于
      In probe the configuration of driver for different chipsets was done in
      two switch (pdata->device_type) statements.  Consolidate them into one
      switch statement to increase code readability.
      
      Additionally check the return value of regmap_irq_get_virq and exit
      probe on error.
      Signed-off-by: NKrzysztof Kozlowski <k.kozlowski@samsung.com>
      Cc: Kyungmin Park <kyungmin.park@samsung.com>
      Cc: Lee Jones <lee.jones@linaro.org>
      Cc: Alessandro Zummo <a.zummo@towertech.it>
      Cc: Sangbeom Kim <sbkim73@samsung.com>
      Cc: Samuel Ortiz <sameo@linux.intel.com>
      Cc: Marek Szyprowski <m.szyprowski@samsung.com>
      Cc: Bartlomiej Zolnierkiewicz <b.zolnierkie@samsung.com>
      Signed-off-by: NAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      a0347f20
    • K
      rtc: s5m: add support for S2MPS14 RTC · 0c5deb1e
      Krzysztof Kozlowski 提交于
      Add support for S2MPS14 to the rtc-s5m driver.  Differences in S2MPS14
      (in comparison to S5M8767):
      
       - Layout of registers
       - Lack of century support for time and alarms (7 registers used for
         storing time/alarm)
       - Two buffer control registers: WUDR and RUDR
       - No register for enabling writing time
       - RTC interrupts are reported in main PMIC I2C device
      Signed-off-by: NKrzysztof Kozlowski <k.kozlowski@samsung.com>
      Cc: Kyungmin Park <kyungmin.park@samsung.com>
      Cc: Lee Jones <lee.jones@linaro.org>
      Cc: Alessandro Zummo <a.zummo@towertech.it>
      Cc: Sangbeom Kim <sbkim73@samsung.com>
      Cc: Samuel Ortiz <sameo@linux.intel.com>
      Cc: Marek Szyprowski <m.szyprowski@samsung.com>
      Cc: Bartlomiej Zolnierkiewicz <b.zolnierkie@samsung.com>
      Signed-off-by: NAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      0c5deb1e
    • K
      rtc: s5m: support different register layout · f8b23bbd
      Krzysztof Kozlowski 提交于
      Prepare for adding support for S2MPS14 RTC device to the rtc-s5m driver:
      
      1. Add a map of registers used by the driver which differ between
         the chipsets (S5M876X and S2MPS14).
      
      2. Move code of checking for alarm pending to separate function.
      Signed-off-by: NKrzysztof Kozlowski <k.kozlowski@samsung.com>
      Cc: Kyungmin Park <kyungmin.park@samsung.com>
      Cc: Lee Jones <lee.jones@linaro.org>
      Cc: Alessandro Zummo <a.zummo@towertech.it>
      Cc: Sangbeom Kim <sbkim73@samsung.com>
      Cc: Samuel Ortiz <sameo@linux.intel.com>
      Cc: Marek Szyprowski <m.szyprowski@samsung.com>
      Cc: Bartlomiej Zolnierkiewicz <b.zolnierkie@samsung.com>
      Signed-off-by: NAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      f8b23bbd
    • K
      rtc: s5m: use shorter time of register update · 0c5f5d9a
      Krzysztof Kozlowski 提交于
      Set the time needed for updating alarm and time registers to 0.45 ms.
      The default is 7.32 ms which is too long and leads to warnings when
      setting alarm or time:
      
      	s5m-rtc: waiting for UDR update, reached max number of retries
      Signed-off-by: NKrzysztof Kozlowski <k.kozlowski@samsung.com>
      Cc: Kyungmin Park <kyungmin.park@samsung.com>
      Cc: Lee Jones <lee.jones@linaro.org>
      Cc: Alessandro Zummo <a.zummo@towertech.it>
      Cc: Sangbeom Kim <sbkim73@samsung.com>
      Cc: Samuel Ortiz <sameo@linux.intel.com>
      Cc: Marek Szyprowski <m.szyprowski@samsung.com>
      Cc: Bartlomiej Zolnierkiewicz <b.zolnierkie@samsung.com>
      Signed-off-by: NAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      0c5f5d9a
    • K
      rtc: s5m: remove undocumented time init on first boot · fe787a5b
      Krzysztof Kozlowski 提交于
      Remove the code for initializing time if this is first boot.
      
      The code for detecting first boot uses undocumented field RTC_TCON in
      RTC_UDR_CON register.  According to S5M8767's datasheet this field is
      reserved.  On S2MPS14 it is not documented at all.
      
      On device first boot the registers will be initialized with reset value
      (2000-01-01 00:00:00).
      
      The code might work on S5M8763 but still this does not look like a task
      for RTC driver.
      Signed-off-by: NKrzysztof Kozlowski <k.kozlowski@samsung.com>
      Cc: Kyungmin Park <kyungmin.park@samsung.com>
      Cc: Lee Jones <lee.jones@linaro.org>
      Cc: Alessandro Zummo <a.zummo@towertech.it>
      Cc: Sangbeom Kim <sbkim73@samsung.com>
      Cc: Samuel Ortiz <sameo@linux.intel.com>
      Cc: Marek Szyprowski <m.szyprowski@samsung.com>
      Cc: Bartlomiej Zolnierkiewicz <b.zolnierkie@samsung.com>
      Signed-off-by: NAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      fe787a5b
    • K
      mfd/rtc: sec/s5m: rename SEC* symbols to S5M · 602cb5bb
      Krzysztof Kozlowski 提交于
      Prepare for adding support for S2MPS14 RTC device to the rtc-s5m driver:
      
      1. Rename SEC* symbols to S5M.
      2. Add S5M prefix to some of defines which are different between S5M876X
         and S2MPS14.
      
      This is only a rename-like patch, new code is not added.
      Signed-off-by: NKrzysztof Kozlowski <k.kozlowski@samsung.com>
      Acked-by: NLee Jones <lee.jones@linaro.org>
      Cc: Kyungmin Park <kyungmin.park@samsung.com>
      Cc: Alessandro Zummo <a.zummo@towertech.it>
      Cc: Sangbeom Kim <sbkim73@samsung.com>
      Cc: Samuel Ortiz <sameo@linux.intel.com>
      Cc: Marek Szyprowski <m.szyprowski@samsung.com>
      Cc: Bartlomiej Zolnierkiewicz <b.zolnierkie@samsung.com>
      Signed-off-by: NAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      602cb5bb
    • Y
      gcov: add support for GCC 4.9 · a992bf83
      Yuan Pengfei 提交于
      This patch handles the gcov-related changes in GCC 4.9:
      
        A new counter (time profile) is added. The total number is 9 now.
      
        A new profile merge function __gcov_merge_time_profile is added.
      
      See gcc/gcov-io.h and libgcc/libgcov-merge.c
      
      For the first change, the layout of struct gcov_info is affected.
      
      For the second one, a dummy function is added to kernel/gcov/base.c
      similarly.
      Signed-off-by: NYuan Pengfei <coolypf@qq.com>
      Acked-by: NPeter Oberparleiter <oberpar@linux.vnet.ibm.com>
      Signed-off-by: NAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      a992bf83
    • T
      ocfs2/o2net: incorrect to terminate accepting connections loop upon rejecting an invalid one · 79deb3c1
      Tariq Saeed 提交于
      When o2net-accept-one() rejects an illegal connection, it terminates the
      loop picking up the remaining queued connections.  This fix will
      continue accepting connections till the queue is emtpy.
      
      Addresses Orabug 17489469.
      Signed-off-by: NTariq Saseed <tariq.x.saeed@oracle.com>
      Signed-off-by: NSrinivas Eeda <srinivas.eeda@oracle.com>
      Reviewed-by: NMark Fasheh <mfasheh@suse.de>
      Cc: Joel Becker <jlbec@evilplan.org>
      Signed-off-by: NAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      79deb3c1
    • S
      decode_stacktrace: make stack dump output useful again · dbd1abb2
      Sasha Levin 提交于
      Right now when people try to report issues in the kernel they send stack
      dumps to eachother, which looks something like this:
      
        [    6.906437]  [<ffffffff811f0e90>] ? backtrace_test_irq_callback+0x20/0x20
        [    6.907121]  [<ffffffff84388ce8>] dump_stack+0x52/0x7f
        [    6.907640]  [<ffffffff811f0ec8>] backtrace_regression_test+0x38/0x110
        [    6.908281]  [<ffffffff813596a0>] ? proc_create_data+0xa0/0xd0
        [    6.908870]  [<ffffffff870a8040>] ? proc_modules_init+0x22/0x22
        [    6.909480]  [<ffffffff810020c2>] do_one_initcall+0xc2/0x1e0
        [...]
      
      However, most of the text you get is pure garbage.
      
      The only useful thing above is the function name.  Due to the amount of
      different kernel code versions and various configurations being used,
      the kernel address and the offset into the function are not really
      helpful in determining where the problem actually occured.
      
      Too often the result of someone looking at a stack dump is asking the
      person who sent it for a translation for one or more 'addr2line'
      translations.  Which slows down the entire process of debugging the
      issue (and really annoying).
      
      The decode_stacktrace script is an attempt to make the output more
      useful and easy to work with by translating all kernel addresses in the
      stack dump into line numbers.  Which means that the stack dump would
      look like this:
      
        [  635.148361]  dump_stack (lib/dump_stack.c:52)
        [  635.149127]  warn_slowpath_common (kernel/panic.c:418)
        [  635.150214]  warn_slowpath_null (kernel/panic.c:453)
        [  635.151031]  _oalloc_pages_slowpath+0x6a/0x7d0
        [  635.152171]  ? zone_watermark_ok (mm/page_alloc.c:1728)
        [  635.152988]  ? get_page_from_freelist (mm/page_alloc.c:1939)
        [  635.154766]  __alloc_pages_nodemask (mm/page_alloc.c:2766)
      
      It's pretty obvious why this is better than the previous stack dump
      before.
      
      Usage is pretty simple:
      
              ./decode_stacktrace.sh [vmlinux] [base path]
      
      Where vmlinux is the vmlinux to extract line numbers from and base path
      is the path that points to the root of the build tree, for example:
      
              ./decode_stacktrace.sh vmlinux /home/sasha/linux/ < input.log > output.log
      
      The stack trace should be piped through it (I, for example, just pipe
      the output of the serial console of my KVM test box through it).
      Signed-off-by: NSasha Levin <sasha.levin@oracle.com>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      dbd1abb2
    • L
      Merge tag 'nfs-for-3.16-1' of git://git.linux-nfs.org/projects/trondmy/linux-nfs · d1e1cda8
      Linus Torvalds 提交于
      Pull NFS client updates from Trond Myklebust:
       "Highlights include:
      
         - massive cleanup of the NFS read/write code by Anna and Dros
         - support multiple NFS read/write requests per page in order to deal
           with non-page aligned pNFS striping.  Also cleans up the r/wsize <
           page size code nicely.
         - stable fix for ensuring inode is declared uptodate only after all
           the attributes have been checked.
         - stable fix for a kernel Oops when remounting
         - NFS over RDMA client fixes
         - move the pNFS files layout driver into its own subdirectory"
      
      * tag 'nfs-for-3.16-1' of git://git.linux-nfs.org/projects/trondmy/linux-nfs: (79 commits)
        NFS: populate ->net in mount data when remounting
        pnfs: fix lockup caused by pnfs_generic_pg_test
        NFSv4.1: Fix typo in dprintk
        NFSv4.1: Comment is now wrong and redundant to code
        NFS: Use raw_write_seqcount_begin/end int nfs4_reclaim_open_state
        xprtrdma: Disconnect on registration failure
        xprtrdma: Remove BUG_ON() call sites
        xprtrdma: Avoid deadlock when credit window is reset
        SUNRPC: Move congestion window constants to header file
        xprtrdma: Reset connection timeout after successful reconnect
        xprtrdma: Use macros for reconnection timeout constants
        xprtrdma: Allocate missing pagelist
        xprtrdma: Remove Tavor MTU setting
        xprtrdma: Ensure ia->ri_id->qp is not NULL when reconnecting
        xprtrdma: Reduce the number of hardway buffer allocations
        xprtrdma: Limit work done by completion handler
        xprtrmda: Reduce calls to ib_poll_cq() in completion handlers
        xprtrmda: Reduce lock contention in completion handlers
        xprtrdma: Split the completion queue
        xprtrdma: Make rpcrdma_ep_destroy() return void
        ...
      d1e1cda8
    • L
      Merge tag 'mmc-updates-for-3.16-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/cjb/mmc · 07888238
      Linus Torvalds 提交于
      Pull MMC update from Chris Ball:
       "MMC highlights for 3.16:
      
        Core:
         - support HS400 mode of eMMC 5.0, via DT bindings mmc-hs400-1_{2,8}v
         - if card init at 3.3v doesn't work, try 1.8v and 1.2v too
      
        Drivers:
         - moxart: New driver for MOXA ART SoCs
         - rtsx_usb_sdmmc: New driver for Realtek USB card readers
         - sdhci: Large rework around IRQ/regulator handling, remove card_tasklet
         - sdhci-pci-o2micro: Add SeaBird SeaEagle SD3 support
         - sunxi: New driver for Allwinner sunxi SoCs
         - usdhi6rol0: New driver for Renesas SD/SDIO controller"
      
      * tag 'mmc-updates-for-3.16-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/cjb/mmc: (95 commits)
        mmc: sdhci-s3c: use mmc_of_parse and remove the card_tasklet
        mmc: add a driver for the Renesas usdhi6rol0 SD/SDIO host controller
        mmc: sdhci-of-esdhc: Fixup compile error
        mmc: tegra: fix reporting of base clock frequency
        mmc: tegra: disable UHS modes
        mmc: sdhci-dove: use mmc_of_parse() and remove card_tasklet CD handler
        MAINTAINERS: mmc: Add path to git tree
        mmc: dove: fix missing MACH_DOVE dependency
        mmc: sdhci: SD tuning is broken for some controllers
        mmc: sdhci-esdhc-imx: fix mmc ddr mode regression issue
        mmc: sdhci-pci-o2micro: Add SeaBird SeaEagle SD3 support
        mmc: omap_hsmmc: split omap-dma header file
        mmc: omap_hsmmc: fix cmd23 multiblock read/write
        mmc: omap_hsmmc: use devm_ioremap_resource
        mmc: omap_hsmmc: use devm_request_threaded_irq
        mmc: omap_hsmmc: use devm_request_irq
        mmc: omap_hsmmc: use devm_clk_get
        mmc: sunxi: Add driver for SD/MMC hosts found on Allwinner sunxi SoCs
        mmc: wmt-sdmmc: Use GFP_KERNEL instead of hard-coded value
        mmc: omap: Use DIV_ROUND_UP instead of open coded
        ...
      07888238
    • A
      fs,userns: Change inode_capable to capable_wrt_inode_uidgid · 23adbe12
      Andy Lutomirski 提交于
      The kernel has no concept of capabilities with respect to inodes; inodes
      exist independently of namespaces.  For example, inode_capable(inode,
      CAP_LINUX_IMMUTABLE) would be nonsense.
      
      This patch changes inode_capable to check for uid and gid mappings and
      renames it to capable_wrt_inode_uidgid, which should make it more
      obvious what it does.
      
      Fixes CVE-2014-4014.
      
      Cc: Theodore Ts'o <tytso@mit.edu>
      Cc: Serge Hallyn <serge.hallyn@ubuntu.com>
      Cc: "Eric W. Biederman" <ebiederm@xmission.com>
      Cc: Dave Chinner <david@fromorbit.com>
      Cc: stable@vger.kernel.org
      Signed-off-by: NAndy Lutomirski <luto@amacapital.net>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      23adbe12
    • C
      Btrfs: convert smp_mb__{before,after}_clear_bit · c7548af6
      Chris Mason 提交于
      The new call is smp_mb__{before,after}_atomic.  The __ gives us extra
      protection from the atomic rays.
      Signed-off-by: NChris Mason <clm@fb.com>
      c7548af6