1. 07 Jul, 2015 1 commit
  2. 03 Jul, 2015 7 commits
    • Russell King's avatar
      ARM: avoid unwanted GCC memset()/memcpy() optimisations for IO variants · 1bd46782
      Russell King authored
      We don't want GCC optimising our memset_io(), memcpy_fromio() or
      memcpy_toio() variants, so we must not call one of the standard
      functions.  Provide a separate name for our assembly memcpy() and
      memset() functions, and use that instead, thereby bypassing GCC's
      ability to optimise these operations.
      
      GCCs optimisation may introduce unaligned accesses which are invalid
      for device mappings.
      Signed-off-by: default avatarRussell King <rmk+kernel@arm.linux.org.uk>
      1bd46782
    • Russell King's avatar
      9ab79bb2
    • Russell King's avatar
      ARM: io: convert ioremap*() to functions · 20a1080d
      Russell King authored
      Convert the ioremap*() preprocessor macros to real functions, moving
      them out of line.  This allows us to kill off __arm_ioremap(), and
      __arm_iounmap() helpers, and remove __arm_ioremap_pfn_caller() from
      global view.
      Signed-off-by: default avatarRussell King <rmk+kernel@arm.linux.org.uk>
      20a1080d
    • Russell King's avatar
      ARM: io: fix ioremap_wt() implementation · 1e2c727f
      Russell King authored
      ioremap_wt() was added by aliasing it to ioremap_nocache(), which is a
      device mapping.  Device mappings do not allow unaligned accesses, but
      it appears that GCC is able to inline its own memcpy() implementation
      which may use such accesses.  The only user of this is pmem, which
      uses memcpy() on the region.
      
      Therefore, this is unsafe.  We must implement ioremap_wt() correctly
      for ARM, or not at all.
      
      This patch adds a more correct implementation by re-using ioremap_wc()
      to provide a normal-memory non-cacheable mapping.
      Signed-off-by: default avatarRussell King <rmk+kernel@arm.linux.org.uk>
      1e2c727f
    • Russell King's avatar
      ARM: io: document ARM specific behaviour of ioremap*() implementations · ac5e2f17
      Russell King authored
      Add documentation of the ARM specific behaviour of the mappings setup by
      the ioremap() series of macros.
      Signed-off-by: default avatarRussell King <rmk+kernel@arm.linux.org.uk>
      ac5e2f17
    • Russell King's avatar
      ARM: fix lockdep unannotated irqs-off warning · 11b8b25c
      Russell King authored
      Wolfram Sang reported an unannotated irqs-off warning from lockdep:
      
      WARNING: CPU: 0 PID: 282 at kernel/locking/lockdep.c:3557 check_flags+0x84/0x1f4()
      DEBUG_LOCKS_WARN_ON(current->hardirqs_enabled)
      CPU: 0 PID: 282 Comm: rcS Tainted: G        W 4.1.0-00002-g5b076054611833 #179
      Hardware name: Generic Emma Mobile EV2 (Flattened Device Tree)
      Backtrace:
      [<c0012c94>] (dump_backtrace) from [<c0012e3c>] (show_stack+0x18/0x1c)
       r6:c02dcc67 r5:00000009 r4:00000000 r3:00400000
      [<c0012e24>] (show_stack) from [<c02510c8>] (dump_stack+0x20/0x28)
      [<c02510a8>] (dump_stack) from [<c0022c44>] (warn_slowpath_common+0x8c/0xb4)
      [<c0022bb8>] (warn_slowpath_common) from [<c0022cd8>] (warn_slowpath_fmt+0x38/0x40)
       r8:c780f470 r7:00000000 r6:00000000 r5:c03b0570 r4:c0b7ec04
      [<c0022ca4>] (warn_slowpath_fmt) from [<c004cd38>] (check_flags+0x84/0x1f4)
       r3:c02e13d8 r2:c02dceaa
      [<c004ccb4>] (check_flags) from [<c0050e50>] (lock_acquire+0x4c/0xbc)
       r5:00000000 r4:60000193
      [<c0050e04>] (lock_acquire) from [<c0256000>] (_raw_spin_lock+0x34/0x44)
       r9:000a8d5c r8:00000001 r7:c7806000 r6:c780f460 r5:c03b06a0 r4:c780f460
      [<c0255fcc>] (_raw_spin_lock) from [<c005a8cc>] (handle_fasteoi_irq+0x20/0x11c)
       r4:c780f400
      [<c005a8ac>] (handle_fasteoi_irq) from [<c0057a4c>] (generic_handle_irq+0x28/0x38)
       r6:00000000 r5:c03b038c r4:00000012 r3:c005a8ac
      [<c0057a24>] (generic_handle_irq) from [<c0057ae4>] (__handle_domain_irq+0x88/0xa8)
       r4:00000000 r3:00000026
      [<c0057a5c>] (__handle_domain_irq) from [<c000a3cc>] (gic_handle_irq+0x40/0x58)
       r8:10c5347d r7:10c5347d r6:c35b1fb0 r5:c03a6304 r4:c8802000 r3:c35b1fb0
      [<c000a38c>] (gic_handle_irq) from [<c0013bc8>] (__irq_usr+0x48/0x60)
      Exception stack(0xc35b1fb0 to 0xc35b1ff8)
      1fa0:                                     00000061 00000000 000ab736 00000066
      1fc0: 00000061 000aa1f0 000a8d54 000a8d54 000a8d88 000a8d5c 000a8cc8 000a8d68
      1fe0: 72727272 bef8a528 000398c0 00031334 20000010 ffffffff
       r6:ffffffff r5:20000010 r4:00031334 r3:00000061
      ---[ end trace cb88537fdc8fa202 ]---
      possible reason: unannotated irqs-off.
      irq event stamp: 769
      hardirqs last  enabled at (769): [<c000f82c>] ret_fast_syscall+0x2c/0x54
      hardirqs last disabled at (768): [<c000f80c>] ret_fast_syscall+0xc/0x54
      softirqs last  enabled at (0): [<c0020ec4>] copy_process.part.65+0x2e8/0x11dc
      softirqs last disabled at (0): [<  (null)>]   (null)
      
      His kernel configuration had:
      CONFIG_PROVE_LOCKING=y
      CONFIG_TRACE_IRQFLAGS=y
      but no IRQSOFF_TRACER, which means entry from userspace can result in the
      kernel seeing IRQs off without being notified of that change of state.
      Change the IRQSOFF ifdef in the usr_entry macro to TRACE_IRQFLAGS instead.
      Tested-by: default avatarWolfram Sang <wsa+renesas@sang-engineering.com>
      Signed-off-by: default avatarRussell King <rmk+kernel@arm.linux.org.uk>
      11b8b25c
    • Szabolcs Nagy's avatar
      ARM: 8397/1: fix vdsomunge not to depend on glibc specific error.h · 13ee9fdb
      Szabolcs Nagy authored
      If the host toolchain is not glibc based then the arm kernel build
      fails with
      
       arch/arm/vdso/vdsomunge.c:53:19: fatal error: error.h: No such file or directory
      
      error.h is a glibc only header (ie not available in musl, newlib and
      bsd libcs).  Changed the error reporting to standard conforming code
      to avoid depending on specific C implementations.
      Signed-off-by: default avatarSzabolcs Nagy <szabolcs.nagy@arm.com>
      Acked-by: default avatarWill Deacon <will.deacon@arm.com>
      Fixes: 8512287a ("ARM: 8330/1: add VDSO user-space code")
      Cc: stable@vger.kernel.org
      Signed-off-by: default avatarNathan Lynch <nathan_lynch@mentor.com>
      Signed-off-by: default avatarRussell King <rmk+kernel@arm.linux.org.uk>
      13ee9fdb
  3. 01 Jul, 2015 6 commits
    • Linus Torvalds's avatar
      Merge git://git.kernel.org/pub/scm/linux/kernel/git/cmetcalf/linux-tile · 05a8256c
      Linus Torvalds authored
      Pull arch/tile updates from Chris Metcalf:
       "These are a grab bag of changes to improve debugging and respond to a
        variety of issues raised on LKML over the last couple of months"
      
      * git://git.kernel.org/pub/scm/linux/kernel/git/cmetcalf/linux-tile:
        tile: avoid a "label not used" warning in do_page_fault()
        tile: vdso: use raw_read_seqcount_begin() in vdso
        tile: force CONFIG_TILEGX if ARCH != tilepro
        tile: improve stack backtrace
        tile: fix "odd fault" warning for stack backtraces
        tile: set up initial stack top to honor STACK_TOP_DELTA
        tile: support delivering NMIs for multicore backtrace
        drivers/tty/hvc/hvc_tile.c: properly return -EAGAIN
        tile: add <asm/word-at-a-time.h> and enable support functions
        tile: use READ_ONCE() in arch_spin_is_locked()
        tile: modify arch_spin_unlock_wait() semantics
      05a8256c
    • Linus Torvalds's avatar
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/s390/linux · 0161b6e0
      Linus Torvalds authored
      Pull more s390 updates from Martin Schwidefsky:
       "There is one larger patch for the AP bus code to make it work with the
        longer reset periods of the latest crypto cards.
      
        A new default configuration, a naming cleanup for SMP and a few fixes"
      
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/s390/linux:
        s390/kdump: fix compile for !SMP
        s390/kdump: fix nosmt kernel parameter
        s390: new default configuration
        s390/smp: cleanup core vs. cpu in the SCLP interface
        s390/smp: fix sigp cpu detection loop
        s390/zcrypt: Fixed reset and interrupt handling of AP queues
        s390/kdump: fix REGSET_VX_LOW vector register ELF notes
        s390/bpf: Fix backward jumps
      0161b6e0
    • Linus Torvalds's avatar
      Merge branch 'for-next' of git://git.samba.org/sfrench/cifs-2.6 · 94521ca3
      Linus Torvalds authored
      Pull CIFS/SMB3 updates from Steve French:
       "Includes two bug fixes, as well as (minimal) support for the new
        protocol dialect (SMB3.1.1), and support for two ioctls including
        reflink (duplicate extents) file copy and set integrity"
      
      * 'for-next' of git://git.samba.org/sfrench/cifs-2.6:
        cifs: Unset CIFS_MOUNT_POSIX_PATHS flag when following dfs mounts
        Update negotiate protocol for SMB3.11 dialect
        Add ioctl to set integrity
        Add Get/Set Integrity Information structure definitions
        Add reflink copy over SMB3.11 with new FSCTL_DUPLICATE_EXTENTS
        Add SMB3.11 mount option synonym for new dialect
        add struct FILE_STANDARD_INFO
        Make dialect negotiation warning message easier to read
        Add defines and structs for smb3.1 dialect
        Allow parsing vers=3.11 on cifs mount
        client MUST ignore EncryptionKeyLength if CAP_EXTENDED_SECURITY is set
      94521ca3
    • Linus Torvalds's avatar
      Merge tag 'xfs-for-linus-4.2-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/dgc/linux-xfs · 68b4449d
      Linus Torvalds authored
      Pul xfs updates from Dave Chinner:
       "There's a couple of small API changes to the core DAX code which
        required small changes to the ext2 and ext4 code bases, but otherwise
        everything is within the XFS codebase.
      
        This update contains:
      
         - A new sparse on-disk inode record format to allow small extents to
           be used for inode allocation when free space is fragmented.
      
         - DAX support.  This includes minor changes to the DAX core code to
           fix problems with lock ordering and bufferhead mapping abuse.
      
         - transaction commit interface cleanup
      
         - removal of various unnecessary XFS specific type definitions
      
         - cleanup and optimisation of freelist preparation before allocation
      
         - various minor cleanups
      
         - bug fixes for
      	- transaction reservation leaks
      	- incorrect inode logging in unwritten extent conversion
      	- mmap lock vs freeze ordering
      	- remote symlink mishandling
      	- attribute fork removal issues"
      
      * tag 'xfs-for-linus-4.2-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/dgc/linux-xfs: (49 commits)
        xfs: don't truncate attribute extents if no extents exist
        xfs: clean up XFS_MIN_FREELIST macros
        xfs: sanitise error handling in xfs_alloc_fix_freelist
        xfs: factor out free space extent length check
        xfs: xfs_alloc_fix_freelist() can use incore perag structures
        xfs: remove xfs_caddr_t
        xfs: use void pointers in log validation helpers
        xfs: return a void pointer from xfs_buf_offset
        xfs: remove inst_t
        xfs: remove __psint_t and __psunsigned_t
        xfs: fix remote symlinks on V5/CRC filesystems
        xfs: fix xfs_log_done interface
        xfs: saner xfs_trans_commit interface
        xfs: remove the flags argument to xfs_trans_cancel
        xfs: pass a boolean flag to xfs_trans_free_items
        xfs: switch remaining xfs_trans_dup users to xfs_trans_roll
        xfs: check min blks for random debug mode sparse allocations
        xfs: fix sparse inodes 32-bit compile failure
        xfs: add initial DAX support
        xfs: add DAX IO path support
        ...
      68b4449d
    • Linus Torvalds's avatar
      Merge branch 'for-linus-4.2' of git://git.kernel.org/pub/scm/linux/kernel/git/mason/linux-btrfs · 043cd049
      Linus Torvalds authored
      Pull btrfs updates from Chris Mason:
       "Outside of our usual batch of fixes, this integrates the subvolume
        quota updates that Qu Wenruo from Fujitsu has been working on for a
        few releases now.  He gets an extra gold star for making btrfs smaller
        this time, and fixing a number of quota corners in the process.
      
        Dave Sterba tested and integrated Anand Jain's sysfs improvements.
        Outside of exporting a symbol (ack'd by Greg) these are all internal
        to btrfs and it's mostly cleanups and fixes.  Anand also attached some
        of our sysfs objects to our internal device management structs instead
        of an object off the super block.  It will make device management
        easier overall and it's a better fit for how the sysfs files are used.
        None of the existing sysfs files are moved around.
      
        Thanks for all the fixes everyone"
      
      * 'for-linus-4.2' of git://git.kernel.org/pub/scm/linux/kernel/git/mason/linux-btrfs: (87 commits)
        btrfs: delayed-ref: double free in btrfs_add_delayed_tree_ref()
        Btrfs: Check if kobject is initialized before put
        lib: export symbol kobject_move()
        Btrfs: sysfs: add support to show replacing target in the sysfs
        Btrfs: free the stale device
        Btrfs: use received_uuid of parent during send
        Btrfs: fix use-after-free in btrfs_replay_log
        btrfs: wait for delayed iputs on no space
        btrfs: qgroup: Make snapshot accounting work with new extent-oriented qgroup.
        btrfs: qgroup: Add the ability to skip given qgroup for old/new_roots.
        btrfs: ulist: Add ulist_del() function.
        btrfs: qgroup: Cleanup the old ref_node-oriented mechanism.
        btrfs: qgroup: Switch self test to extent-oriented qgroup mechanism.
        btrfs: qgroup: Switch to new extent-oriented qgroup mechanism.
        btrfs: qgroup: Switch rescan to new mechanism.
        btrfs: qgroup: Add new qgroup calculation function btrfs_qgroup_account_extents().
        btrfs: backref: Add special time_seq == (u64)-1 case for btrfs_find_all_roots().
        btrfs: qgroup: Add new function to record old_roots.
        btrfs: qgroup: Record possible quota-related extent for qgroup.
        btrfs: qgroup: Add function qgroup_update_counters().
        ...
      043cd049
    • Linus Torvalds's avatar
      Merge branch 'for-linus' of git://git.kernel.dk/linux-block · 43baed34
      Linus Torvalds authored
      Pull more block layer patches from Jens Axboe:
       "A few later arrivers that I didn't fold into the first pull request,
        so we had a chance to run some testing.  This contains:
      
         - NVMe:
              - Set of fixes from Keith
              - 4.4 and earlier gcc build fix from Andrew
      
         - small set of xen-blk{back,front} fixes from Bob Liu.
      
         - warnings fix for bogus inline statement in I_BDEV() from Geert.
      
         - error code fixup for SG_IO ioctl from Paolo Bonzini"
      
      * 'for-linus' of git://git.kernel.dk/linux-block:
        drivers/block/nvme-core.c: fix build with gcc-4.4.4
        bdi: Remove "inline" keyword from exported I_BDEV() implementation
        block: fix bogus EFAULT error from SG_IO ioctl
        NVMe: Fix filesystem deadlock on removal
        NVMe: Failed controller initialization fixes
        NVMe: Unify controller probe and resume
        NVMe: Don't use fake status on cancelled command
        NVMe: Fix device cleanup on initialization failure
        drivers: xen-blkfront: only talk_to_blkback() when in XenbusStateInitialising
        xen/block: add multi-page ring support
        driver: xen-blkfront: move talk_to_blkback to a more suitable place
        drivers: xen-blkback: delay pending_req allocation to connect_ring
      43baed34
  4. 29 Jun, 2015 18 commits
    • Sachin Prabhu's avatar
      cifs: Unset CIFS_MOUNT_POSIX_PATHS flag when following dfs mounts · 1dfd18d0
      Sachin Prabhu authored
      In a dfs setup where the client transitions from a server which supports
      posix paths to a server which doesn't support posix paths, the flag
      CIFS_MOUNT_POSIX_PATHS is not reset. This leads to the wrong directory
      separator being used causing smb commands to fail.
      
      Consider the following case where a dfs share on a samba server points
      to a share on windows smb server.
       # mount -t cifs -o .. //vm140-31/dfsroot/testwin/
       # ls -l /mnt; touch /mnt/a
       total 0
       touch: cannot touch ‘/mnt/a’: No such file or directory
      Signed-off-by: default avatarSachin Prabhu <sprabhu@redhat.com>
      Acked-by: default avatarJeff Layton <jlayton@samba.org>
      Signed-off-by: default avatarSteve French <steve.french@primarydata.com>
      1dfd18d0
    • Linus Torvalds's avatar
      Merge tag 'md/4.2' of git://neil.brown.name/md · 6aaf0da8
      Linus Torvalds authored
      Pull md updates from Neil Brown:
       "A mixed bag
      
         - a few bug fixes
         - some performance improvement that decrease lock contention
         - some clean-up
      
        Nothing major"
      
      * tag 'md/4.2' of git://neil.brown.name/md:
        md: clear Blocked flag on failed devices when array is read-only.
        md: unlock mddev_lock on an error path.
        md: clear mddev->private when it has been freed.
        md: fix a build warning
        md/raid5: ignore released_stripes check
        md/raid5: per hash value and exclusive wait_for_stripe
        md/raid5: split wait_for_stripe and introduce wait_for_quiescent
        wait: introduce wait_event_exclusive_cmd
        md: convert to kstrto*()
        md/raid10: make sync_request_write() call bio_copy_data()
      6aaf0da8
    • Christoph Lameter's avatar
      Fix kmalloc slab creation sequence · a9730fca
      Christoph Lameter authored
      This patch restores the slab creation sequence that was broken by commit
      4066c33d and also reverts the portions that introduced the
      KMALLOC_LOOP_XXX macros. Those can never really work since the slab creation
      is much more complex than just going from a minimum to a maximum number.
      
      The latest upstream kernel boots cleanly on my machine with a 64 bit x86
      configuration under KVM using either SLAB or SLUB.
      
      Fixes: 4066c33d ("support the slub_debug boot option")
      Reported-by: default avatarTheodore Ts'o <tytso@mit.edu>
      Signed-off-by: default avatarChristoph Lameter <cl@linux.com>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      a9730fca
    • Linus Torvalds's avatar
      Merge tag 'libnvdimm-for-4.2' of git://git.kernel.org/pub/scm/linux/kernel/git/djbw/nvdimm · 88793e5c
      Linus Torvalds authored
      Pull libnvdimm subsystem from Dan Williams:
       "The libnvdimm sub-system introduces, in addition to the
        libnvdimm-core, 4 drivers / enabling modules:
      
        NFIT:
          Instantiates an "nvdimm bus" with the core and registers memory
          devices (NVDIMMs) enumerated by the ACPI 6.0 NFIT (NVDIMM Firmware
          Interface table).
      
          After registering NVDIMMs the NFIT driver then registers "region"
          devices.  A libnvdimm-region defines an access mode and the
          boundaries of persistent memory media.  A region may span multiple
          NVDIMMs that are interleaved by the hardware memory controller.  In
          turn, a libnvdimm-region can be carved into a "namespace" device and
          bound to the PMEM or BLK driver which will attach a Linux block
          device (disk) interface to the memory.
      
        PMEM:
          Initially merged in v4.1 this driver for contiguous spans of
          persistent memory address ranges is re-worked to drive
          PMEM-namespaces emitted by the libnvdimm-core.
      
          In this update the PMEM driver, on x86, gains the ability to assert
          that writes to persistent memory have been flushed all the way
          through the caches and buffers in the platform to persistent media.
          See memcpy_to_pmem() and wmb_pmem().
      
        BLK:
          This new driver enables access to persistent memory media through
          "Block Data Windows" as defined by the NFIT.  The primary difference
          of this driver to PMEM is that only a small window of persistent
          memory is mapped into system address space at any given point in
          time.
      
          Per-NVDIMM windows are reprogrammed at run time, per-I/O, to access
          different portions of the media.  BLK-mode, by definition, does not
          support DAX.
      
        BTT:
          This is a library, optionally consumed by either PMEM or BLK, that
          converts a byte-accessible namespace into a disk with atomic sector
          update semantics (prevents sector tearing on crash or power loss).
      
          The sinister aspect of sector tearing is that most applications do
          not know they have a atomic sector dependency.  At least today's
          disk's rarely ever tear sectors and if they do one almost certainly
          gets a CRC error on access.  NVDIMMs will always tear and always
          silently.  Until an application is audited to be robust in the
          presence of sector-tearing the usage of BTT is recommended.
      
        Thanks to: Ross Zwisler, Jeff Moyer, Vishal Verma, Christoph Hellwig,
        Ingo Molnar, Neil Brown, Boaz Harrosh, Robert Elliott, Matthew Wilcox,
        Andy Rudoff, Linda Knippers, Toshi Kani, Nicholas Moulin, Rafael
        Wysocki, and Bob Moore"
      
      * tag 'libnvdimm-for-4.2' of git://git.kernel.org/pub/scm/linux/kernel/git/djbw/nvdimm: (33 commits)
        arch, x86: pmem api for ensuring durability of persistent memory updates
        libnvdimm: Add sysfs numa_node to NVDIMM devices
        libnvdimm: Set numa_node to NVDIMM devices
        acpi: Add acpi_map_pxm_to_online_node()
        libnvdimm, nfit: handle unarmed dimms, mark namespaces read-only
        pmem: flag pmem block devices as non-rotational
        libnvdimm: enable iostat
        pmem: make_request cleanups
        libnvdimm, pmem: fix up max_hw_sectors
        libnvdimm, blk: add support for blk integrity
        libnvdimm, btt: add support for blk integrity
        fs/block_dev.c: skip rw_page if bdev has integrity
        libnvdimm: Non-Volatile Devices
        tools/testing/nvdimm: libnvdimm unit test infrastructure
        libnvdimm, nfit, nd_blk: driver for BLK-mode access persistent memory
        nd_btt: atomic sector updates
        libnvdimm: infrastructure for btt devices
        libnvdimm: write blk label set
        libnvdimm: write pmem label set
        libnvdimm: blk labels and namespace instantiation
        ...
      88793e5c
    • Linus Torvalds's avatar
      Merge tag 'dmaengine-4.2-rc1' of git://git.infradead.org/users/vkoul/slave-dma · 1bc5e157
      Linus Torvalds authored
      Pull dmaengine updates from Vinod Koul:
       "This time we have support for few new devices, few new features and
        odd fixes spread thru the subsystem.
      
        New devices added:
         - support for CSRatlas7 dma controller
         - Allwinner H3(sun8i) controller
         - TI DMA crossbar driver on DRA7x
         - new pxa driver
      
        New features added:
         - memset support is bought back now that we have a user in xdmac controller
         - interleaved transfers support different source and destination strides
         - supporting DMA routers and configuration thru DT
         - support for reusing descriptors
         - xdmac memset and interleaved transfer support
         - hdmac support for interleaved transfers
         - omap-dma support for memcpy
      
        Others:
         - Constify platform_device_id
         - mv_xor fixes and improvements"
      
      * tag 'dmaengine-4.2-rc1' of git://git.infradead.org/users/vkoul/slave-dma: (46 commits)
        dmaengine: xgene: fix file permission
        dmaengine: fsl-edma: clear pending interrupts on initialization
        dmaengine: xdmac: Add memset support
        Documentation: dmaengine: document DMA_CTRL_ACK
        dmaengine: virt-dma: don't always free descriptor upon completion
        dmaengine: Revert "drivers/dma: remove unused support for MEMSET operations"
        dmaengine: hdmac: Implement interleaved transfers
        dmaengine: Move icg helpers to global header
        dmaengine: mv_xor: improve descriptors list handling and reduce locking
        dmaengine: mv_xor: Enlarge descriptor pool size
        dmaengine: mv_xor: add support for a38x command in descriptor mode
        dmaengine: mv_xor: Rename function for consistent naming
        dmaengine: mv_xor: bug fix for racing condition in descriptors cleanup
        dmaengine: pl330: fix wording in mcbufsz message
        dmaengine: sirf: add CSRatlas7 SoC support
        dmaengine: xgene-dma: Fix "incorrect type in assignement" warnings
        dmaengine: fix kernel-doc documentation
        dmaengine: pxa_dma: add support for legacy transition
        dmaengine: pxa_dma: add debug information
        dmaengine: pxa: add pxa dmaengine driver
        ...
      1bc5e157
    • Linus Torvalds's avatar
      Merge tag 'please-pull-misc-4.2' of git://git.kernel.org/pub/scm/linux/kernel/git/aegl/linux · f199b663
      Linus Torvalds authored
      Pull ia64 updates from Tony Luck:
       "Pair of ia64 cleanups"
      
      * tag 'please-pull-misc-4.2' of git://git.kernel.org/pub/scm/linux/kernel/git/aegl/linux:
        ia64: Use setup_timer
        ia64: export flush_icache_range for module use
      f199b663
    • Linus Torvalds's avatar
      Merge tag 'linux-kselftest-4.2-rc1' of... · d93a74a9
      Linus Torvalds authored
      Merge tag 'linux-kselftest-4.2-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/shuah/linux-kselftest
      
      Pull kselftest update from Shuah Khan:
       "This update adds two new test suites: futex and seccomp.
      
        In addition, it includes fixes for bugs in timers, other tests, and
        compile framework.  It introduces new quicktest feature to enable
        users to choose to run tests that complete in a short time"
      
      * tag 'linux-kselftest-4.2-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/shuah/linux-kselftest:
        selftests: add quicktest support
        selftests: add seccomp suite
        selftest, x86: fix incorrect comment
        tools selftests: Fix 'clean' target with make 3.81
        selftests/futex: Add .gitignore
        kselftest: Add exit code defines
        selftests: Add futex tests to the top-level Makefile
        selftests/futex: Increment ksft pass and fail counters
        selftests/futex: Update Makefile to use lib.mk
        selftests: Add futex functional tests
        kselftests: timers: Check _ALARM clockids are supported before suspending
        kselftests: timers: Ease alarmtimer-suspend unreasonable latency value
        kselftests: timers: Increase delay between suspends in alarmtimer-suspend
        selftests/exec: do not install subdir as it is already created
        selftests/ftrace: install test.d
        selftests: copy TEST_DIRS to INSTALL_PATH
        Test compaction of mlocked memory
        selftests/mount: output WARN messages when mount test skipped
        selftests/timers: Make git ignore all binaries in timers test suite
      d93a74a9
    • Russell King's avatar
      ARM: add helpful message when truncating physical memory · eeb3fee8
      Russell King authored
      Add a nmessage to suggest that HIGHMEM is enabled when physical memory
      is truncated due to lack of virtual address space to map it in the low
      memory mapping.
      Signed-off-by: default avatarRussell King <rmk+kernel@arm.linux.org.uk>
      eeb3fee8
    • Russell King's avatar
      ARM: add help text for HIGHPTE configuration entry · b4d103d1
      Russell King authored
      Add some help text for the HIGHPTE configuration entry.  This comes from
      the x86 entry, but reworded to be more a more accurate description of
      what this option does.
      Signed-off-by: default avatarRussell King <rmk+kernel@arm.linux.org.uk>
      b4d103d1
    • Russell King's avatar
      ARM: fix DEBUG_SET_MODULE_RONX build dependencies · e6ae32c3
      Russell King authored
      randconfig testing reveals that DEBUG_SET_MODULE_RONX needs to depend on
      MMU otherwise these build errors are observed:
      
      kernel/built-in.o: In function `set_section_ro_nx':
      kernel/module.c:1738: undefined reference to `set_memory_nx'
      kernel/built-in.o: In function `set_page_attributes':
      kernel/module.c:1709: undefined reference to `set_memory_ro'
      
      This is because the pageattr functions are not built for !MMU configs as
      they don't have page tables.
      Signed-off-by: default avatarRussell King <rmk+kernel@arm.linux.org.uk>
      e6ae32c3
    • Vitaly Andrianov's avatar
      ARM: 8396/1: use phys_addr_t in pfn_to_kaddr() · e4886664
      Vitaly Andrianov authored
      This patch fixes pfn_to_kaddr() to use phys_addr_t.  Without this,
      this macro is broken on LPAE systems. For physical addresses above
      first 4GB result of shifting pfn with PAGE_SHIFT may be truncated.
      Signed-off-by: default avatarVitaly Andrianov <vitalya@ti.com>
      Acked-by: default avatarNicolas Pitre <nico@linaro.org>
      Acked-by: default avatarSantosh Shilimkar <ssantosh@kernel.org>
      Signed-off-by: default avatarRussell King <rmk+kernel@arm.linux.org.uk>
      e4886664
    • Laura Abbott's avatar
      ARM: 8394/1: update memblock limit after mapping lowmem · 3de1f52a
      Laura Abbott authored
      The memblock limit is currently used in find_limits
      to find the bounds for ZONE_NORMAL. The memblock
      limit may need to be rounded down a PMD size to ensure
      allocations are fully mapped though. This has the side
      effect of reducing the amount of memory in ZONE_NORMAL.
      Once all lowmem is mapped, it's safe to change the memblock
      limit back to include the unaligned section. Adjust the
      memblock limit after lowmem mapping is complete.
      
      Before:
       # cat /proc/zoneinfo | grep managed
              managed  62907
              managed  424
      
      After:
       # cat /proc/zoneinfo | grep managed
              managed  63331
      Signed-off-by: default avatarLaura Abbott <labbott@fedoraproject.org>
      Reviewed-by: default avatarMark Rutland <mark.rutland@arm.com>
      Tested-by: default avatarMark Rutland <mark.rutland@arm.com>
      Signed-off-by: default avatarRussell King <rmk+kernel@arm.linux.org.uk>
      3de1f52a
    • Stephen Boyd's avatar
      ARM: 8393/1: smp: Fix suspicious RCU usage with ipi tracepoints · 398f7456
      Stephen Boyd authored
      John Stultz reports an RCU splat on boot with ARM ipi trace
      events enabled.
      
      ===============================
      [ INFO: suspicious RCU usage. ]
      4.1.0-rc7-00033-gb5bed2f #153 Not tainted
      -------------------------------
      include/trace/events/ipi.h:68 suspicious rcu_dereference_check() usage!
      
      other info that might help us debug this:
      
      RCU used illegally from idle CPU!
      rcu_scheduler_active = 1, debug_locks = 0
      RCU used illegally from extended quiescent state!
      no locks held by swapper/0/0.
      
      stack backtrace:
      CPU: 0 PID: 0 Comm: swapper/0 Not tainted 4.1.0-rc7-00033-gb5bed2f #153
      Hardware name: Qualcomm (Flattened Device Tree)
      [<c0216b08>] (unwind_backtrace) from [<c02136e8>] (show_stack+0x10/0x14)
      [<c02136e8>] (show_stack) from [<c075e678>] (dump_stack+0x70/0xbc)
      [<c075e678>] (dump_stack) from [<c0215a80>] (handle_IPI+0x428/0x604)
      [<c0215a80>] (handle_IPI) from [<c020942c>] (gic_handle_irq+0x54/0x5c)
      [<c020942c>] (gic_handle_irq) from [<c0766604>] (__irq_svc+0x44/0x7c)
      Exception stack(0xc09f3f48 to 0xc09f3f90)
      3f40:                   00000001 00000001 00000000 c09f73b8 c09f4528 c0a5de9c
      3f60: c076b4f0 00000000 00000000 c09ef108 c0a5cec1 00000001 00000000 c09f3f90
      3f80: c026bf60 c0210ab8 20000113 ffffffff
      [<c0766604>] (__irq_svc) from [<c0210ab8>] (arch_cpu_idle+0x20/0x3c)
      [<c0210ab8>] (arch_cpu_idle) from [<c02647f0>] (cpu_startup_entry+0x2c0/0x5dc)
      [<c02647f0>] (cpu_startup_entry) from [<c099bc1c>] (start_kernel+0x358/0x3c4)
      [<c099bc1c>] (start_kernel) from [<8020807c>] (0x8020807c)
      
      At this point in the IPI handling path we haven't called
      irq_enter() yet, so RCU doesn't know that we're about to exit
      idle and properly warns that we're using RCU from an idle CPU.
      Use trace_ipi_entry_rcuidle() instead of trace_ipi_entry() so
      that RCU is informed about our exit from idle.
      
      Fixes: 365ec7b1 ("ARM: add IPI tracepoints")
      Reported-by: default avatarJohn Stultz <john.stultz@linaro.org>
      Tested-by: default avatarJohn Stultz <john.stultz@linaro.org>
      Acked-by: default avatarSteven Rostedt <rostedt@goodmis.org>
      Reviewed-by: default avatarPaul E. McKenney <paulmck@linux.vnet.ibm.com>
      Signed-off-by: default avatarStephen Boyd <sboyd@codeaurora.org>
      Signed-off-by: default avatarRussell King <rmk+kernel@arm.linux.org.uk>
      398f7456
    • Heiko Carstens's avatar
      s390/kdump: fix compile for !SMP · 1af135a1
      Heiko Carstens authored
      Fix this compile error:
      
      arch/s390/kernel/setup.c:875:2: error:
       implicit declaration of function 'smp_save_dump_cpus'
      Signed-off-by: default avatarHeiko Carstens <heiko.carstens@de.ibm.com>
      Signed-off-by: default avatarMartin Schwidefsky <schwidefsky@de.ibm.com>
      1af135a1
    • Steve French's avatar
      Update negotiate protocol for SMB3.11 dialect · ebb3a9d4
      Steve French authored
      Send negotiate contexts when SMB3.11 dialect is negotiated
      (ie the preauth and the encryption contexts) and
      Initialize SMB3.11 preauth negotiate context salt to random bytes
      
      Followon patch will update session setup and tree connect
      Signed-off-by: default avatarSteve French <steve.french@primarydata.com>
      ebb3a9d4
    • Steve French's avatar
      Add ioctl to set integrity · b3152e2c
      Steve French authored
      set integrity increases reliability of files stored on SMB3 servers.
      Add ioctl to allow setting this on files on SMB3 and later mounts.
      Signed-off-by: default avatarSteve French <steve.french@primarydata.com>
      b3152e2c
    • Steve French's avatar
    • Steve French's avatar
      Add reflink copy over SMB3.11 with new FSCTL_DUPLICATE_EXTENTS · 02b16665
      Steve French authored
       Getting fantastic copy performance with cp --reflink over SMB3.11
       using the new FSCTL_DUPLICATE_EXTENTS.
      
       This FSCTL was added in the SMB3.11 dialect (testing was
       against REFS file system) so have put it as a 3.11 protocol
       specific operation ("vers=3.1.1" on the mount).  Tested at
       the SMB3 plugfest in Redmond.
      
       It depends on the new FS Attribute (BLOCK_REFCOUNTING) which
       is used to advertise support for the ability to do this ioctl
       (if you can support multiple files pointing to the same block
       than this refcounting ability or equivalent is needed to
       support the new reflink-like duplicate extent SMB3 ioctl.
      Signed-off-by: default avatarSteve French <steve.french@primarydata.com>
      02b16665
  5. 28 Jun, 2015 8 commits