06 Apr, 2014

6 commits

  • Pull ARM SoC cleanups from Arnd Bergmann:
    "These cleanup patches are mainly move stuff around and should all be
    harmless. They are mainly split out so that other branches can be
    based on top to avoid conflicts.

    Notable changes are:

    - We finally remove all mach/timex.h, after CLOCK_TICK_RATE is no
    longer used (Uwe Kleine-König)
    - The Qualcomm MSM platform is split out into legacy mach-msm and
    new-style mach-qcom, to allow easier maintainance of the new
    hardware support without regressions (Kumar Gala)
    - A rework of some of the Kconfig logic to simplify multiplatform
    support (Rob Herring)
    - Samsung Exynos gets closer to supporting multiplatform (Sachin
    Kamat and others)
    - mach-bcm3528 gets merged into mach-bcm (Stephen Warren)
    - at91 gains some common clock framework support (Alexandre Belloni,
    Jean-Jacques Hiblot and other French people)"

    * tag 'cleanup-3.15' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc: (89 commits)
    ARM: hisi: select HAVE_ARM_SCU only for SMP
    ARM: efm32: allow uncompress debug output
    ARM: prima2: build reset code standalone
    ARM: at91: add PWM clock
    ARM: at91: move sam9261 SoC to common clk
    ARM: at91: prepare common clk transition for sam9261 SoC
    ARM: at91: updated the at91_dt_defconfig with support for the ADS7846
    ARM: at91: dt: sam9261: Device Tree support for the at91sam9261ek
    ARM: at91: dt: defconfig: Added the sam9261 to the list of DT-enabled SOCs
    ARM: at91: dt: Add at91sam9261 dt SoC support
    ARM: at91: switch sam9rl to common clock framework
    ARM: at91/dt: define main clk frequency of at91sam9rlek
    ARM: at91/dt: define at91sam9rl clocks
    ARM: at91: prepare common clk transition for sam9rl SoCs
    ARM: at91: prepare sam9 dt boards transition to common clk
    ARM: at91: dt: sam9rl: Device Tree for the at91sam9rlek
    ARM: at91/defconfig: Add the sam9rl to the list of DT-enabled SOCs
    ARM: at91: Add at91sam9rl DT SoC support
    ARM: at91: prepare at91sam9rl DT transition
    ARM: at91/defconfig: refresh at91sam9260_9g20_defconfig
    ...

    Linus Torvalds
     
  • Pull ARM SoC non-critical bug fixes from Arnd Bergmann:
    "Lots of isolated bug fixes that were not found to be important enough
    to be submitted before the merge window or backported into stable
    kernels.

    The vast majority of these came out of Arnd's randconfig testing and
    just prevents running into build-time bugs in configurations that we
    do not care about in practice"

    * tag 'fixes-non-critical-3.15' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc: (75 commits)
    ARM: at91: fix a typo
    ARM: moxart: fix CPU selection
    ARM: tegra: fix board DT pinmux setup
    ARM: nspire: Fix compiler warning
    IXP4xx: Fix DMA masks.
    Revert "ARM: ixp4xx: Make dma_set_coherent_mask common, correct implementation"
    IXP4xx: Fix Goramo Multilink GPIO conversion.
    Revert "ARM: ixp4xx: fix gpio rework"
    ARM: tegra: make debug_ll code build for ARMv6
    ARM: sunxi: fix build for THUMB2_KERNEL
    ARM: exynos: add missing include of linux/module.h
    ARM: exynos: fix l2x0 saved regs handling
    ARM: samsung: select CRC32 for SAMSUNG_PM_CHECK
    ARM: samsung: select ATAGS where necessary
    ARM: samsung: fix SAMSUNG_PM_DEBUG Kconfig logic
    ARM: samsung: allow serial driver to be disabled
    ARM: s5pv210: enable IDE support in MACH_TORBRECK
    ARM: s5p64x0: fix building with only one soc type
    ARM: s3c64xx: select power domains only when used
    ARM: s3c64xx: MACH_SMDK6400 needs HSMMC1
    ...

    Linus Torvalds
     
  • Pull ARM changes from Russell King:

    - Perf updates from Will Deacon:
    - Support for Qualcomm Krait processors (run perf on your phone!)
    - Support for Cortex-A12 (run perf stat on your FPGA!)
    - Support for perf_sample_event_took, allowing us to automatically decrease
    the sample rate if we can't handle the PMU interrupts quickly enough
    (run perf record on your FPGA!).

    - Basic uprobes support from David Long:
    This patch series adds basic uprobes support to ARM. It is based on
    patches developed earlier by Rabin Vincent. That approach of adding
    hooks into the kprobes instruction parsing code was not well received.
    This approach separates the ARM instruction parsing code in kprobes out
    into a separate set of functions which can be used by both kprobes and
    uprobes. Both kprobes and uprobes then provide their own semantic action
    tables to process the results of the parsing.

    - ARMv7M (microcontroller) updates from Uwe Kleine-König

    - OMAP DMA updates (recently added Vinod's Ack even though they've been
    sitting in linux-next for a few months) to reduce the reliance of
    omap-dma on the code in arch/arm.

    - SA11x0 changes from Dmitry Eremin-Solenikov and Alexander Shiyan

    - Support for Cortex-A12 CPU

    - Align support for ARMv6 with ARMv7 so they can cooperate better in a
    single zImage.

    - Addition of first AT_HWCAP2 feature bits for ARMv8 crypto support.

    - Removal of IRQ_DISABLED from various ARM files

    - Improved efficiency of virt_to_page() for single zImage

    - Patch from Ulf Hansson to permit runtime PM callbacks to be available for
    AMBA devices for suspend/resume as well.

    - Finally kill asm/system.h on ARM.

    * 'for-linus' of git://ftp.arm.linux.org.uk/~rmk/linux-arm: (89 commits)
    dmaengine: omap-dma: more consolidation of CCR register setup
    dmaengine: omap-dma: move IRQ handling to omap-dma
    dmaengine: omap-dma: move register read/writes into omap-dma.c
    ARM: omap: dma: get rid of 'p' allocation and clean up
    ARM: omap: move dma channel allocation into plat-omap code
    ARM: omap: dma: get rid of errata global
    ARM: omap: clean up DMA register accesses
    ARM: omap: remove almost-const variables
    ARM: omap: remove references to disable_irq_lch
    dmaengine: omap-dma: cleanup errata 3.3 handling
    dmaengine: omap-dma: provide register read/write functions
    dmaengine: omap-dma: use cached CCR value when enabling DMA
    dmaengine: omap-dma: move barrier to omap_dma_start_desc()
    dmaengine: omap-dma: move clnk_ctrl setting to preparation functions
    dmaengine: omap-dma: improve efficiency loading C.SA/C.EI/C.FI registers
    dmaengine: omap-dma: consolidate clearing channel status register
    dmaengine: omap-dma: move CCR buffering disable errata out of the fast path
    dmaengine: omap-dma: provide register definitions
    dmaengine: omap-dma: consolidate setup of CCR
    dmaengine: omap-dma: consolidate setup of CSDP
    ...

    Linus Torvalds
     
  • Pull Hexagon updates from Richard Kuo:
    "Mostly cleanups for compilation with allmodconfig and some other
    miscellaneous fixes"

    * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/rkuo/linux-hexagon-kernel:
    Hexagon: update CR year for elf.h
    Hexagon: remove SP macro
    Hexagon: set ELF_EXEC_PAGESIZE to PAGE_SIZE
    Hexagon: set the e_flags in user regset view for core dumps
    Hexagon: fix atomic_set
    Hexagon: add screen_info for VGA_CONSOLE
    hexagon: correct type on pgd copy
    smp, hexagon: kill SMP single function call interrupt
    arch: hexagon: include: asm: add generic macro 'mmiowb' in "io.h"
    arch: hexagon: kernel: hexagon_ksyms.c: export related symbols which various modules need
    arch: hexagon: kernel: reset.c: use function pointer instead of function for pm_power_off and export it
    arch: hexagon: include: asm: add "vga.h" in Kbuild
    arch: hexagon: include: asm: Kbuild: add generic "serial.h" in Kbuild
    arch: hexagon: include: uapi: asm: setup.h add swith macro __KERNEL__
    arch: hexagon: include: asm: add prefix "hvm[ci]_" for all enum members in "hexagon_vm.h"
    arch: hexagon: Kconfig: add HAVE_DMA_ATTR in Kconfig and remove "linux/dma-mapping.h" from "asm/dma-mapping.h"
    arch: hexagon: kernel: add export symbol function __delay()
    hexagon: include: asm: kgdb: extend DBG_MAX_REG_NUM for "cs0/1"
    hexagon: kernel: kgdb: include related header for pass compiling.
    hexagon: kernel: remove useless variables 'dn', 'r' and 'err' in time_init_deferred() in "time.c"

    Linus Torvalds
     
  • Pull m68k fixes from Greg Ungerer:
    "Just a couple of fixes. Clean up compile warnings by using correct
    types in function args, and clean out the removed CONFIG_MTD_PARTITIONS"

    * 'for-next' of git://git.kernel.org/pub/scm/linux/kernel/git/gerg/m68knommu:
    m68knommu: fix arg types for outs* functions
    m68k : Kill CONFIG_MTD_PARTITIONS

    Linus Torvalds
     
  • Pull exynos media updates from Mauro Carvalho Chehab:
    "These are the remaining patches I have for the merge windows. It
    basically adds a new sensor and adds the needed DT bits for it to
    work"

    * 'topic/exynos' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-media:
    [media] s5p-fimc: Remove reference to outdated macro
    [media] s5p-jpeg: Fix broken indentation in jpeg-regs.h
    [media] exynos4-is: Add the FIMC-IS ISP capture DMA driver
    [media] exynos4-is: Add support for asynchronous subdevices registration
    [media] exynos4-is: Add clock provider for the SCLK_CAM clock outputs
    [media] exynos4-is: Use external s5k6a3 sensor driver
    [media] V4L: s5c73m3: Add device tree support
    [media] V4L: Add driver for s5k6a3 image sensor
    [media] Documentation: devicetree: Update Samsung FIMC DT binding
    [media] Documentation: dt: Add binding documentation for S5C73M3 camera
    [media] Documentation: dt: Add binding documentation for S5K6A3 image sensor

    Linus Torvalds
     

