1. 11 7月, 2013 33 次提交
    • L
      Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/ide · 4ece92df
      Linus Torvalds 提交于
      Pull IDE updates from David Miller:
       "Just a few small things:
      
         1) module_platform_driver_probe() conversions from Jingoo Han.
      
         2) module_pci_driver() conversion from Libo Chen.
      
         3) PIO size calculation fix from Steven J Hill"
      
      * git://git.kernel.org/pub/scm/linux/kernel/git/davem/ide:
        ide: Fix IDE PIO size calculation
        drivers/ide/delkin_cb: Convert to module_pci_driver
        ide: gayle: use module_platform_driver_probe()
        ide: tx4939ide: use module_platform_driver_probe()
        ide: tx4938ide: use module_platform_driver_probe()
      4ece92df
    • L
      Merge branch 'core-printk-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 75fcf64d
      Linus Torvalds 提交于
      Pull printk locking fix from Thomas Gleixner:
       "A single lock ordering fix in the printk code"
      
      * 'core-printk-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        printk: Fix rq->lock vs logbuf_lock unlock lock inversion
      75fcf64d
    • L
      Merge branch 'akpm' (patches from Andrew Morton) · db6e3304
      Linus Torvalds 提交于
      Merge more patches from Andrew Morton:
       "The rest of MM"
      
      * emailed patches from Andrew Morton <akpm@linux-foundation.org>:
        mm: remove free_area_cache
        zswap: add documentation
        zswap: add to mm/
        zbud: add to mm/
      db6e3304
    • M
      mm: remove free_area_cache · 98d1e64f
      Michel Lespinasse 提交于
      Since all architectures have been converted to use vm_unmapped_area(),
      there is no remaining use for the free_area_cache.
      Signed-off-by: NMichel Lespinasse <walken@google.com>
      Acked-by: NRik van Riel <riel@redhat.com>
      Cc: "James E.J. Bottomley" <jejb@parisc-linux.org>
      Cc: "Luck, Tony" <tony.luck@intel.com>
      Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
      Cc: David Howells <dhowells@redhat.com>
      Cc: Helge Deller <deller@gmx.de>
      Cc: Ivan Kokshaysky <ink@jurassic.park.msu.ru>
      Cc: Matt Turner <mattst88@gmail.com>
      Cc: Paul Mackerras <paulus@samba.org>
      Cc: Richard Henderson <rth@twiddle.net>
      Signed-off-by: NAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      98d1e64f
    • S
      zswap: add documentation · 61b0d760
      Seth Jennings 提交于
      Add the documentation file for the zswap functionality
      Signed-off-by: NSeth Jennings <sjenning@linux.vnet.ibm.com>
      Acked-by: NRik van Riel <riel@redhat.com>
      Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
      Cc: Nitin Gupta <ngupta@vflare.org>
      Cc: Minchan Kim <minchan@kernel.org>
      Cc: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>
      Cc: Dan Magenheimer <dan.magenheimer@oracle.com>
      Cc: Robert Jennings <rcj@linux.vnet.ibm.com>
      Cc: Jenifer Hopper <jhopper@us.ibm.com>
      Cc: Mel Gorman <mgorman@suse.de>
      Cc: Johannes Weiner <jweiner@redhat.com>
      Cc: Larry Woodman <lwoodman@redhat.com>
      Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
      Cc: Dave Hansen <dave@sr71.net>
      Cc: Joe Perches <joe@perches.com>
      Cc: Joonsoo Kim <iamjoonsoo.kim@lge.com>
      Cc: Cody P Schafer <cody@linux.vnet.ibm.com>
      Cc: Hugh Dickens <hughd@google.com>
      Cc: Paul Mackerras <paulus@samba.org>
      Signed-off-by: NAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      61b0d760
    • S
      zswap: add to mm/ · 2b281117
      Seth Jennings 提交于
      zswap is a thin backend for frontswap that takes pages that are in the
      process of being swapped out and attempts to compress them and store
      them in a RAM-based memory pool.  This can result in a significant I/O
      reduction on the swap device and, in the case where decompressing from
      RAM is faster than reading from the swap device, can also improve
      workload performance.
      
      It also has support for evicting swap pages that are currently
      compressed in zswap to the swap device on an LRU(ish) basis.  This
      functionality makes zswap a true cache in that, once the cache is full,
      the oldest pages can be moved out of zswap to the swap device so newer
      pages can be compressed and stored in zswap.
      
      This patch adds the zswap driver to mm/
      Signed-off-by: NSeth Jennings <sjenning@linux.vnet.ibm.com>
      Acked-by: NRik van Riel <riel@redhat.com>
      Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
      Cc: Nitin Gupta <ngupta@vflare.org>
      Cc: Minchan Kim <minchan@kernel.org>
      Cc: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>
      Cc: Dan Magenheimer <dan.magenheimer@oracle.com>
      Cc: Robert Jennings <rcj@linux.vnet.ibm.com>
      Cc: Jenifer Hopper <jhopper@us.ibm.com>
      Cc: Mel Gorman <mgorman@suse.de>
      Cc: Johannes Weiner <jweiner@redhat.com>
      Cc: Larry Woodman <lwoodman@redhat.com>
      Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
      Cc: Dave Hansen <dave@sr71.net>
      Cc: Joe Perches <joe@perches.com>
      Cc: Joonsoo Kim <iamjoonsoo.kim@lge.com>
      Cc: Cody P Schafer <cody@linux.vnet.ibm.com>
      Cc: Hugh Dickens <hughd@google.com>
      Cc: Paul Mackerras <paulus@samba.org>
      Cc: Fengguang Wu <fengguang.wu@intel.com>
      Signed-off-by: NAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      2b281117
    • S
      zbud: add to mm/ · 4e2e2770
      Seth Jennings 提交于
      zbud is an special purpose allocator for storing compressed pages.  It
      is designed to store up to two compressed pages per physical page.
      While this design limits storage density, it has simple and
      deterministic reclaim properties that make it preferable to a higher
      density approach when reclaim will be used.
      
      zbud works by storing compressed pages, or "zpages", together in pairs
      in a single memory page called a "zbud page".  The first buddy is "left
      justifed" at the beginning of the zbud page, and the last buddy is
      "right justified" at the end of the zbud page.  The benefit is that if
      either buddy is freed, the freed buddy space, coalesced with whatever
      slack space that existed between the buddies, results in the largest
      possible free region within the zbud page.
      
      zbud also provides an attractive lower bound on density.  The ratio of
      zpages to zbud pages can not be less than 1.  This ensures that zbud can
      never "do harm" by using more pages to store zpages than the
      uncompressed zpages would have used on their own.
      
      This implementation is a rewrite of the zbud allocator internally used
      by zcache in the driver/staging tree.  The rewrite was necessary to
      remove some of the zcache specific elements that were ingrained
      throughout and provide a generic allocation interface that can later be
      used by zsmalloc and others.
      
      This patch adds zbud to mm/ for later use by zswap.
      Signed-off-by: NSeth Jennings <sjenning@linux.vnet.ibm.com>
      Acked-by: NRik van Riel <riel@redhat.com>
      Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
      Cc: Nitin Gupta <ngupta@vflare.org>
      Cc: Minchan Kim <minchan@kernel.org>
      Cc: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>
      Cc: Dan Magenheimer <dan.magenheimer@oracle.com>
      Cc: Robert Jennings <rcj@linux.vnet.ibm.com>
      Cc: Jenifer Hopper <jhopper@us.ibm.com>
      Cc: Mel Gorman <mgorman@suse.de>
      Cc: Johannes Weiner <jweiner@redhat.com>
      Cc: Larry Woodman <lwoodman@redhat.com>
      Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
      Cc: Dave Hansen <dave@sr71.net>
      Cc: Joe Perches <joe@perches.com>
      Cc: Joonsoo Kim <iamjoonsoo.kim@lge.com>
      Cc: Cody P Schafer <cody@linux.vnet.ibm.com>
      Cc: Hugh Dickens <hughd@google.com>
      Cc: Paul Mackerras <paulus@samba.org>
      Cc: Bob Liu <bob.liu@oracle.com>
      Signed-off-by: NAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      4e2e2770
    • L
      Merge branch 'misc' of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild · ae924949
      Linus Torvalds 提交于
      Pull coccinelle updates from Michal Marek:
       "The misc branch is reserved for Coccinelle this time:
      
         - 'report' is the default mode
         - MAINTAINERS update for Coccinelle
         - documentation udate
         - use new option format for spatch(1)
         - J=<n> variable to mimic make -j for coccicheck
         - check for missing pci_free_consistent() calls
      
        There are some patches for rpm-pkg and deb-pkg waiting for the
        3.12-rc1 merge window"
      
      * 'misc' of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild:
        Coccinelle: Update information about the minimal version required
        Coccinelle: Update the options used to the new option scheme
        scripts: Coccinelle script for pci_free_consistent()
        Coccinelle: Update the documentation
        Coccinelle: Update section of MAINTAINERS
        coccicheck: span checks across CPUs
        scripts/coccinelle: check for field address argument to kfree
        Coccinelle: Update the Coccinelle section of MAINTAINERS
        Coccinelle: Make 'report' the default mode
      ae924949
    • L
      Merge branch 'kconfig' of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild · b202c0d5
      Linus Torvalds 提交于
      Pull kconfig updates from Michal Marek:
       - dependency solver fix for make defconfig
       - randconfig fixes, one of which had to be reverted again
       - more user-friendly sorting of search results
       - hex and range keywords support longs
       - fix for [mn]conf not to rely on particular behavior of the LINES and
         COLS variables
       - cleanup of magic constants in kconfig/lxdialog
       - [mn]conf formatting fixes
       - fix for scripts/config's help text in out-of-tree usage (under a
         different name)
      
      * 'kconfig' of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild:
        kconfig: allow "hex" and "range" to support longs
        Revert "kconfig: fix randomising choice entries in presence of KCONFIG_ALLCONFIG"
        kconfig: fix randomising choice entries in presence of KCONFIG_ALLCONFIG
        kconfig: loop as long as we changed some symbols in randconfig
        kconfig/[mn]conf: make it explicit in the search box that a regexp is possible
        kconfig: sort found symbols by relevance
        kconfig/conf: print the seed used to initialise the RNG for randconfig
        kconfig/conf: accept a base-16 seed for randconfig
        kconfig/conf: fix randconfig setting multiple symbols in a choice
        scripts/config: replace hard-coded script name by a dynamic value
        mconf/nconf: mark empty menus/menuconfigs different from non-empty ones
        nconf: use function calls instead of ncurses' variables LINES and COLS
        mconf: use function calls instead of ncurses' variables LINES and COLS
        kconfig/lxdialog: handle newline characters in print_autowrap()
        kconfig/lxdialog: Use new mininimum resize definitions in conf_choice()
        kconfig/lxdialog: Add definitions for mininimum (re)size values
        kconfig: Fix defconfig when one choice menu selects options that another choice menu depends on
      b202c0d5
    • L
      Merge branch 'kbuild' of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild · cb63fc26
      Linus Torvalds 提交于
      Pull kbuild updates from Michal Marek:
       - fix for make headers_install argv explosion with too long path
       - scripts/setlocalversion does not call git update-index needlessly
       - fix for the src.rpm produced by make rpm-pkg.  The new make
         image_name can be useful also for other packaging tools.
       - scripts/mod/devicetable-offsets.o is not rebuilt during each make run
       - make modules_install dependency fix
       - scripts/sortextable portability fix
       - fix for kbuild to generate the output directory for all object files
         in subdirs.
       - a couple of minor fixes
      
      * 'kbuild' of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild:
        kbuild: create directory for dir/file.o
        tools/include: use stdint types for user-space byteshift headers
        Makefile: Fix install error with make -j option
        Fix a build warning in scripts/mod/file2alias.c
        improve modalias building
        scripts/mod: Spelling s/DEVICEVTABLE/DEVICETABLE/
        kbuild: fix error when building from src rpm
        scripts/setlocalversion on write-protected source tree
        Makefile.lib: align DTB quiet_cmd
        kbuild: fix make headers_install when path is too long
      cb63fc26
    • L
      Merge branch 'perf-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · a9642fa3
      Linus Torvalds 提交于
      Pull perf fixes from Ingo Molnar:
       "Two small fixlets"
      
      * 'perf-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        perf: Fix interrupt handler timing harness
        perf/x86/amd: Do not print an error when the device is not present
      a9642fa3
    • L
      Merge tag 'modules-next-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux · 81336333
      Linus Torvalds 提交于
      Pull module updates from Rusty Russell:
       "Nothing interesting.  Except the most embarrassing bugfix ever.  But
        let's ignore that"
      
      * tag 'modules-next-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux:
        module: cleanup call chain.
        module: do percpu allocation after uniqueness check.  No, really!
        modules: don't fail to load on unknown parameters.
        ABI: Clarify when /sys/module/MODULENAME is created
        There is no /sys/parameters
        module: don't modify argument of module_kallsyms_lookup_name()
      81336333
    • L
      Merge tag 'virtio-next-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux · 5f129721
      Linus Torvalds 提交于
      Pull virtio updates from Rusty Russell:
       "No real surprises"
      
      * tag 'virtio-next-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux:
        MAINTAINERS: add tools/virtio/ under virtio
        tools/virtio: move module license stub to module.h
        virtio: include asm/barrier explicitly
        virtio: VIRTIO_F_ANY_LAYOUT feature
        lguest: fix example launcher compilation for broken glibc headers.
        virtio-net: fix the race between channels setting and refill
        tools/lguest: real barriers.
        tools/lguest: fix missing rmb().
        virtio_balloon: leak_balloon(): only tell host if we got pages deflated
        virtio-pci: fix leaks of msix_affinity_masks
        Fix comment typo "CONFIG_PAE"
      5f129721
    • L
      Merge tag 'vfio-v3.11' of git://github.com/awilliam/linux-vfio · 15a49b9a
      Linus Torvalds 提交于
      Pull vfio updates from Alex Williamson:
       "Largely hugepage support for vfio/type1 iommu and surrounding cleanups
        and fixes"
      
      * tag 'vfio-v3.11' of git://github.com/awilliam/linux-vfio:
        vfio/type1: Fix leak on error path
        vfio: Limit group opens
        vfio/type1: Fix missed frees and zero sized removes
        vfio: fix documentation
        vfio: Provide module option to disable vfio_iommu_type1 hugepage support
        vfio: hugepage support for vfio_iommu_type1
        vfio: Convert type1 iommu to use rbtree
      15a49b9a
    • L
      Merge tag 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mst/vhost · 8d10aae2
      Linus Torvalds 提交于
      Pull vhost fixes and cleanups from Michael S Tsirkin:
       "This includes some fixes and cleanups for vhost net and scsi drivers"
      
      * tag 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mst/vhost:
        vhost/test: update test after vhost cleanups
        vhost: Make local function static
        vhost: Make vhost a separate module
        vhost-scsi: Rename struct tcm_vhost_cmd *tv_cmd to *cmd
        vhost-scsi: Rename struct tcm_vhost_tpg *tv_tpg to *tpg
        vhost-scsi: Make func indention more consistent
        vhost-scsi: Rename struct vhost_scsi *s to *vs
        vhost-scsi: Remove unnecessary forward struct vhost_scsi declaration
        vhost: Simplify dev->vqs[i] access
        vhost-net: fix use-after-free in vhost_net_flush
      8d10aae2
    • L
      Merge tag 'iommu-updates-v3.11' of git://git.kernel.org/pub/scm/linux/kernel/git/joro/iommu · 66645656
      Linus Torvalds 提交于
      Pull IOMMU updates from Joerg Roedel:
       "A few updates this time, most important and exiciting (to me) is:
      
         - The new ARM SMMU driver.  This is a common IOMMU driver that will
           hopefully be used in a lot of upcoming ARM chips.  So the mess in
           the past where every SOC had its own IOMMU will be over.
      
        Besides that:
      
         - Some important fixes in the IOMMU unmap path.  There are fixes in
           the common code and also in the AMD IOMMU driver.
         - Other random fixes"
      
      * tag 'iommu-updates-v3.11' of git://git.kernel.org/pub/scm/linux/kernel/git/joro/iommu:
        MAINTAINERS: add entry for ARM system MMU driver
        iommu/arm: Add support for ARM Ltd. System MMU architecture
        documentation/iommu: Add description of ARM System MMU binding
        iommu: Use %pa and %zx instead of casting
        iommu/amd: Only unmap large pages from the first pte
        iommu: Fix compiler warning on pr_debug
        iommu/amd: Fix memory leak in free_pagetable
        iommu: Split iommu_unmaps
        iommu/{vt-d,amd}: Remove multifunction assumption around grouping
        iommu/omap: fix checkpatch warnings in omap iommu code
        iommu/omap: fix printk formats for dma_addr_t
        iommu/vt-d: DMAR reporting table needs at least one DRHD
        iommu/vt-d: Downgrade the warning if enabling irq remapping fails
      66645656
    • L
      drm: avoid warning in drm_load_edid_firmware() · 496fd15b
      Linus Torvalds 提交于
      Use "const char *" instead of "char *" in order to avoid this warning:
      
        drivers/gpu/drm/drm_edid_load.c: In function ‘drm_load_edid_firmware’:
        drivers/gpu/drm/drm_edid_load.c:245:25: warning: initialization discards ‘const’ qualifier from pointer target type [enabled by default]
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      496fd15b
    • S
      ide: Fix IDE PIO size calculation · 1581208b
      Steven J. Hill 提交于
      IDE PIO calculates the size wrong when passing the parameter
      "ide-core.nodma=0.0" to the kernel.
      Signed-off-by: NLeonid Yegoshin <Leonid.Yegoshin@imgtec.com>
      Acked-by: NSteven J. Hill <Steven.Hill@imgtec.com>
      Signed-off-by: NSteven J. Hill <sjhill@mips.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      1581208b
    • L
      drivers/ide/delkin_cb: Convert to module_pci_driver · 99bfdd87
      Libo Chen 提交于
      use module_pci_driver instead of init/exit, make code clean.
      Signed-off-by: NLibo Chen <libo.chen@huawei.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      99bfdd87
    • L
      Merge tag 'mmc-updates-for-3.11-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/cjb/mmc · bfffbea1
      Linus Torvalds 提交于
      Pull MMC updates from Chris Ball:
       "MMC highlights for 3.11:
      
        Core:
         - Add support for eMMC 5.1 devices
         - Add MMC_CAP_AGGRESSIVE_PM capability for aggressive power
           management of eMMC/SD between requests, using runtime PM
         - Add an ioctl to perform the eMMC 4.5 Sanitize command.  Sample code
           at:
      
             git://git.kernel.org/pub/scm/linux/kernel/git/cjb/mmc-utils.git
      
        Drivers:
         - dw_mmc: Add support for Rockchip's Cortex-A9 SoCs
         - dw_mmc: Add support for Altera SoCFPGAs
         - sdhci-esdhc-imx: Add support for 8-bit bus width, non-removable
           cards
         - sdhci-bcm-kona: New driver for Broadcom Kona (281xx) SoCs
         - sdhi/tmio: Add DT DMA support"
      
      * tag 'mmc-updates-for-3.11-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/cjb/mmc: (87 commits)
        mmc: bcm281xx SDHCI driver
        mmc: sdhci: add card_event callback to sdhci
        mmc: core: Fixup Oops for SDIO shutdown
        mmc: sdhci-pci: add another device id
        mmc: esdhc: Fix bug when writing to SDHCI_HOST_CONTROL register
        mmc: esdhc: Add support for 8-bit bus width and non-removable card
        mmc: core: production year for eMMC 4.41 and later
        mmc: omap: remove unnecessary #if 0's
        mmc: sdhci: fix ctrl_2 on super-speed selection
        mmc: dw_mmc-pltfm: add Rockchip variant
        mmc: dw_mmc-pltfm: move probe and remove below dt match table
        mmc: dw_mmc-pltfm: remove static from dw_mci_pltfm_remove
        mmc: sdhci-acpi: add support for eMMC hardware reset for HID 80860F14
        mmc: sdhci-pci: add support for eMMC hardware reset for BYT eMMC.
        mmc: dw_mmc: Add support DW SD/MMC driver on SOCFPGA
        mmc: sdhci: fix caps2 for HS200
        sdhci-pxav3: Fix runtime PM initialization
        mmc: core: Add DT-bindings for MMC_CAP2_FULL_PWR_CYCLE
        mmc: core: Invent MMC_CAP2_FULL_PWR_CYCLE
        mmc: core: Enable power_off_notify for eMMC shutdown sequence
        ...
      bfffbea1
    • L
      Merge tag 'for-3.11-rc1' of git://gitorious.org/linux-pwm/linux-pwm · 34ae0a6f
      Linus Torvalds 提交于
      Pull pwm changes from Thierry Reding:
       "A new driver supports driving PWM signals using the TPU unit found on
        various Renesas SoCs.  Furthermore support is added for the NXP
        PCA9685 LED controller.  Another big chunk is the sysfs interface
        which has been in the works for quite some time.
      
        The remaining patches are a random assortment of cleanups and fixes"
      
      * tag 'for-3.11-rc1' of git://gitorious.org/linux-pwm/linux-pwm:
        pwm: pwm-tiehrpwm: Use clk_enable/disable instead clk_prepare/unprepare.
        pwm: pca9685: Fix wrong argument to set MODE1_SLEEP bit
        pwm: renesas-tpu: Add MODULE_ALIAS to make module auto loading work
        pwm: renesas-tpu: fix return value check in tpu_probe()
        pwm: Add Renesas TPU PWM driver
        pwm: Add sysfs interface
        pwm: Fill in missing .owner fields
        pwm: add pca9685 driver
        pwm: atmel-tcb: prepare clk before calling enable
        pwm: devm: alloc correct pointer size
        pwm: mxs: Let device core handle pinctrl
        MAINTAINERS: Update PWM subsystem entry
      34ae0a6f
    • L
      Merge tag 'for-v3.11' of git://git.infradead.org/battery-2.6 · 7d3107d2
      Linus Torvalds 提交于
      Pull battery subsystem update from Anton Vorontsov:
       "Nothing exciting this time, just assorted fixes and cleanups"
      
      * tag 'for-v3.11' of git://git.infradead.org/battery-2.6: (25 commits)
        charger-manager: Fix regulator_get() return check
        charger-manager: Fix a bug when it unregisters notifier block of extcon
        tps65090-charger: Add dt node to power_supply
        sbs-battery: Add dt to power_supply struct
        power_supply: Add of_node_put to fix refcount
        power_supply: Move of_node out of the #ifdef CONFIG_OF
        power/reset: Make the vexpress driver optional on arm and arm64
        charger-manager: Add missing newlines, fix a couple of typos, add pr_fmt
        tps65090-charger: Fix AC detect
        MAINTAINERS: Update email address for Anton Vorontsov
        charger-manager: Ensure event is not used as format string
        power_supply: Replace strict_strtoul() with kstrtoul()
        generic-adc-battery: Fix checking if none of the channels are supported
        power: Use platform_{get,set}_drvdata()
        pm2301_charger: Return error if create_singlethread_workqueue fails
        pm2301_charger: Fix NULL pointer dereference
        lp8727_charger: Support the device tree feature
        twl4030_charger: Remove unnecessary platform_set_drvdata()
        rx51_battery: Remove unnecessary platform_set_drvdata()
        jz4740-battery: Remove unnecessary platform_set_drvdata()
        ...
      7d3107d2
    • L
      Merge tag 'mfd-3.11-1' of git://git.kernel.org/pub/scm/linux/kernel/git/sameo/mfd-next · 3aa78e0c
      Linus Torvalds 提交于
      Pull MFD update from Samuel Ortiz:
       "For the 3.11 merge we only have one new MFD driver for the Kontron
        PLD.
      
        But we also have:
         - Support for the TPS659038 PMIC from the palmas driver.
         - Intel's Coleto Creek and Avoton SoCs support from the lpc_ich
           driver.
         - RTL8411B support from the rtsx driver.
         - More DT support for the Arizona, max8998, twl4030-power and the
           ti_am335x_tsadc drivers.
         - The SSBI driver move under MFD.
         - A conversion to the devm_* API for most of the MFD drivers.
         - The twl4030-power got split from twl-core into its own module.
         - A major ti_am335x_adc cleanup, leading to a proper DT support.
         - Our regular arizona and wm* updates and cleanups from the Wolfson
           folks.
         - A better error handling and initialization, and a regulator
           subdevice addition for the 88pm80x driver.
         - A bulk platform_set_drvdata() call removal that's no longer need
           since commit 0998d063 ("device-core: Ensure drvdata = NULL when
           no driver is bound")
      
      * tag 'mfd-3.11-1' of git://git.kernel.org/pub/scm/linux/kernel/git/sameo/mfd-next: (102 commits)
        mfd: sec: Provide max_register to regmap
        mfd: wm8994: Remove duplicate check for active JACKDET
        MAINTAINERS: Add include directory to MFD file patterns
        mfd: sec: Remove fields not used since regmap conversion
        watchdog: Kontron PLD watchdog timer driver
        mfd: max8998: Add support for Device Tree
        regulator: max8998: Use arrays for specifying voltages in platform data
        mfd: max8998: Add irq domain support
        regulator: palmas: Add TPS659038 support
        mfd: Kontron PLD mfd driver
        mfd: palmas: Add TPS659038 PMIC support
        mfd: palmas: Add SMPS10_BOOST feature
        mfd: palmas: Check if irq is valid
        mfd: lpc_ich: iTCO_wdt patch for Intel Coleto Creek DeviceIDs
        mfd: twl-core: Change TWL6025 references to TWL6032
        mfd: davinci_voicecodec: Fix build breakage
        mfd: vexpress: Make the driver optional for arm and arm64
        mfd: htc-egpio: Use devm_ioremap_nocache() instead of ioremap_nocache()
        mfd: davinci_voicecodec: Convert to use devm_* APIs
        mfd: twl4030-power: Fix relocking on error
        ...
      3aa78e0c
    • L
      Merge branch 'hwmon-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jdelvare/staging · dc5ef1f5
      Linus Torvalds 提交于
      Pull hwmon update from Jean Delvare.
      
      * 'hwmon-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jdelvare/staging:
        hwmon: (lm63) Drop redundant safety on cache lifetime
        hwmon: (lm90) Drop redundant safety on cache lifetime
      dc5ef1f5
    • L
      Merge tag 'regulator-v3.11-2' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regulator · 50aaa6bc
      Linus Torvalds 提交于
      Pull regulator fixes from Mark Brown:
       "Fixes for the merge window
      
        A set of small fixes for issues noticed during the merge window, all
        very much non-invasive"
      
      * tag 'regulator-v3.11-2' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regulator:
        MAINTAINERS: Update git repository
        regulator: max8997: Fix a trivial typo in documentation
        regulator: s5m8767: Fix a trivial typo in documentation
        regulator: s2mps11: Convert ramp rate to uV/us and set default ramp rate
        regulator: s5m8767: Update s5m8767-regulator bindings document
      50aaa6bc
    • L
      Merge tag 'firewire-updates' of git://git.kernel.org/pub/scm/linux/kernel/git/ieee1394/linux1394 · bb93109e
      Linus Torvalds 提交于
      Pull firewire updates from Stefan Richter:
       "Make struct ieee1394_device_id.driver_data actually avaliable to 1394
        protocol drivers.  This is especially useful to 1394 audio drivers for
        model-specific parameters and methods"
      
      * tag 'firewire-updates' of git://git.kernel.org/pub/scm/linux/kernel/git/ieee1394/linux1394:
        firewire: remove support of fw_driver.driver.probe and .remove methods
        firewire: introduce fw_driver.probe and .remove methods
      bb93109e
    • L
      Merge branch 'x86-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 23e3a1d9
      Linus Torvalds 提交于
      Pull x86 fix from Ingo Molnar:
       "irq-tracing fixlet"
      
      * 'x86-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86/tracing: Add irq_enter/exit() in smp_trace_reschedule_interrupt()
      23e3a1d9
    • L
      Merge branch 'next' of git://git.monstr.eu/linux-2.6-microblaze · 72c1c2f1
      Linus Torvalds 提交于
      Pull microblaze update from Michal Simek:
       "This Microblaze merge window is quite minimal.
      
        I have also added to my branch one xilinx systemace sparse fix because
        haven't got any reply from block maintainer."
      
      * 'next' of git://git.monstr.eu/linux-2.6-microblaze:
        xilinx systemace: Fix sparse warnings
        microblaze: Move __NR_syscalls from uapi
        microblaze: Enable KGDB in defconfig
        microblaze: Don't mark arch_kgdb_ops as const.
      72c1c2f1
    • L
      Merge tag 'metag-fixes-for-v3.11-1' of git://git.kernel.org/pub/scm/linux/kernel/git/jhogan/metag · 2d6244b3
      Linus Torvalds 提交于
      Pull arch/metag fixes from James Hogan:
       "This is just a single fix to fix bad UDP checksums sometimes being
        generated to IP addresses *.*.255.255"
      
      * tag 'metag-fixes-for-v3.11-1' of git://git.kernel.org/pub/scm/linux/kernel/git/jhogan/metag:
        metag: checksum.h: fix carry in csum_tcpudp_nofold
      2d6244b3
    • L
      Merge tag 'blackfin-for-linus' of... · 49283f60
      Linus Torvalds 提交于
      Merge tag 'blackfin-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/realmz6/blackfin-linux
      
      Pull blackfin updates from Steven Miao:
       "blackfin updates for Linux 3.11"
      
      * tag 'blackfin-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/realmz6/blackfin-linux:
        smp: refine bf561 smpboot code
        bf609: stmmac: fix build after stmmac_mdio_bus_data changed
        bf609: add cpu revision 0.1
        bf609: rename bfin6xx_spi to bfin_spi3
        kgdb: blackfin: include irq_regs.h in kgdb.c
      49283f60
    • L
      Merge tag 'arc-v3.11-rc1-part2' of git://git.kernel.org/pub/scm/linux/kernel/git/vgupta/arc · 8f041e6c
      Linus Torvalds 提交于
      Pull second set of ARC architecture updates from Vineet Gupta:
       "Couple of Platform updates (Device Tree files primarily) given that
        the corresponding drivers (net/ethernet/arc/*, irqctl/irq-tb10x.c)
        have now been merged into your tree.
      
        Ideally these shd have been part of same submissions, oh well..."
      
      * tag 'arc-v3.11-rc1-part2' of git://git.kernel.org/pub/scm/linux/kernel/git/vgupta/arc:
        ARC: [TB10x] Updates for irqchip driver
        ARC: [plat-arcfpga] Enable arc_emac for ARCAngle4 Board
      8f041e6c
    • L
      Merge branch 'parisc-for-3.11' of git://git.kernel.org/pub/scm/linux/kernel/git/deller/parisc-linux · b2477596
      Linus Torvalds 提交于
      Pull parisc updates from Helge Deller:
       "The PA-RISC updates for v3.11 include a gcc miscompilation fix,
        gzip-compressed vmlinuz support, a fix in the PCI code for ATI FireGL
        support on c8000 machines, a fix to prevent that %sr1 is being
        clobbered and a few smaller optimizations and documentation updates"
      
      * 'parisc-for-3.11' of git://git.kernel.org/pub/scm/linux/kernel/git/deller/parisc-linux:
        parisc: Fix gcc miscompilation in pa_memcpy()
        parisc: Ensure volatile space register %sr1 is not clobbered
        parisc: optimize mtsp(0,sr) inline assembly
        parisc: switch to gzip-compressed vmlinuz kernel
        parisc: document the shadow registers
        parisc: more capabilities info in /proc/cpuinfo
        parisc: fix LMMIO mismatch between PAT length and MASK register
      b2477596
    • L
      Merge tag 'please-pull-fix-ia64-warnings' of... · 61e31291
      Linus Torvalds 提交于
      Merge tag 'please-pull-fix-ia64-warnings' of git://git.kernel.org/pub/scm/linux/kernel/git/aegl/linux
      
      P{ill ia64 warning fix from Tony Luck:
       "Add some casts to avoid warnings from efi_runtime_services_t members"
      
      * tag 'please-pull-fix-ia64-warnings' of git://git.kernel.org/pub/scm/linux/kernel/git/aegl/linux:
        [IA64] sim: Add casts to avoid assignment warnings
      61e31291
  2. 10 7月, 2013 7 次提交
    • M
      xilinx systemace: Fix sparse warnings · 4937a269
      Michal Simek 提交于
      Fix sysace sparse warnings.
      Signed-off-by: NMichal Simek <michal.simek@xilinx.com>
      4937a269
    • M
      microblaze: Move __NR_syscalls from uapi · 40c2702a
      Michal Simek 提交于
      The reason is that other applications like strace
      think that every __NR_xx is syscall.
      Also __NR_syscalls is not used by user applications/libs.
      Signed-off-by: NMichal Simek <michal.simek@xilinx.com>
      40c2702a
    • L
      Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next · 496322bc
      Linus Torvalds 提交于
      Pull networking updates from David Miller:
       "This is a re-do of the net-next pull request for the current merge
        window.  The only difference from the one I made the other day is that
        this has Eliezer's interface renames and the timeout handling changes
        made based upon your feedback, as well as a few bug fixes that have
        trickeled in.
      
        Highlights:
      
         1) Low latency device polling, eliminating the cost of interrupt
            handling and context switches.  Allows direct polling of a network
            device from socket operations, such as recvmsg() and poll().
      
            Currently ixgbe, mlx4, and bnx2x support this feature.
      
            Full high level description, performance numbers, and design in
            commit 0a4db187 ("Merge branch 'll_poll'")
      
            From Eliezer Tamir.
      
         2) With the routing cache removed, ip_check_mc_rcu() gets exercised
            more than ever before in the case where we have lots of multicast
            addresses.  Use a hash table instead of a simple linked list, from
            Eric Dumazet.
      
         3) Add driver for Atheros CQA98xx 802.11ac wireless devices, from
            Bartosz Markowski, Janusz Dziedzic, Kalle Valo, Marek Kwaczynski,
            Marek Puzyniak, Michal Kazior, and Sujith Manoharan.
      
         4) Support reporting the TUN device persist flag to userspace, from
            Pavel Emelyanov.
      
         5) Allow controlling network device VF link state using netlink, from
            Rony Efraim.
      
         6) Support GRE tunneling in openvswitch, from Pravin B Shelar.
      
         7) Adjust SOCK_MIN_RCVBUF and SOCK_MIN_SNDBUF for modern times, from
            Daniel Borkmann and Eric Dumazet.
      
         8) Allow controlling of TCP quickack behavior on a per-route basis,
            from Cong Wang.
      
         9) Several bug fixes and improvements to vxlan from Stephen
            Hemminger, Pravin B Shelar, and Mike Rapoport.  In particular,
            support receiving on multiple UDP ports.
      
        10) Major cleanups, particular in the area of debugging and cookie
            lifetime handline, to the SCTP protocol code.  From Daniel
            Borkmann.
      
        11) Allow packets to cross network namespaces when traversing tunnel
            devices.  From Nicolas Dichtel.
      
        12) Allow monitoring netlink traffic via AF_PACKET sockets, in a
            manner akin to how we monitor real network traffic via ptype_all.
            From Daniel Borkmann.
      
        13) Several bug fixes and improvements for the new alx device driver,
            from Johannes Berg.
      
        14) Fix scalability issues in the netem packet scheduler's time queue,
            by using an rbtree.  From Eric Dumazet.
      
        15) Several bug fixes in TCP loss recovery handling, from Yuchung
            Cheng.
      
        16) Add support for GSO segmentation of MPLS packets, from Simon
            Horman.
      
        17) Make network notifiers have a real data type for the opaque
            pointer that's passed into them.  Use this to properly handle
            network device flag changes in arp_netdev_event().  From Jiri
            Pirko and Timo Teräs.
      
        18) Convert several drivers over to module_pci_driver(), from Peter
            Huewe.
      
        19) tcp_fixup_rcvbuf() can loop 500 times over loopback, just use a
            O(1) calculation instead.  From Eric Dumazet.
      
        20) Support setting of explicit tunnel peer addresses in ipv6, just
            like ipv4.  From Nicolas Dichtel.
      
        21) Protect x86 BPF JIT against spraying attacks, from Eric Dumazet.
      
        22) Prevent a single high rate flow from overruning an individual cpu
            during RX packet processing via selective flow shedding.  From
            Willem de Bruijn.
      
        23) Don't use spinlocks in TCP md5 signing fast paths, from Eric
            Dumazet.
      
        24) Don't just drop GSO packets which are above the TBF scheduler's
            burst limit, chop them up so they are in-bounds instead.  Also
            from Eric Dumazet.
      
        25) VLAN offloads are missed when configured on top of a bridge, fix
            from Vlad Yasevich.
      
        26) Support IPV6 in ping sockets.  From Lorenzo Colitti.
      
        27) Receive flow steering targets should be updated at poll() time
            too, from David Majnemer.
      
        28) Fix several corner case regressions in PMTU/redirect handling due
            to the routing cache removal, from Timo Teräs.
      
        29) We have to be mindful of ipv4 mapped ipv6 sockets in
            upd_v6_push_pending_frames().  From Hannes Frederic Sowa.
      
        30) Fix L2TP sequence number handling bugs, from James Chapman."
      
      * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next: (1214 commits)
        drivers/net: caif: fix wrong rtnl_is_locked() usage
        drivers/net: enic: release rtnl_lock on error-path
        vhost-net: fix use-after-free in vhost_net_flush
        net: mv643xx_eth: do not use port number as platform device id
        net: sctp: confirm route during forward progress
        virtio_net: fix race in RX VQ processing
        virtio: support unlocked queue poll
        net/cadence/macb: fix bug/typo in extracting gem_irq_read_clear bit
        Documentation: Fix references to defunct linux-net@vger.kernel.org
        net/fs: change busy poll time accounting
        net: rename low latency sockets functions to busy poll
        bridge: fix some kernel warning in multicast timer
        sfc: Fix memory leak when discarding scattered packets
        sit: fix tunnel update via netlink
        dt:net:stmmac: Add dt specific phy reset callback support.
        dt:net:stmmac: Add support to dwmac version 3.610 and 3.710
        dt:net:stmmac: Allocate platform data only if its NULL.
        net:stmmac: fix memleak in the open method
        ipv6: rt6_check_neigh should successfully verify neigh if no NUD information are available
        net: ipv6: fix wrong ping_v6_sendmsg return value
        ...
      496322bc
    • L
      Merge branch 'drm-next' of git://people.freedesktop.org/~airlied/linux · 2e17c5a9
      Linus Torvalds 提交于
      Pull drm updates from Dave Airlie:
       "Okay this is the big one, I was stalled on the fbdev pull req as I
        stupidly let fbdev guys merge a patch I required to fix a warning with
        some patches I had, they ended up merging the patch from the wrong
        place, but the warning should be fixed.  In future I'll just take the
        patch myself!
      
        Outside drm:
      
        There are some snd changes for the HDMI audio interactions on haswell,
        they've been acked for inclusion via my tree.  This relies on the
        wound/wait tree from Ingo which is already merged.
      
        Major changes:
      
        AMD finally released the dynamic power management code for all their
        GPUs from r600->present day, this is great, off by default for now but
        also a huge amount of code, in fact it is most of this pull request.
      
        Since it landed there has been a lot of community testing and Alex has
        sent a lot of fixes for any bugs found so far.  I suspect radeon might
        now be the biggest kernel driver ever :-P p.s.  radeon.dpm=1 to enable
        dynamic powermanagement for anyone.
      
        New drivers:
      
        Renesas r-car display unit.
      
        Other highlights:
      
         - core: GEM CMA prime support, use new w/w mutexs for TTM
           reservations, cursor hotspot, doc updates
         - dvo chips: chrontel 7010B support
         - i915: Haswell (fbc, ips, vecs, watermarks, audio powerwell),
           Valleyview (enabled by default, rc6), lots of pll reworking, 30bpp
           support (this time for sure)
         - nouveau: async buffer object deletion, context/register init
           updates, kernel vp2 engine support, GF117 support, GK110 accel
           support (with external nvidia ucode), context cleanups.
         - exynos: memory leak fixes, Add S3C64XX SoC series support, device
           tree updates, common clock framework support,
         - qxl: cursor hotspot support, multi-monitor support, suspend/resume
           support
         - mgag200: hw cursor support, g200 mode limiting
         - shmobile: prime support
         - tegra: fixes mostly
      
        I've been banging on this quite a lot due to the size of it, and it
        seems to okay on everything I've tested it on."
      
      * 'drm-next' of git://people.freedesktop.org/~airlied/linux: (811 commits)
        drm/radeon/dpm: implement vblank_too_short callback for si
        drm/radeon/dpm: implement vblank_too_short callback for cayman
        drm/radeon/dpm: implement vblank_too_short callback for btc
        drm/radeon/dpm: implement vblank_too_short callback for evergreen
        drm/radeon/dpm: implement vblank_too_short callback for 7xx
        drm/radeon/dpm: add checks against vblank time
        drm/radeon/dpm: add helper to calculate vblank time
        drm/radeon: remove stray line in old pm code
        drm/radeon/dpm: fix display_gap programming on rv7xx
        drm/nvc0/gr: fix gpc firmware regression
        drm/nouveau: fix minor thinko causing bo moves to not be async on kepler
        drm/radeon/dpm: implement force performance level for TN
        drm/radeon/dpm: implement force performance level for ON/LN
        drm/radeon/dpm: implement force performance level for SI
        drm/radeon/dpm: implement force performance level for cayman
        drm/radeon/dpm: implement force performance levels for 7xx/eg/btc
        drm/radeon/dpm: add infrastructure to force performance levels
        drm/radeon: fix surface setup on r1xx
        drm/radeon: add support for 3d perf states on older asics
        drm/radeon: set default clocks for SI when DPM is disabled
        ...
      2e17c5a9
    • L
      Merge tag 'fbdev-for-3.11' of git://git.kernel.org/pub/scm/linux/kernel/git/plagnioj/linux-fbdev · 5f097cd2
      Linus Torvalds 提交于
      Pull fbdev update from Jean-Christophe PLAGNIOL-VILLARD:
       "Various fbdev changes for 3.11
         - xilinxfb updates
         - Small cleanups and fixes to multiple drivers
         - OMAP display subsystem bug updates
         - imxfb dt support"
      
      * tag 'fbdev-for-3.11' of git://git.kernel.org/pub/scm/linux/kernel/git/plagnioj/linux-fbdev: (95 commits)
        video: imxfb: Add DT support
        video: i740fb: Make i740fb_init static
        fb: make fp_get_options name argument const
        video: mmp: fix graphics/video layer enable/mask swap issue
        video: mmp: fix memcpy wrong size for mmp_addr issue
        radeon: use pdev->pm_cap instead of pci_find_capability(..,PCI_CAP_ID_PM)
        aty128fb: use pdev->pm_cap instead of pci_find_capability(..,PCI_CAP_ID_PM)
        video: of_display_timing.h: Declare 'display_timing'
        fbdev: bfin-lq035q1-fb: Use dev_pm_ops
        fbmem: return -EFAULT on copy_to_user() failure
        OMAPDSS: DPI: Fix wrong pixel clock limit
        video: replace strict_strtoul() with kstrtoul()
        uvesafb: Correct/simplify warning message
        fb: fix atyfb unused data warnings
        fb: fix atyfb build warning
        video: imxfb: Make local symbols static
        video: udlfb: Make local symbol static
        video: udlfb: Use NULL instead of 0
        video: smscufx: Use NULL instead of 0
        video: remove unnecessary platform_set_drvdata()
        ...
      5f097cd2
    • L
      Merge branch 'akpm' (updates from Andrew Morton) · a82a729f
      Linus Torvalds 提交于
      Merge second patch-bomb from Andrew Morton:
       - misc fixes
       - audit stuff
       - fanotify/inotify/dnotify things
       - most of the rest of MM.  The new cache shrinker code from Glauber and
         Dave Chinner probably isn't quite stabilized yet.
       - ptrace
       - ipc
       - partitions
       - reboot cleanups
       - add LZ4 decompressor, use it for kernel compression
      
      * emailed patches from Andrew Morton <akpm@linux-foundation.org>: (118 commits)
        lib/scatterlist: error handling in __sg_alloc_table()
        scsi_debug: fix do_device_access() with wrap around range
        crypto: talitos: use sg_pcopy_to_buffer()
        lib/scatterlist: introduce sg_pcopy_from_buffer() and sg_pcopy_to_buffer()
        lib/scatterlist: factor out sg_miter_get_next_page() from sg_miter_next()
        crypto: add lz4 Cryptographic API
        lib: add lz4 compressor module
        arm: add support for LZ4-compressed kernel
        lib: add support for LZ4-compressed kernel
        decompressor: add LZ4 decompressor module
        lib: add weak clz/ctz functions
        reboot: move arch/x86 reboot= handling to generic kernel
        reboot: arm: change reboot_mode to use enum reboot_mode
        reboot: arm: prepare reboot_mode for moving to generic kernel code
        reboot: arm: remove unused restart_mode fields from some arm subarchs
        reboot: unicore32: prepare reboot_mode for moving to generic kernel code
        reboot: x86: prepare reboot_mode for moving to generic kernel code
        reboot: checkpatch.pl the new kernel/reboot.c file
        reboot: move shutdown/reboot related functions to kernel/reboot.c
        reboot: remove -stable friendly PF_THREAD_BOUND define
        ...
      a82a729f
    • H
      parisc: Fix gcc miscompilation in pa_memcpy() · 5b879d78
      Helge Deller 提交于
      When running the LTP testsuite one may hit this kernel BUG() with the
      write06 testcase:
      
      kernel BUG at mm/filemap.c:2023!
      CPU: 1 PID: 8614 Comm: writev01 Not tainted 3.10.0-rc7-64bit-c3000+ #6
      IASQ: 0000000000000000 0000000000000000 IAOQ: 00000000401e6e84 00000000401e6e88
       IIR: 03ffe01f    ISR: 0000000010340000  IOR: 000001fbe0380820
       CPU:        1   CR30: 00000000bef80000 CR31: ffffffffffffffff
       ORIG_R28: 00000000bdc192c0
       IAOQ[0]: iov_iter_advance+0x3c/0xc0
       IAOQ[1]: iov_iter_advance+0x40/0xc0
       RP(r2): generic_file_buffered_write+0x204/0x3f0
      Backtrace:
       [<00000000401e764c>] generic_file_buffered_write+0x204/0x3f0
       [<00000000401eab24>] __generic_file_aio_write+0x244/0x448
       [<00000000401eadc0>] generic_file_aio_write+0x98/0x150
       [<000000004024f460>] do_sync_readv_writev+0xc0/0x130
       [<000000004025037c>] compat_do_readv_writev+0x12c/0x340
       [<00000000402505f8>] compat_writev+0x68/0xa0
       [<0000000040251d88>] compat_SyS_writev+0x98/0xf8
      
      Reason for this crash is a gcc miscompilation in the fault handlers of
      pa_memcpy() which return the fault address instead of the copied bytes.
      Since this seems to be a generic problem with gcc-4.7.x (and below), it's
      better to simplify the fault handlers in pa_memcpy to avoid this problem.
      
      Here is a simple reproducer for the problem:
      
      int main(int argc, char **argv)
      {
      	int fd, nbytes;
      	struct iovec wr_iovec[] = {
      		{ "TEST STRING                     ",32},
      		{ (char*)0x40005000,32} }; // random memory.
      	fd = open(DATA_FILE, O_RDWR | O_CREAT, 0666);
      	nbytes = writev(fd, wr_iovec, 2);
      	printf("return value = %d, errno %d (%s)\n",
      		nbytes, errno, strerror(errno));
      	return 0;
      }
      
      In addition, John David Anglin wrote:
      There is no gcc PR as pa_memcpy is not legitimate C code. There is an
      implicit assumption that certain variables will contain correct values
      when an exception occurs and the code randomly jumps to one of the
      exception blocks.  There is no guarantee of this.  If a PR was filed, it
      would likely be marked as invalid.
      Signed-off-by: NHelge Deller <deller@gmx.de>
      Signed-off-by: NJohn David Anglin <dave.anglin@bell.net>
      Cc: <stable@vger.kernel.org> # 3.8+
      Signed-off-by: NHelge Deller <deller@gmx.de>
      5b879d78