05 Apr, 2014

34 commits

  • Pull fbdev changes from Tomi Valkeinen:
    "Various fbdev fixes and improvements, but nothing big"

    * tag 'fbdev-main-3.15' of git://git.kernel.org/pub/scm/linux/kernel/git/tomba/linux: (38 commits)
    fbdev: Make the switch from generic to native driver less alarming
    Video: atmel: avoid the id of fix screen info is overwritten
    video: imxfb: Add DT default contrast control register property.
    video: atmel_lcdfb: ensure the hardware is initialized with the correct mode
    fbdev: vesafb: add dev->remove() callback
    fbdev: efifb: add dev->remove() callback
    video: pxa3xx-gcu: switch to devres functions
    video: pxa3xx-gcu: provide an empty .open call
    video: pxa3xx-gcu: pass around struct device *
    video: pxa3xx-gcu: rename some symbols
    sisfb: fix 1280x720 resolution support
    video: fbdev: uvesafb: Remove impossible code path in uvesafb_init_info
    video: fbdev: uvesafb: Remove redundant NULL check in uvesafb_remove
    fbdev: FB_OPENCORES should depend on HAS_DMA
    OMAPDSS: convert pixel clock to common videomode style
    OMAPDSS: Remove unused get_context_loss_count support
    OMAPDSS: use DISPC register to detect context loss
    video: da8xx-fb: Use "SIMPLE_DEV_PM_OPS" macro
    video: imxfb: Convert to SIMPLE_DEV_PM_OPS
    video: imxfb: Resolve mismatch between backlight/contrast
    ...

    Linus Torvalds
     
  • Pull single ktest fix from Steven Rostedt:
    "This just contains a single update by Satoru Takeuchi, which adds
    CLOSE_CONSOLE_SIGNAL to the kvm.conf file, as the kvm guest requires a
    different signal than a normal console uses"

    * tag 'ktest-v3.15' of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-ktest:
    ktest: Set CLOSE_CONSOLE_SIGNAL in the kvm.conf

    Linus Torvalds
     
  • Pull /dev/random changes from Ted Ts'o:
    "A number of cleanups plus support for the RDSEED instruction, which
    will be showing up in Intel Broadwell CPU's"

    * tag 'random_for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tytso/random:
    random: Add arch_has_random[_seed]()
    random: If we have arch_get_random_seed*(), try it before blocking
    random: Use arch_get_random_seed*() at init time and once a second
    x86, random: Enable the RDSEED instruction
    random: use the architectural HWRNG for the SHA's IV in extract_buf()
    random: clarify bits/bytes in wakeup thresholds
    random: entropy_bytes is actually bits
    random: simplify accounting code
    random: tighten bound on random_read_wakeup_thresh
    random: forget lock in lockless accounting
    random: simplify accounting logic
    random: fix comment on "account"
    random: simplify loop in random_read
    random: fix description of get_random_bytes
    random: fix comment on proc_do_uuid
    random: fix typos / spelling errors in comments

    Linus Torvalds
     
  • Signed-off-by: Richard Kuo

    Richard Kuo
     
  • The SP/r29 macro wasn't used anywhere else and was causing conflicts
    with another module, so just remove it.

    Signed-off-by: Richard Kuo

    Richard Kuo
     
  • Signed-off-by: Richard Kuo

    Richard Kuo
     
  • Signed-off-by: Richard Kuo

    Richard Kuo
     
  • Normal writes in our our architecture don't invalidate lock
    reservations.

    Signed-off-by: Richard Kuo

    Richard Kuo
     
  • Signed-off-by: Richard Kuo

    Richard Kuo
     
  • swapper_pg_dir is an array of pgd_t, not pgd_t*. This has no actual
    effect since sizeof(pgd_t) == sizeof(pgd_t*), but unconfuses tools that
    check types.

    Signed-off-by: Ilia Mirkin
    Signed-off-by: Richard Kuo

    Ilia Mirkin
     
  • Commit 9a46ad6d6df3b54 "smp: make smp_call_function_many() use logic
    similar to smp_call_function_single()" has unified the way to handle
    single and multiple cross-CPU function calls. Now only one intterupt
    is needed for architecture specific code to support generic SMP function
    call interfaces, so kill the redundant single function call interrupt.

    Cc: Andrew Morton
    Cc: Shaohua Li
    Cc: Peter Zijlstra
    Cc: Ingo Molnar
    Cc: Steven Rostedt
    Cc: Jiri Kosina
    Cc: Richard Kuo
    Cc: linux-hexagon@vger.kernel.org
    Signed-off-by: Jiang Liu
    Signed-off-by: Richard Kuo

    Jiang Liu
     
  • Need dumy mmiowb(), or can not pass compiling, the related error with
    allmodconfig:

    CC [M] drivers/mmc/host/sdhci.o
    drivers/mmc/host/sdhci.c: In function 'sdhci_request':
    drivers/mmc/host/sdhci.c:1409:2: error: implicit declaration of function 'mmiowb' [-Werror=implicit-function-declaration]

    Signed-off-by: Chen Gang
    Signed-off-by: Richard Kuo

    Chen Gang
     
  • Need export all related functions and symbols for various modules with
    allmodconfig. The related errors:

    MODPOST 2879 modules
    ERROR: "__vmyield" [sound/sound_firmware.ko] undefined!
    ERROR: "__phys_offset" [sound/drivers/snd-dummy.ko] undefined!
    ERROR: "ioremap_nocache" [drivers/char/ipmi/ipmi_si.ko] undefined!
    ERROR: "__iounmap" [drivers/char/ipmi/ipmi_si.ko] undefined!
    ...

    For including files, need "linux/*" first, then "asm/*". All related
    included files and symbols need be sorted by alphabetical order.

    Signed-off-by: Chen Gang
    Signed-off-by: Richard Kuo

    Chen Gang
     
  • …power_off and export it

    'pm_power_off' is a function pointer, not a function, so need change
    its type, and also need export it, or can not pass compiling with
    allmodconfig. The related error:

    MODPOST 2879 modules
    ERROR: "pm_power_off" [drivers/char/ipmi/ipmi_poweroff.ko] undefined!

    Signed-off-by: Chen Gang <gang.chen.5i5j@gmail.com>
    Signed-off-by: Richard Kuo <rkuo@codeaurora.org>

    Chen Gang
     
  • Need include generic "vga.h", or can not pass compiling with
    allmodconfig, the related error:

    CC [M] drivers/gpu/drm/drm_irq.o
    In file included from include/linux/vgaarb.h:34:0,
    from drivers/gpu/drm/drm_irq.c:42:
    include/video/vga.h:22:21: fatal error: asm/vga.h: No such file or directory

    Also move "preempt.h" upper to match sort order.

    Signed-off-by: Chen Gang
    Signed-off-by: Richard Kuo

    Chen Gang
     
  • Add "serial.h" in Kbuild, or can not pass compiling with allmodconfig,
    the related error:

    CC [M] drivers/staging/speakup/speakup_acntpc.o
    In file included from drivers/staging/speakup/speakup_acntpc.c:33:0:
    drivers/staging/speakup/serialio.h:7:24: fatal error: asm/serial.h: No such file or directory

    Signed-off-by: Chen Gang
    Signed-off-by: Richard Kuo

    Chen Gang
     
  • Define dummy '__init' instead of include "linux/init.h" if !__KERNEL__,
    or can not pass checking. The related error (with allmodconfig under
    hexagon):

    CHECK include/asm (34 files)
    usr/include/asm/setup.h:22: included file 'linux/init.h' is not exported

    Signed-off-by: Chen Gang
    Signed-off-by: Richard Kuo

    Chen Gang
     
  • Append "hvmc_" or "hvmi_" to all related enum members (which are too
    common to make conflict with another sub-systems). The related error
    with allmodconfig:

    CC [M] drivers/md/raid1.o
    drivers/md/raid1.c:1440:13: error: 'status' redeclared as different kind of symbol
    arch/hexagon/include/asm/hexagon_vm.h:76:2: note: previous definition of 'status' was here

    Also use 'affinity' instead of 'locdis' for __vmintop_affinity().

    Signed-off-by: Chen Gang
    Signed-off-by: Richard Kuo

    Chen Gang
     
  • …ng.h" from "asm/dma-mapping.h"

    When HAS_DMA, and also need use generic implementation, HAVE_DMA_ATTR
    must be enabled, or can not pass compiling with allmodconfig, the
    related error:

    CC [M] drivers/ata/libata-core.o
    drivers/ata/libata-core.c: In function 'ata_sg_clean':
    drivers/ata/libata-core.c:4598:3: error: implicit declaration of function 'dma_unmap_sg' [-Werror=implicit-function-declaration]
    drivers/ata/libata-core.c: In function 'ata_sg_setup':
    drivers/ata/libata-core.c:4708:2: error: implicit declaration of function 'dma_map_sg' [-Werror=implicit-function-declaration]

    "linux/dma-mapping.h" will include "asm/dma-mapping.h", so need remove
    "linux/dma-mapping.h" from "asm/dma-mapping.h",

    Signed-off-by: Chen Gang <gang.chen.5i5j@gmail.com>
    Signed-off-by: Richard Kuo <rkuo@codeaurora.org>

    Chen Gang
     
  • Need add __delay() implementation, or can not pass allmodconfig in
    next-20131118 tree.

    The related error:

    CC kernel/locking/spinlock_debug.o
    kernel/locking/spinlock_debug.c: In function '__spin_lock_debug':
    kernel/locking/spinlock_debug.c:114:3: error: implicit declaration of function '__delay' [-Werror=implicit-function-declaration]

    Signed-off-by: Chen Gang
    Signed-off-by: Richard Kuo

    Chen Gang
     
  • Need extend maximized number for "cs0/1", the related warning (with
    allmodconfig for v4):

    arch/hexagon/kernel/kgdb.c:79: warning: excess elements in array initializer
    arch/hexagon/kernel/kgdb.c:79: warning: (near initialization for 'dbg_reg_def')
    arch/hexagon/kernel/kgdb.c:80: warning: excess elements in array initializer
    arch/hexagon/kernel/kgdb.c:80: warning: (near initialization for 'dbg_reg_def')

    Signed-off-by: Chen Gang
    Signed-off-by: Richard Kuo

    Chen Gang
     
  • Need include related headers for pass compiling, the related error
    (with allmodconfig for v4):

    CC arch/hexagon/kernel/kgdb.o
    arch/hexagon/kernel/kgdb.c:30: error: invalid use of undefined type 'struct pt_regs'
    arch/hexagon/kernel/kgdb.c:31: error: invalid use of undefined type 'struct pt_regs'
    ...
    arch/hexagon/kernel/kgdb.c:220: error: implicit declaration of function 'local_irq_save'
    arch/hexagon/kernel/kgdb.c:222: error: implicit declaration of function 'local_irq_restore'
    ...

    Signed-off-by: Chen Gang
    Signed-off-by: Richard Kuo

    Chen Gang
     
  • Remove them, since they are useless. The related warnings (with
    allmodconfig for v4):

    CC arch/hexagon/kernel/time.o
    arch/hexagon/kernel/time.c: In function 'time_init_deferred':
    arch/hexagon/kernel/time.c:196: warning: unused variable 'err'
    arch/hexagon/kernel/time.c:195: warning: unused variable 'r'
    arch/hexagon/kernel/time.c:194: warning: unused variable 'dn'

    Signed-off-by: Chen Gang
    Signed-off-by: Richard Kuo

    Chen Gang
     
  • get_user_pages(write=1, force=1) has always had odd behaviour on write-
    protected shared mappings: although it demands FMODE_WRITE-access to the
    underlying object (do_mmap_pgoff sets neither VM_SHARED nor VM_MAYWRITE
    without that), it ends up with do_wp_page substituting private anonymous
    Copied-On-Write pages for the shared file pages in the area.

    That was long ago intentional, as a safety measure to prevent ptrace
    setting a breakpoint (or POKETEXT or POKEDATA) from inadvertently
    corrupting the underlying executable. Yet exec and dynamic loaders open
    the file read-only, and use MAP_PRIVATE rather than MAP_SHARED.

    The traditional odd behaviour still causes surprises and bugs in mm, and
    is probably not what any caller wants - even the comment on the flag
    says "You do not want this" (although it's undoubtedly necessary for
    overriding userspace protections in some contexts, and good when !write).

    Let's stop doing that. But it would be dangerous to remove the long-
    standing safety at this stage, so just make get_user_pages(write,force)
    fail with EFAULT when applied to a write-protected shared area.
    Infiniband may in future want to force write through to underlying
    object: we can add another FOLL_flag later to enable that if required.

    Odd though the old behaviour was, there is no doubt that we may turn out
    to break userspace with this change, and have to revert it quickly.
    Issue a WARN_ON_ONCE to help debug the changed case (easily triggered by
    userspace, so only once to prevent spamming the logs); and delay a few
    associated cleanups until this change is proved.

    get_user_pages callers who might see trouble from this change:
    ptrace poking, or writing to /proc//mem
    drivers/infiniband/
    drivers/media/v4l2-core/
    drivers/gpu/drm/exynos/exynos_drm_gem.c
    drivers/staging/tidspbridge/core/tiomap3430.c
    if they ever apply get_user_pages to write-protected shared mappings
    of an object which was opened for writing.

    I went to apply the same change to mm/nommu.c, but retreated. NOMMU has
    no place for COW, and its VM_flags conventions are not the same: I'd be
    more likely to screw up NOMMU than make an improvement there.

    Suggested-by: Linus Torvalds
    Signed-off-by: Hugh Dickins
    Acked-by: Kirill A. Shutemov
    Signed-off-by: Linus Torvalds

    Hugh Dickins
     
  • Pull xfs update from Dave Chinner:
    "There are a couple of new fallocate features in this request - it was
    decided that it was easiest to push them through the XFS tree using
    topic branches and have the ext4 support be based on those branches.
    Hence you may see some overlap with the ext4 tree merge depending on
    how they including those topic branches into their tree. Other than
    that, there is O_TMPFILE support, some cleanups and bug fixes.

    The main changes in the XFS tree for 3.15-rc1 are:

    - O_TMPFILE support
    - allowing AIO+DIO writes beyond EOF
    - FALLOC_FL_COLLAPSE_RANGE support for fallocate syscall and XFS
    implementation
    - FALLOC_FL_ZERO_RANGE support for fallocate syscall and XFS
    implementation
    - IO verifier cleanup and rework
    - stack usage reduction changes
    - vm_map_ram NOIO context fixes to remove lockdep warings
    - various bug fixes and cleanups"

    * tag 'xfs-for-linus-3.15-rc1' of git://oss.sgi.com/xfs/xfs: (34 commits)
    xfs: fix directory hash ordering bug
    xfs: extra semi-colon breaks a condition
    xfs: Add support for FALLOC_FL_ZERO_RANGE
    fs: Introduce FALLOC_FL_ZERO_RANGE flag for fallocate
    xfs: inode log reservations are still too small
    xfs: xfs_check_page_type buffer checks need help
    xfs: avoid AGI/AGF deadlock scenario for inode chunk allocation
    xfs: use NOIO contexts for vm_map_ram
    xfs: don't leak EFSBADCRC to userspace
    xfs: fix directory inode iolock lockdep false positive
    xfs: allocate xfs_da_args to reduce stack footprint
    xfs: always do log forces via the workqueue
    xfs: modify verifiers to differentiate CRC from other errors
    xfs: print useful caller information in xfs_error_report
    xfs: add xfs_verifier_error()
    xfs: add helper for updating checksums on xfs_bufs
    xfs: add helper for verifying checksums on xfs_bufs
    xfs: Use defines for CRC offsets in all cases
    xfs: skip pointless CRC updates after verifier failures
    xfs: Add support FALLOC_FL_COLLAPSE_RANGE for fallocate
    ...

    Linus Torvalds
     
  • Pull ext4 updates from Ted Ts'o:
    "Major changes for 3.14 include support for the newly added ZERO_RANGE
    and COLLAPSE_RANGE fallocate operations, and scalability improvements
    in the jbd2 layer and in xattr handling when the extended attributes
    spill over into an external block.

    Other than that, the usual clean ups and minor bug fixes"

    * tag 'ext4_for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tytso/ext4: (42 commits)
    ext4: fix premature freeing of partial clusters split across leaf blocks
    ext4: remove unneeded test of ret variable
    ext4: fix comment typo
    ext4: make ext4_block_zero_page_range static
    ext4: atomically set inode->i_flags in ext4_set_inode_flags()
    ext4: optimize Hurd tests when reading/writing inodes
    ext4: kill i_version support for Hurd-castrated file systems
    ext4: each filesystem creates and uses its own mb_cache
    fs/mbcache.c: doucple the locking of local from global data
    fs/mbcache.c: change block and index hash chain to hlist_bl_node
    ext4: Introduce FALLOC_FL_ZERO_RANGE flag for fallocate
    ext4: refactor ext4_fallocate code
    ext4: Update inode i_size after the preallocation
    ext4: fix partial cluster handling for bigalloc file systems
    ext4: delete path dealloc code in ext4_ext_handle_uninitialized_extents
    ext4: only call sync_filesystm() when remounting read-only
    fs: push sync_filesystem() down to the file system's remount_fs()
    jbd2: improve error messages for inconsistent journal heads
    jbd2: minimize region locked by j_list_lock in jbd2_journal_forget()
    jbd2: minimize region locked by j_list_lock in journal_get_create_access()
    ...

    Linus Torvalds
     
  • Pull pstore fixes from Tony Luck:
    "Series of small bug fixes for pstore"

    * tag 'please-pull-pstore' of git://git.kernel.org/pub/scm/linux/kernel/git/aegl/linux:
    pstore: Fix memory leak when decompress using big_oops_buf
    pstore: Fix buffer overflow while write offset equal to buffer size
    pstore: Correct the max_dump_cnt clearing of ramoops
    pstore: Fix NULL pointer fault if get NULL prz in ramoops_get_next_prz
    pstore: skip zero size persistent ram buffer in traverse
    pstore: clarify clearing of _read_cnt in ramoops_context

    Linus Torvalds
     
  • Pull ubifs updates from Artem Bityutskiy:
    "This pull request includes the 'ubiblock' driver which provides R/O
    block access to UBI volumes. It is useful for those who want to use
    squashfs on top of raw flash devices. UBI will provide bit-flip
    handling and wear-levelling in this case (e.g., if there are other UBI
    volumes with R/W UBIFS too).

    The driver is actually pretty small and it is part of the UBI kernel
    subsystem. Delivered by Ezequiel Garcia, along with a piece of
    documentation on the MTD web site and the user-space tool for creating
    and removing block devices"

    * tag 'upstream-3.15-rc1' of git://git.infradead.org/linux-ubifs:
    UBI: block: Remove __initdata from ubiblock_param_ops
    UBI: make UBI_IOCVOLCRBLK take a parameter for future usage
    UBI: rename block device ioctls
    UBI: block: Use ENOSYS as return value when CONFIG_UBIBLOCK=n
    UBI: block: Add CONFIG_BLOCK dependency
    UBI: block: Use 'u64' for the 64-bit dividend
    UBI: block: Mark init-only symbol as __initdata
    UBI: block: do not use term "attach"
    UBI: R/O block driver on top of UBI volumes

    Linus Torvalds
     
  • Pull fuse update from Miklos Szeredi:
    "This series adds cached writeback support to fuse, improving write
    throughput"

    * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mszeredi/fuse:
    fuse: fix "uninitialized variable" warning
    fuse: Turn writeback cache on
    fuse: Fix O_DIRECT operations vs cached writeback misorder
    fuse: fuse_flush() should wait on writeback
    fuse: Implement write_begin/write_end callbacks
    fuse: restructure fuse_readpage()
    fuse: Flush files on wb close
    fuse: Trust kernel i_mtime only
    fuse: Trust kernel i_size only
    fuse: Connection bit for enabling writeback
    fuse: Prepare to handle short reads
    fuse: Linking file to inode helper

    Linus Torvalds
     
  • Pull dlm updates from David Teigland:
    "This set includes a couple trivial cleanups and changes recovery log
    messages from DEBUG to INFO"

    * tag 'dlm-3.15' of git://git.kernel.org/pub/scm/linux/kernel/git/teigland/linux-dlm:
    dlm: use INFO for recovery messages
    fs: Include appropriate header file in dlm/ast.c
    dlm: silence a harmless use after free warning

    Linus Torvalds
     
  • Pull btrfs changes from Chris Mason:
    "This is a pretty long stream of bug fixes and performance fixes.

    Qu Wenruo has replaced the btrfs async threads with regular kernel
    workqueues. We'll keep an eye out for performance differences, but
    it's nice to be using more generic code for this.

    We still have some corruption fixes and other patches coming in for
    the merge window, but this batch is tested and ready to go"

    * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mason/linux-btrfs: (108 commits)
    Btrfs: fix a crash of clone with inline extents's split
    btrfs: fix uninit variable warning
    Btrfs: take into account total references when doing backref lookup
    Btrfs: part 2, fix incremental send's decision to delay a dir move/rename
    Btrfs: fix incremental send's decision to delay a dir move/rename
    Btrfs: remove unnecessary inode generation lookup in send
    Btrfs: fix race when updating existing ref head
    btrfs: Add trace for btrfs_workqueue alloc/destroy
    Btrfs: less fs tree lock contention when using autodefrag
    Btrfs: return EPERM when deleting a default subvolume
    Btrfs: add missing kfree in btrfs_destroy_workqueue
    Btrfs: cache extent states in defrag code path
    Btrfs: fix deadlock with nested trans handles
    Btrfs: fix possible empty list access when flushing the delalloc inodes
    Btrfs: split the global ordered extents mutex
    Btrfs: don't flush all delalloc inodes when we doesn't get s_umount lock
    Btrfs: reclaim delalloc metadata more aggressively
    Btrfs: remove unnecessary lock in may_commit_transaction()
    Btrfs: remove the unnecessary flush when preparing the pages
    Btrfs: just do dirty page flush for the inode with compression before direct IO
    ...

    Linus Torvalds
     
  • Pull GFS2 updates from Steven Whitehouse:
    "One of the main highlights this time, is not the patches themselves
    but instead the widening contributor base. It is good to see that
    interest is increasing in GFS2, and I'd like to thank all the
    contributors to this patch set.

    In addition to the usual set of bug fixes and clean ups, there are
    patches to improve inode creation performance when xattrs are required
    and some improvements to the transaction code which is intended to
    help improve scalability after further changes in due course.

    Journal extent mapping is also updated to make it more efficient and
    again, this is a foundation for future work in this area.

    The maximum number of ACLs has been increased to 300 (for a 4k block
    size) which means that even with a few additional xattrs from selinux,
    everything should fit within a single fs block.

    There is also a patch to bring GFS2's own copy of the writepages code
    up to the same level as the core VFS. Eventually we may be able to
    merge some of this code, since it is fairly similar.

    The other major change this time, is bringing consistency to the
    printing of messages via fs_, pr_ macros"

    * tag 'gfs2-merge-window' of git://git.kernel.org/pub/scm/linux/kernel/git/steve/gfs2-3.0-nmw: (29 commits)
    GFS2: Fix address space from page function
    GFS2: Fix uninitialized VFS inode in gfs2_create_inode
    GFS2: Fix return value in slot_get()
    GFS2: inline function gfs2_set_mode
    GFS2: Remove extraneous function gfs2_security_init
    GFS2: Increase the max number of ACLs
    GFS2: Re-add a call to log_flush_wait when flushing the journal
    GFS2: Ensure workqueue is scheduled after noexp request
    GFS2: check NULL return value in gfs2_ok_to_move
    GFS2: Convert gfs2_lm_withdraw to use fs_err
    GFS2: Use fs_ more often
    GFS2: Use pr_ more consistently
    GFS2: Move recovery variables to journal structure in memory
    GFS2: global conversion to pr_foo()
    GFS2: return -E2BIG if hit the maximum limits of ACLs
    GFS2: Clean up journal extent mapping
    GFS2: replace kmalloc - __vmalloc / memset 0
    GFS2: Remove extra "if" in gfs2_log_flush()
    fs: NULL dereference in posix_acl_to_xattr()
    GFS2: Move log buffer accounting to transaction
    ...

    Linus Torvalds
     
  • Pull file locking updates from Jeff Layton:
    "Highlights:

    - maintainership change for fs/locks.c. Willy's not interested in
    maintaining it these days, and is OK with Bruce and I taking it.
    - fix for open vs setlease race that Al ID'ed
    - cleanup and consolidation of file locking code
    - eliminate unneeded BUG() call
    - merge of file-private lock implementation"

    * 'locks-3.15' of git://git.samba.org/jlayton/linux:
    locks: make locks_mandatory_area check for file-private locks
    locks: fix locks_mandatory_locked to respect file-private locks
    locks: require that flock->l_pid be set to 0 for file-private locks
    locks: add new fcntl cmd values for handling file private locks
    locks: skip deadlock detection on FL_FILE_PVT locks
    locks: pass the cmd value to fcntl_getlk/getlk64
    locks: report l_pid as -1 for FL_FILE_PVT locks
    locks: make /proc/locks show IS_FILE_PVT locks as type "FLPVT"
    locks: rename locks_remove_flock to locks_remove_file
    locks: consolidate checks for compatible filp->f_mode values in setlk handlers
    locks: fix posix lock range overflow handling
    locks: eliminate BUG() call when there's an unexpected lock on file close
    locks: add __acquires and __releases annotations to locks_start and locks_stop
    locks: remove "inline" qualifier from fl_link manipulation functions
    locks: clean up comment typo
    locks: close potential race between setlease and open
    MAINTAINERS: update entry for fs/locks.c

    Linus Torvalds
     
  • Pull renameat2 system call from Miklos Szeredi:
    "This adds a new syscall, renameat2(), which is the same as renameat()
    but with a flags argument.

    The purpose of extending rename is to add cross-rename, a symmetric
    variant of rename, which exchanges the two files. This allows
    interesting things, which were not possible before, for example
    atomically replacing a directory tree with a symlink, etc... This
    also allows overlayfs and friends to operate on whiteouts atomically.

    Andy Lutomirski also suggested a "noreplace" flag, which disables the
    overwriting behavior of rename.

    These two flags, RENAME_EXCHANGE and RENAME_NOREPLACE are only
    implemented for ext4 as an example and for testing"

    * 'cross-rename' of git://git.kernel.org/pub/scm/linux/kernel/git/mszeredi/vfs:
    ext4: add cross rename support
    ext4: rename: split out helper functions
    ext4: rename: move EMLINK check up
    ext4: rename: create ext4_renament structure for local vars
    vfs: add cross-rename
    vfs: lock_two_nondirectories: allow directory args
    security: add flags to rename hooks
    vfs: add RENAME_NOREPLACE flag
    vfs: add renameat2 syscall
    vfs: rename: use common code for dir and non-dir
    vfs: rename: move d_move() up
    vfs: add d_is_dir()

    Linus Torvalds