1. 16 Dec, 2016 15 commits
    • Linus Torvalds's avatar
      Merge branch 'for-linus-4.10' of git://git.kernel.org/pub/scm/linux/kernel/git/mason/linux-btrfs · 087a76d3
      Linus Torvalds authored
      Pull btrfs updates from Chris Mason:
       "Jeff Mahoney and Dave Sterba have a really nice set of cleanups in
        here, and Christoph pitched in corrections/improvements to make btrfs
        use proper helpers for bio walking instead of doing it by hand.
      
        There are some key fixes as well, including some long standing bugs
        that took forever to track down in btrfs_drop_extents and during
        balance"
      
      * 'for-linus-4.10' of git://git.kernel.org/pub/scm/linux/kernel/git/mason/linux-btrfs: (77 commits)
        btrfs: limit async_work allocation and worker func duration
        Revert "Btrfs: adjust len of writes if following a preallocated extent"
        Btrfs: don't WARN() in btrfs_transaction_abort() for IO errors
        btrfs: opencode chunk locking, remove helpers
        btrfs: remove root parameter from transaction commit/end routines
        btrfs: split btrfs_wait_marked_extents into normal and tree log functions
        btrfs: take an fs_info directly when the root is not used otherwise
        btrfs: simplify btrfs_wait_cache_io prototype
        btrfs: convert extent-tree tracepoints to use fs_info
        btrfs: root->fs_info cleanup, access fs_info->delayed_root directly
        btrfs: root->fs_info cleanup, add fs_info convenience variables
        btrfs: root->fs_info cleanup, update_block_group{,flags}
        btrfs: root->fs_info cleanup, lock/unlock_chunks
        btrfs: root->fs_info cleanup, btrfs_calc_{trans,trunc}_metadata_size
        btrfs: pull node/sector/stripe sizes out of root and into fs_info
        btrfs: root->fs_info cleanup, io_ctl_init
        btrfs: root->fs_info cleanup, use fs_info->dev_root everywhere
        btrfs: struct reada_control.root -> reada_control.fs_info
        btrfs: struct btrfsic_state->root should be an fs_info
        btrfs: alloc_reserved_file_extent trace point should use extent_root
        ...
      087a76d3
    • Linus Torvalds's avatar
      Merge tag 'nfsd-4.10' of git://linux-nfs.org/~bfields/linux · 759b2656
      Linus Torvalds authored
      Pull nfsd updates from Bruce Fields:
       "The one new feature is support for a new NFSv4.2 mode_umask attribute
        that makes ACL inheritance a little more useful in environments that
        default to restrictive umasks. Requires client-side support, also on
        its way for 4.10.
      
        Other than that, miscellaneous smaller fixes and cleanup, especially
        to the server rdma code"
      
      [ The client side of the umask attribute was merged yesterday ]
      
      * tag 'nfsd-4.10' of git://linux-nfs.org/~bfields/linux:
        nfsd: add support for the umask attribute
        sunrpc: use DEFINE_SPINLOCK()
        svcrdma: Further clean-up of svc_rdma_get_inv_rkey()
        svcrdma: Break up dprintk format in svc_rdma_accept()
        svcrdma: Remove unused variable in rdma_copy_tail()
        svcrdma: Remove unused variables in xprt_rdma_bc_allocate()
        svcrdma: Remove svc_rdma_op_ctxt::wc_status
        svcrdma: Remove DMA map accounting
        svcrdma: Remove BH-disabled spin locking in svc_rdma_send()
        svcrdma: Renovate sendto chunk list parsing
        svcauth_gss: Close connection when dropping an incoming message
        svcrdma: Clear xpt_bc_xps in xprt_setup_rdma_bc() error exit arm
        nfsd: constify reply_cache_stats_operations structure
        nfsd: update workqueue creation
        sunrpc: GFP_KERNEL should be GFP_NOFS in crypto code
        nfsd: catch errors in decode_fattr earlier
        nfsd: clean up supported attribute handling
        nfsd: fix error handling for clients that fail to return the layout
        nfsd: more robust allocation failure handling in nfsd_reply_cache_init
      759b2656
    • Linus Torvalds's avatar
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs · 9a19a6db
      Linus Torvalds authored
      Pull vfs updates from Al Viro:
      
       - more ->d_init() stuff (work.dcache)
      
       - pathname resolution cleanups (work.namei)
      
       - a few missing iov_iter primitives - copy_from_iter_full() and
         friends. Either copy the full requested amount, advance the iterator
         and return true, or fail, return false and do _not_ advance the
         iterator. Quite a few open-coded callers converted (and became more
         readable and harder to fuck up that way) (work.iov_iter)
      
       - several assorted patches, the big one being logfs removal
      
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs:
        logfs: remove from tree
        vfs: fix put_compat_statfs64() does not handle errors
        namei: fold should_follow_link() with the step into not-followed link
        namei: pass both WALK_GET and WALK_MORE to should_follow_link()
        namei: invert WALK_PUT logics
        namei: shift interpretation of LOOKUP_FOLLOW inside should_follow_link()
        namei: saner calling conventions for mountpoint_last()
        namei.c: get rid of user_path_parent()
        switch getfrag callbacks to ..._full() primitives
        make skb_add_data,{_nocache}() and skb_copy_to_page_nocache() advance only on success
        [iov_iter] new primitives - copy_from_iter_full() and friends
        don't open-code file_inode()
        ceph: switch to use of ->d_init()
        ceph: unify dentry_operations instances
        lustre: switch to use of ->d_init()
      9a19a6db
    • Linus Torvalds's avatar
      Merge tag 'media/v4.10-1' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-media · bd9999cd
      Linus Torvalds authored
      Pull media updates from Mauro Carvalho Chehab:
      
       - new Mediatek drivers: mtk-mdp and mtk-vcodec
      
       - some additions at the media documentation
      
       - the CEC core and drivers were promoted from staging to mainstream
      
       - some cleanups at the DVB core
      
       - the LIRC serial driver got promoted from staging to mainstream
      
       - added a driver for Renesas R-Car FDP1 driver
      
       - add DVBv5 statistics support to mn88473 driver
      
       - several fixes related to printk continuation lines
      
       - add support for HSV encoding formats
      
       - lots of other cleanups, fixups and driver improvements.
      
      * tag 'media/v4.10-1' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-media: (496 commits)
        [media] v4l: tvp5150: Add missing break in set control handler
        [media] v4l: tvp5150: Don't inline the tvp5150_selmux() function
        [media] v4l: tvp5150: Compile tvp5150_link_setup out if !CONFIG_MEDIA_CONTROLLER
        [media] em28xx: don't store usb_device at struct em28xx
        [media] em28xx: use usb_interface for dev_foo() calls
        [media] em28xx: don't change the device's name
        [media] mn88472: fix chip id check on probe
        [media] mn88473: fix chip id check on probe
        [media] lirc: fix error paths in lirc_cdev_add()
        [media] s5p-mfc: Add support for MFC v8 available in Exynos 5433 SoCs
        [media] s5p-mfc: Rework clock handling
        [media] s5p-mfc: Don't keep clock prepared all the time
        [media] s5p-mfc: Kill all IS_ERR_OR_NULL in clocks management code
        [media] s5p-mfc: Remove dead conditional code
        [media] s5p-mfc: Ensure that clock is disabled before turning power off
        [media] s5p-mfc: Remove special clock rate management
        [media] s5p-mfc: Use printk_ratelimited for reporting ioctl errors
        [media] s5p-mfc: Set DMA_ATTR_ALLOC_SINGLE_PAGES
        [media] vivid: Set color_enc on HSV formats
        [media] v4l2-tpg: Init hv_enc field with a valid value
        ...
      bd9999cd
    • Linus Torvalds's avatar
      Merge tag 'edac/v4.10-1' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-edac · 9dfe495c
      Linus Torvalds authored
      Pull edac updates from Mauro Carvalho Chehab:
       "This contains the conversion of the EDAC uAPI documentation to ReST
        and the addition of the EDAC kAPI documentation to the driver-api
        docs.
      
        It also splits the EDAC headers by their functions"
      
      * tag 'edac/v4.10-1' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-edac:
        EDAC: Document HW_EVENT_ERR_DEFERRED type
        edac.rst: move concepts dictionary from edac.h
        edac: fix kenel-doc markups at edac.h
        edac: fix kernel-doc tags at the drivers/edac_*.h
        edac: adjust docs location at MAINTAINERS and 00-INDEX
        driver-api: create an edac.rst file with EDAC documentation
        edac: move documentation from edac_mc.c to edac_core.h
        edac: move documentation from edac_pci*.c to edac_pci.h
        edac: move documentation from edac_device to edac_core.h
        edac: rename edac_core.h to edac_mc.h
        edac: move EDAC device definitions to drivers/edac/edac_device.h
        edac: move EDAC PCI definitions to drivers/edac/edac_pci.h
        docs-rst: admin-guide: add documentation for EDAC
        edac.txt: Improve documentation, adding RAS introduction
        edac.txt: update information about newer Intel CPUs
        edac.txt: remove info that the Nehalem EDAC is experimental
        edac.txt: convert EDAC documentation to ReST
        edac.txt: add a section explaining the dimmX and rankX directories
        edac: edac_core.h: remove prototype for edac_pci_reset_delay_period()
        edac: edac_core.h: get rid of unused kobj_complete
      9dfe495c
    • Linus Torvalds's avatar
      Merge branch 'for-linus-4.10-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/rw/uml · 9936f44a
      Linus Torvalds authored
      Pull UML update from Richard Weinberger:
       "A performance enhancement for UML's block driver"
      
      * 'for-linus-4.10-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/rw/uml:
        um: UBD Improvements
      9936f44a
    • Linus Torvalds's avatar
      Merge tag 'nios2-v4.10-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/lftan/nios2 · 70f56cbb
      Linus Torvalds authored
      Pull arch/nios2 updates from Ley Foon Tan:
      
       - add screen_info
      
       - Convert pfn_valid to static inline
      
       - Extend !__ASSEMBLY__ section in asm/page.h
      
      * tag 'nios2-v4.10-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/lftan/nios2:
        nios2: add screen_info
        nios2: Convert pfn_valid to static inline
        nios2: Extend !__ASSEMBLY__ section in asm/page.h
      70f56cbb
    • Linus Torvalds's avatar
      Merge tag 'powerpc-4.10-1' of git://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux · de399813
      Linus Torvalds authored
      Pull powerpc updates from Michael Ellerman:
       "Highlights include:
      
         - Support for the kexec_file_load() syscall, which is a prereq for
           secure and trusted boot.
      
         - Prevent kernel execution of userspace on P9 Radix (similar to
           SMEP/PXN).
      
         - Sort the exception tables at build time, to save time at boot, and
           store them as relative offsets to save space in the kernel image &
           memory.
      
         - Allow building the kernel with thin archives, which should allow us
           to build an allyesconfig once some other fixes land.
      
         - Build fixes to allow us to correctly rebuild when changing the
           kernel endian from big to little or vice versa.
      
         - Plumbing so that we can avoid doing a full mm TLB flush on P9
           Radix.
      
         - Initial stack protector support (-fstack-protector).
      
         - Support for dumping the radix (aka. Linux) and hash page tables via
           debugfs.
      
         - Fix an oops in cxl coredump generation when cxl_get_fd() is used.
      
         - Freescale updates from Scott: "Highlights include 8xx hugepage
           support, qbman fixes/cleanup, device tree updates, and some misc
           cleanup."
      
         - Many and varied fixes and minor enhancements as always.
      
        Thanks to:
          Alexey Kardashevskiy, Andrew Donnellan, Aneesh Kumar K.V, Anshuman
          Khandual, Anton Blanchard, Balbir Singh, Bartlomiej Zolnierkiewicz,
          Christophe Jaillet, Christophe Leroy, Denis Kirjanov, Elimar
          Riesebieter, Frederic Barrat, Gautham R. Shenoy, Geliang Tang, Geoff
          Levand, Jack Miller, Johan Hovold, Lars-Peter Clausen, Libin,
          Madhavan Srinivasan, Michael Neuling, Nathan Fontenot, Naveen N.
          Rao, Nicholas Piggin, Pan Xinhui, Peter Senna Tschudin, Rashmica
          Gupta, Rui Teng, Russell Currey, Scott Wood, Simon Guo, Suraj
          Jitindar Singh, Thiago Jung Bauermann, Tobias Klauser, Vaibhav Jain"
      
      [ And thanks to Michael, who took time off from a new baby to get this
        pull request done.   - Linus ]
      
      * tag 'powerpc-4.10-1' of git://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux: (174 commits)
        powerpc/fsl/dts: add FMan node for t1042d4rdb
        powerpc/fsl/dts: add sg_2500_aqr105_phy4 alias on t1024rdb
        powerpc/fsl/dts: add QMan and BMan nodes on t1024
        powerpc/fsl/dts: add QMan and BMan nodes on t1023
        soc/fsl/qman: test: use DEFINE_SPINLOCK()
        powerpc/fsl-lbc: use DEFINE_SPINLOCK()
        powerpc/8xx: Implement support of hugepages
        powerpc: get hugetlbpage handling more generic
        powerpc: port 64 bits pgtable_cache to 32 bits
        powerpc/boot: Request no dynamic linker for boot wrapper
        soc/fsl/bman: Use resource_size instead of computation
        soc/fsl/qe: use builtin_platform_driver
        powerpc/fsl_pmc: use builtin_platform_driver
        powerpc/83xx/suspend: use builtin_platform_driver
        powerpc/ftrace: Fix the comments for ftrace_modify_code
        powerpc/perf: macros for power9 format encoding
        powerpc/perf: power9 raw event format encoding
        powerpc/perf: update attribute_group data structure
        powerpc/perf: factor out the event format field
        powerpc/mm/iommu, vfio/spapr: Put pages on VFIO container shutdown
        ...
      de399813
    • Linus Torvalds's avatar
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/s390/linux · 57ca04ab
      Linus Torvalds authored
      Pull m ore s390 updates from Martin Schwidefsky:
       "Over 95% of the changes in this pull request are related to the zcrypt
        driver. There are five improvements for zcrypt: the ID for the CEX6
        cards is added, workload balancing and multi-domain support are
        introduced, the debug logs are overhauled and a set of tracepoints is
        added.
      
        Then there are several patches in regard to inline assemblies. One
        compile fix and several missing memory clobbers. As far as we can tell
        the omitted memory clobbers have not caused any breakage.
      
        A small change to the PCI arch code, the machine can tells us how big
        the function measurement blocks are. The PCI function measurement will
        be disabled for a device if the queried length is larger than the
        allocated size for these blocks.
      
        And two more patches to correct five printk messages.
      
        That is it for s390 in regard to the 4.10 merge window. Happy holidays"
      
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/s390/linux: (23 commits)
        s390/pci: query fmb length
        s390/zcrypt: add missing memory clobber to ap_qci inline assembly
        s390/extmem: add missing memory clobber to dcss_set_subcodes
        s390/nmi: fix inline assembly constraints
        s390/lib: add missing memory barriers to string inline assemblies
        s390/cpumf: fix qsi inline assembly
        s390/setup: reword printk messages
        s390/dasd: fix typos in DASD error messages
        s390: fix compile error with memmove_early() inline assembly
        s390/zcrypt: tracepoint definitions for zcrypt device driver.
        s390/zcrypt: Rework debug feature invocations.
        s390/zcrypt: Improved invalid domain response handling.
        s390/zcrypt: Fix ap_max_domain_id for older machine types
        s390/zcrypt: Correct function bits for CEX2x and CEX3x cards.
        s390/zcrypt: Fixed attrition of AP adapters and domains
        s390/zcrypt: Introduce new zcrypt device status API
        s390/zcrypt: add multi domain support
        s390/zcrypt: Introduce workload balancing
        s390/zcrypt: get rid of ap_poll_requests
        s390/zcrypt: header for the AP inline assmblies
        ...
      57ca04ab
    • Michael Ellerman's avatar
      Merge branch 'next' of git://git.kernel.org/pub/scm/linux/kernel/git/scottwood/linux into next · c6f66347
      Michael Ellerman authored
      Freescale updates from Scott:
      
      "Highlights include 8xx hugepage support, qbman fixes/cleanup, device
      tree updates, and some misc cleanup."
      c6f66347
    • Linus Torvalds's avatar
      Merge tag 'nfs-for-4.10-1' of git://git.linux-nfs.org/projects/trondmy/linux-nfs · 73e2e0c9
      Linus Torvalds authored
      Pull NFS client updates from Trond Myklebust:
       "Highlights include:
      
        Stable bugfixes:
         - Fix a pnfs deadlock between read resends and layoutreturn
         - Don't invalidate the layout stateid while a layout return is
           outstanding
         - Don't schedule a layoutreturn if the layout stateid is marked as
           invalid
         - On a pNFS error, do not send LAYOUTGET until the LAYOUTRETURN is
           complete
         - SUNRPC: fix refcounting problems with auth_gss messages.
      
        Features:
         - Add client support for the NFSv4 umask attribute.
         - NFSv4: Correct support for flock() stateids.
         - Add a LAYOUTRETURN operation to CLOSE and DELEGRETURN when
           return-on-close is specified
         - Allow the pNFS/flexfiles layoutstat information to piggyback on
           LAYOUTRETURN
         - Optimise away redundant GETATTR calls when doing state recovery
           and/or when not required by cache revalidation rules or
           close-to-open cache consistency.
         - Attribute cache improvements
         - RPC/RDMA support for SG_GAP devices
      
        Bugfixes:
         - NFS: Fix performance regressions in readdir
         - pNFS/flexfiles: Fix a deadlock on LAYOUTGET
         - NFSv4: Add missing nfs_put_lock_context()
         - NFSv4.1: Fix regression in callback retry handling
         - Fix false positive NFSv4.0 trunking detection.
         - pNFS/flexfiles: Only send layoutstats updates for mirrors that were
           updated
         - Various layout stateid related bugfixes
         - RPC/RDMA bugfixes"
      
      * tag 'nfs-for-4.10-1' of git://git.linux-nfs.org/projects/trondmy/linux-nfs: (82 commits)
        SUNRPC: fix refcounting problems with auth_gss messages.
        nfs: add support for the umask attribute
        pNFS/flexfiles: Ensure we have enough buffer for layoutreturn
        pNFS/flexfiles: Remove a redundant parameter in ff_layout_encode_ioerr()
        pNFS/flexfiles: Fix a deadlock on LAYOUTGET
        pNFS: Layoutreturn must free the layout after the layout-private data
        pNFS/flexfiles: Fix ff_layout_add_ds_error_locked()
        NFSv4: Add missing nfs_put_lock_context()
        pNFS: Release NFS_LAYOUT_RETURN when invalidating the layout stateid
        NFSv4.1: Don't schedule lease recovery in nfs4_schedule_session_recovery()
        NFSv4.1: Handle NFS4ERR_BADSESSION/NFS4ERR_DEADSESSION replies to OP_SEQUENCE
        NFS: Only look at the change attribute cache state in nfs_check_verifier
        NFS: Fix incorrect size revalidation when holding a delegation
        NFS: Fix incorrect mapping revalidation when holding a delegation
        pNFS/flexfiles: Support sending layoutstats in layoutreturn
        pNFS/flexfiles: Minor refactoring before adding iostats to layoutreturn
        NFS: Fix up read of mirror stats
        pNFS/flexfiles: Clean up layoutstats
        pNFS/flexfiles: Refactor encoding of the layoutreturn payload
        pNFS: Add a layoutreturn callback to performa layout-private setup
        ...
      73e2e0c9
    • Linus Torvalds's avatar
      Merge tag 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mst/vhost · ed3c5a0b
      Linus Torvalds authored
      Pull virtio updates from Michael Tsirkin:
       "virtio, vhost: new device, fixes, speedups
      
        This includes the new virtio crypto device, and fixes all over the
        place. In particular enabling endian-ness checks for sparse builds
        found some bugs which this fixes. And it appears that everyone is in
        agreement that disabling endian-ness sparse checks shouldn't be
        necessary any longer.
      
        So this enables them for everyone, and drops the __CHECK_ENDIAN__ and
        __bitwise__ APIs.
      
        IRQ handling in virtio has been refactored somewhat, the larger switch
        to IRQ_SHARED will have to wait as it proved too aggressive"
      
      * tag 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mst/vhost: (34 commits)
        Makefile: drop -D__CHECK_ENDIAN__ from cflags
        fs/logfs: drop __CHECK_ENDIAN__
        Documentation/sparse: drop __CHECK_ENDIAN__
        linux: drop __bitwise__ everywhere
        checkpatch: replace __bitwise__ with __bitwise
        Documentation/sparse: drop __bitwise__
        tools: enable endian checks for all sparse builds
        linux/types.h: enable endian checks for all sparse builds
        virtio_mmio: Set dev.release() to avoid warning
        vhost: remove unused feature bit
        virtio_ring: fix description of virtqueue_get_buf
        vhost/scsi: Remove unused but set variable
        tools/virtio: use {READ,WRITE}_ONCE() in uaccess.h
        vringh: kill off ACCESS_ONCE()
        tools/virtio: fix READ_ONCE()
        crypto: add virtio-crypto driver
        vhost: cache used event for better performance
        vsock: lookup and setup guest_cid inside vhost_vsock_lock
        virtio_pci: split vp_try_to_find_vqs into INTx and MSI-X variants
        virtio_pci: merge vp_free_vectors into vp_del_vqs
        ...
      ed3c5a0b
    • Andreas Gruenbacher's avatar
      nfsd: add support for the umask attribute · 47057abd
      Andreas Gruenbacher authored
      Clients can set the umask attribute when creating files to cause the
      server to apply it always except when inheriting permissions from the
      parent directory.  That way, the new files will end up with the same
      permissions as files created locally.
      
      See https://tools.ietf.org/html/draft-ietf-nfsv4-umask-02 for more
      details.
      Signed-off-by: default avatarAndreas Gruenbacher <agruenba@redhat.com>
      Signed-off-by: default avatarJ. Bruce Fields <bfields@redhat.com>
      47057abd
    • Linus Torvalds's avatar
      Merge branch 'for-linus' of git://git.armlinux.org.uk/~rmk/linux-arm · 66d46672
      Linus Torvalds authored
      Pull ARM updates from Russell King:
      
       - an update for clkdev registration error detection to simplify users
      
       - add cpu capacity parsing from DT
      
       - support for larger cachelines found on UniPhier caches
      
       - documentation for udelay constants
      
       - properly tag assembly function declarations
      
       - remove unnecessary indirection of asm/mach-types.h
      
       - switch to syscall table based generation to simplify future additions
         of system calls, along with correpsonding commit for pkey syscalls
      
       - remove redundant sa1101 header file
      
       - RONX protect modules when they're in the vmalloc region
      
      * 'for-linus' of git://git.armlinux.org.uk/~rmk/linux-arm:
        ARM: mm: allow set_memory_*() to be used on the vmalloc region
        ARM: mm: fix set_memory_*() bounds checks
        ARM: 8631/1: clkdev: Detect errors in clk_hw_register_clkdev() for mass registration
        ARM: 8629/1: vfp: properly tag assembly function declarations in C code
        ARM: 8622/3: add sysfs cpu_capacity attribute
        ARM: 8621/3: parse cpu capacity-dmips-mhz from DT
        ARM: 8623/1: mm: add ARM_L1_CACHE_SHIFT_7 for UniPhier outer cache
        ARM: Update mach-types
        ARM: sa1100: remove SA-1101 header file
        ARM: 8619/1: udelay: document the various constants
        ARM: wire up new pkey syscalls
        ARM: convert to generated system call tables
        ARM: remove indirection of asm/mach-types.h
      66d46672
    • Linus Torvalds's avatar
      Merge tag 'armsoc-drivers' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc · 991688bf
      Linus Torvalds authored
      Pull ARM SoC driver updates from Arnd Bergmann:
       "Driver updates for ARM SoCs, including a couple of newly added
        drivers:
      
         - A new driver for the power management controller on TI Keystone
      
         - Support for the prerelease "SCPI" firmware protocol that ended up
           being shipped by Amlogic in their GXBB SoC.
      
         - A soc_device can now be matched using a glob from inside the
           kernel, when another driver wants to know the specific chip it is
           running on and cannot find out from DT, firmware or hardware.
      
         - Renesas SoCs now support identification through the soc_device
           interface, both in user space and kernel.
      
         - Renesas r8a7743 and r8a7745 gain support for their system
           controller
      
         - A new checking module for the ARM "PSCI" (not to be confused with
           "SCPI" mentioned above) firmware interface.
      
         - A new driver for the Tegra GMI memory interface
      
         - Support for the Tegra firmware interfaces with their power
           management controllers
      
        As usual, the updates for the reset controller framework are merged
        here, as they tend to touch multiple SoCs as well, including a new
        driver for the Oxford (now Broadcom) OX820 chip and the Tegra bpmp
        interface.
      
        The existing drivers for Atmel, Qualcomm, NVIDIA, TI Davinci, and
        Rockchips SoCs see some further updates"
      
      * tag 'armsoc-drivers' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc: (76 commits)
        misc: sram: remove useless #ifdef
        drivers: psci: Allow PSCI node to be disabled
        drivers: psci: PSCI checker module
        soc: renesas: Identify SoC and register with the SoC bus
        firmware: qcom: scm: Return PTR_ERR when devm_clk_get fails
        firmware: qcom: scm: Remove core, iface and bus clocks dependency
        dt-bindings: firmware: scm: Add MSM8996 DT bindings
        memory: da8xx-ddrctl: drop the call to of_flat_dt_get_machine_name()
        bus: da8xx-mstpri: drop the call to of_flat_dt_get_machine_name()
        ARM: shmobile: Document DT bindings for Product Register
        soc: renesas: rcar-sysc: add R8A7745 support
        reset: Add Tegra BPMP reset driver
        dt-bindings: firmware: Allow child nodes inside the Tegra BPMP
        dt-bindings: Add power domains to Tegra BPMP firmware
        firmware: tegra: Add BPMP support
        firmware: tegra: Add IVC library
        dt-bindings: firmware: Add bindings for Tegra BPMP
        mailbox: tegra-hsp: Use after free in tegra_hsp_remove_doorbells()
        mailbox: Add Tegra HSP driver
        firmware: arm_scpi: add support for pre-v1.0 SCPI compatible
        ...
      991688bf
  2. 15 Dec, 2016 25 commits
    • Linus Torvalds's avatar
      Merge tag 'armsoc-dt64' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc · 482c3e88
      Linus Torvalds authored
      Pull ARM 64-bit DT updates from Arnd Bergmann:
       "A couple of interesting new SoC platforms are now supported, these are
        the respective DTS sources:
      
         - Samsung Exynos5433 mobile phone platform, including an (almost)
           fully supported phone reference board.
         - Hisilicon Hip07 server platform and D05 board, the latest iteration
           of their product line, now with 64 Cortex-A72 cores across two
           sockets.
         - Allwinner A64 SoC, the first 64-bit chip from their "sunxi" product
           line, used in Android tablets and ultra-cheap development boards
         - NXP LS1046A Communication processor, improving on the earlier
           LS1043A with faster CPU cores
         - Qualcomm MSM8992 (Snapdragon 808) and MSM8994 (Snapdragon 810)
           mobile phone SoCs
         - Early support for the Nvidia Tegra Tegra186 SoC
         - Amlogic S905D is a minor variant of their existing Android consumer
           product line
         - Rockchip PX5 automotive platform, a close relative of their popular
           rk3368 Android tablet chips
      
        Aside from the respective evaluation platforms for the above chips,
        there are only a few consumer devices and boards added this time:
      
         - Huawei Nexus 6P (Angler) mobile phone
         - LG Nexus 5x (Bullhead) mobile phone
         - Nexbox A1 and A95X Android TV boxes
         - Pine64 development board based on Allwinner A64
         - Globalscale Marvell ESPRESSOBin community board based on Armada 3700
         - Renesas "R-Car Starter Kit Pro" (M3ULCB) low-cost automotive board
      
        For the existing platforms, we get bug fixes and new peripheral
        support for Juno, Renesas, Uniphier, Amlogic, Samsung, Broadcom,
        Rockchip, Berlin, and ZTE"
      
      * tag 'armsoc-dt64' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc: (168 commits)
        arm64: dts: fix build errors from missing dependencies
        ARM64: dts: meson-gxbb: add SCPI pre-1.0 compatible
        ARM64: dts: meson-gxl: Add support for Nexbox A95X
        ARM64: dts: meson-gxm: Add support for the Nexbox A1
        ARM: dts: artpec: add pcie support
        arm64: dts: berlin4ct-dmp: add missing unit name to /memory node
        arm64: dts: berlin4ct-stb: add missing unit name to /memory node
        arm64: dts: berlin4ct: add missing unit name to /soc node
        arm64: dts: qcom: msm8916: Add ddr support to sdhc1
        arm64: dts: exynos: Enable HS400 mode for eMMC for TM2
        ARM: dts: Add xo to sdhc clock node on qcom platforms
        ARM64: dts: Add support for Meson GXM
        dt-bindings: add rockchip RK1108 Evaluation board
        arm64: dts: NS2: Add PCI PHYs
        arm64: dts: NS2: enable sdio1
        arm64: dts: exynos: Add the mshc_2 node for supporting T-Flash
        arm64: tegra: Add NVIDIA P2771 board support
        arm64: tegra: Enable PSCI on P3310
        arm64: tegra: Add NVIDIA P3310 processor module support
        arm64: tegra: Add GPIO controllers on Tegra186
        ...
      482c3e88
    • Linus Torvalds's avatar
      Merge tag 'armsoc-dt' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc · 786a72d7
      Linus Torvalds authored
      Pull ARM DT updates from Arnd Bergmann:
       "Lots of changes as usual, so I'm trying to be brief here. Most of the
        new hardware support has the respective driver changes merged through
        other trees or has had it available for a while, so this is where
        things come together.
      
        We get a DT descriptions for a couple of new SoCs, all of them
        variants of other chips we already support, and usually coming with a
        new evaluation board:
      
         - Oxford semiconductor (now Broadcom) OX820 SoC for NAS devices
         - Qualcomm MDM9615 LTE baseband
         - NXP imx6ull, the latest and smallest i.MX6 application processor variant
         - Renesas RZ/G (r8a7743 and r8a7745) application processors
         - Rockchip PX3, a variant of the rk3188 chip used in Android tablets
         - Rockchip rk1108 single-core application processor
         - ST stm32f746 Cortex-M7 based microcontroller
         - TI DRA71x automotive processors
      
        These are commercially available consumer platforms we now support:
      
         - Motorola Droid 4 (xt894) mobile phone
         - Rikomagic MK808 Android TV stick based on Rockchips rx3066
         - Cloud Engines PogoPlug v3 based on OX820
         - Various Broadcom based wireless devices:
            - Netgear R8500 router
            - Tenda AC9 router
            - TP-LINK Archer C9 V1
            - Luxul XAP-1510 Access point
         - Turris Omnia open hardware router based on Armada 385
      
        And a couple of new boards targeted at developers, makers or
        industrial integration:
      
         - Macnica Sodia development platform for Altera socfpga (Cyclone V)
         - MicroZed board based on Xilinx Zynq FPGA platforms
         - TOPEET itop/elite based on exynos4412
         - WP8548 MangOH Open Hardware platform for IOT, based on Qualcomm MDM9615
         - NextThing CHIP Pro gadget
         - NanoPi M1 development board
         - AM571x-IDK industrial board based on TI AM5718
         - i.MX6SX UDOO Neo
         - Boundary Devices Nitrogen6_SOM2 (i.MX6)
         - Engicam i.CoreM6
         - Grinn i.MX6UL liteSOM/liteBoard
         - Toradex Colibri iMX6 module
      
        Other changes:
      
         - added peripherals on renesas, davinci, stm32f429, uniphier, sti,
           mediatek, integrator, at91, imx, vybrid, ls1021a, omap, qualcomm,
           mvebu, allwinner, broadcom, exynos, zynq
      
         - Continued fixes for W=1 dtc warnings
      
         - The old STiH415/416 SoC support gets removed, these never made it
           into products and have served their purpose in the kernel as a
           template for teh newer chips from ST
      
         - The exynos4415 dtsi file is removed as nothing uses it.
      
         - Intel PXA25x can now be booted using devicetree"
      
      * tag 'armsoc-dt' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc: (422 commits)
        arm: dts: zynq: Add MicroZed board support
        ARM: dts: da850: enable high speed for mmc
        ARM: dts: da850: Add node for pullup/pulldown pinconf
        ARM: dts: da850: enable memctrl and mstpri nodes per board
        ARM: dts: da850-lcdk: Add ethernet0 alias to DT
        ARM: dts: artpec: add pcie support
        ARM: dts: add support for Turris Omnia
        devicetree: Add vendor prefix for CZ.NIC
        ARM: dts: berlin2q-marvell-dmp: fix typo in chosen node
        ARM: dts: berlin2q-marvell-dmp: fix regulators' name
        ARM: dts: Add xo to sdhc clock node on qcom platforms
        ARM: dts: r8a7794: Add device node for PRR
        ARM: dts: r8a7793: Add device node for PRR
        ARM: dts: r8a7792: Add device node for PRR
        ARM: dts: r8a7791: Add device node for PRR
        ARM: dts: r8a7790: Add device node for PRR
        ARM: dts: r8a7779: Add device node for PRR
        ARM: dts: r8a73a4: Add device node for PRR
        ARM: dts: sk-rzg1e: add Ether support
        ARM: dts: sk-rzg1e: initial device tree
        ...
      786a72d7
    • Linus Torvalds's avatar
      Merge tag 'armsoc-arm64' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc · 3bd776bb
      Linus Torvalds authored
      Pull ARM SoC 64-bit updates from Arnd Bergmann:
       "Changes to platform code for 64-bit ARM platforms. We are not adding
        any new platforms that require code or Kconfig changes this time, so
        it's basically just defconfig changes to enable support for more
        drivers used on the existing platforms.
      
        This is mainly interesting for the Raspberry Pi 3, which should now
        work much better with the default build"
      
      * tag 'armsoc-arm64' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc:
        arm64: defconfig: drop GPIO_SYSFS on multiplatforms
        arm64: defconfig: Do not lower CONFIG_LOG_BUF_SHIFT
        arm64: defconfig: allow rk3399-based boards to boot from mmc and usb
        arm64: defconfig: enable RK808 components
        arm64: defconfig: enable I2C and DW MMC controller on rockchip platform
        arm64: defconfig: Enable Tegra186 SoC
        ARM64: configs: Activate Internal PHY for Meson GXL
        arm64: qcom: enable GPIOLIB in Kconfig
        arm64: configs: enable configs for msm899(2/4) basic support
        ARM64: bcm2835: add thermal driver to default config
        ARM64: configs: Add Platform MHU in defconfig
        MAINTAINERS: Update Broadcom Vulcan maintainer email
        arm64: defconfig: enable EEPROM_AT25 config option
        arm64: Enable HIBERNATION in defconfig
        arm64: defconfig: Enable DRM DU and V4L2 FCP + VSP modules
        ARM64: defconfig: Enable MMC related configs
        arm64: Add BCM2835 (Raspberry Pi 3) support to the defconfig
      3bd776bb
    • Linus Torvalds's avatar
      Merge tag 'armsoc-defconfig' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc · 775fadd0
      Linus Torvalds authored
      Pull ARM SoC defconfig updates from Arnd Bergmann:
       "Defconfig additions, removals, etc. Most of these are small changes
        adding the options for newly upstreamed drivers, or drivers needed for
        new board support.
      
        Bartlomiej Zolnierkiewicz has done a series of patches reducing the
        use of CONFIG_IDE from 19 to 3 in favor of CONFIG_ATA.
      
        Overall more patches than usual, but nothing big"
      
      * tag 'armsoc-defconfig' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc: (54 commits)
        ARM: davinci_all_defconfig: Enable da8xx usb otg
        ARM: defconfig: drop GPIO_SYSFS on multiplatforms
        ARM: multi_v7_defconfig: enable STMicroelectronics HVA driver
        ARM: configs: Add new config fragment to change RAM start point
        ARM: davinci_all_defconfig: Enable OHCI as module
        ARM: defconfig: turn on the DT cpufreq for Integrator
        ARM: omap2plus_defconfig: Run make savedefconfig to save some space
        ARM: davinci_all_defconfig: add missing options for systemd
        ARM: davinci_all_defconfig: enable the mstpri and ddrctl drivers
        ARM: bcm2835: add thermal driver to default config
        ARM: omap2plus_defconfig: Enable LP873X support
        ARM: omap2plus_defconfig: Enable REGULATOR_GPIO
        ARM: omap2plus_defconfig: Enable TOUCHSCREEN_TSC2004
        ARM: socfpga_defconfig: enable FS configs to support Angstrom filesystem
        ARM: config: Enable GPIO Key driver in stm32_defconfig
        ARM: tegra: Enable GMI driver in default configuration
        ARM: tegra: Enable SGTL5000 audio
        ARM: tegra: Update default configuration for v4.9-rc1
        ARM: socfpga: updates for socfpga_defconfig
        ARM: davinci_all_defconfig: enable LED default-on trigger
        ...
      775fadd0
    • Linus Torvalds's avatar
      Merge tag 'armsoc-soc' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc · e79ab194
      Linus Torvalds authored
      Pull ARM SoC platform updates from Arnd Bergmann:
       "These are updates for platform specific code on 32-bit ARM machines,
        essentially anything that can not (yet) be expressed using DT files.
      
        Noteworthy changes include:
      
         - Added support for the TI DRA71x family of SoCs in mach-omap2, this
           is an new variant of the the DRA72x/DRA74x automotive infotainment
           chips we already supported for a while.
      
         - Added support for the ST STM32F746 SoC, the first Cortex-M7 based
           microcontroller we support, related to the smaller STM32F4 family.
      
         - Renesas adds support for r8a7743 and r8a7745 in mach-shmobile, see
           http://elinux.org/RZ-G
      
         - SMP is now supported on the OX820 platform
      
         - A lot of code in mach-omap2 gets removed as a follow-up to removing
           support for board files in the previous release
      
         - Davinci has some new work to improve USB support
      
         - For i.MX, the performance monitor now supports profiling the memory
           controller using 'perf'"
      
      * tag 'armsoc-soc' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc: (95 commits)
        ARM: davinci: da830-evm: use gpio descriptor for mmc pins
        ARM: davinci: da850-evm: use gpio descriptor for mmc pins
        ARM: davinci: hawk: use gpio descriptor for mmc pins
        ARM: ARTPEC-6: add select MFD_SYSCON to MACH_ARTPEC6
        ARM: davinci: da8xx: Fix ohci device name
        ARM: oxnas: Add OX820 config and makefile entry
        ARM: oxnas: Add OX820 SMP support
        ARM: davinci: PM: fix build when da850 not compiled in
        ARM: orion5x: remove legacy support of ls-chl
        ARM: integrator: drop EBI access use syscon
        ARM: BCM5301X: Add back handler ignoring external imprecise aborts
        ARM: davinci: PM: support da8xx DT platforms
        ARM: davinci: PM: cleanup: remove references to pdata
        ARM: davinci: PM: rework init, remove platform device
        ARM: Kconfig: Introduce MACH_STM32F746 flag
        ARM: mach-stm32: Add a new SOC - STM32F746
        ARM: shmobile: document SK-RZG1E board
        ARM: shmobile: r8a7745: basic SoC support
        ARM: imx: mach-imx6ul: add imx6ull support
        ARM: zynq: Reserve correct amount of non-DMA RAM
        ...
      e79ab194
    • Linus Torvalds's avatar
      Merge tag 'armsoc-fixes-nc' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc · 3ec5e8d8
      Linus Torvalds authored
      Pull ARM SoC non-urgent fixes from Arnd Bergmann:
       "As usual, we queue up a few fixes that don't seem urgent enough to go
        in through -rc, or that just came a little too late given their size.
      
        The zx fixes make the platform finally boot on real hardware, the
        davinci and imx31 get the DT support working better for some of the
        machines that are still normally used with classic board files. One
        tegra fix is important for new bootloader versions, but the bug has
        been around for a while without anyone noticing.
      
        The other changes are mostly cosmetic"
      
      * tag 'armsoc-fixes-nc' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc: (22 commits)
        arm64: tegra: Add missing Smaug revision
        arm64: tegra: Add VDD_GPU regulator to Jetson TX1
        arm64: dts: zte: clean up gic-v3 redistributor properties
        arm64: dts: zx: Fix gic GICR property
        bus: vexpress-config: fix device reference leak
        soc: ti: qmss: fix the case when !SMP
        ARM: lpc32xx: drop duplicate header device.h
        ARM: ixp4xx: drop duplicate header gpio.h
        ARM: socfpga: fix spelling mistake in error message
        ARM: dts: imx6q-cm-fx6: fix fec pinctrl
        ARM: dts: imx7d-pinfunc: fix UART pinmux defines
        ARM: dts: imx6qp: correct LDB clock inputs
        ARM: OMAP2+: pm-debug: Use seq_putc() in two functions
        ARM: OMAP2+: Remove the omapdss_early_init_of() function
        mfd: tps65217: Fix mismatched interrupt number
        ARM: zx: Fix error handling
        ARM: spear: Fix error handling
        ARM: davinci: da850: Fix pwm name matching
        ARM: clk: imx31: properly init clocks for machines with DT
        clk: imx31: fix rewritten input argument of mx31_clocks_init()
        ...
      3ec5e8d8
    • Linus Torvalds's avatar
      Merge tag 'linux-kselftest-4.10-rc1-update' of... · 09dee2a6
      Linus Torvalds authored
      Merge tag 'linux-kselftest-4.10-rc1-update' of git://git.kernel.org/pub/scm/linux/kernel/git/shuah/linux-kselftest
      
      Pull kselftest updates from Shuah Khan:
       "This update consists of:
      
         - new tests to exercise the Sync Kernel Infrastructure. These tests
           are part of a battery of Android libsync tests and are re-written
           to test the new sync user-space interfaces from Emilio López, and
           Gustavo Padovan.
      
         - test to run hw-independent mock tests for i915.ko from Chris Wilson
      
         - a new gpio test case from Bamvor Jian Zhang
      
         - missing gitignore additions"
      
      * tag 'linux-kselftest-4.10-rc1-update' of git://git.kernel.org/pub/scm/linux/kernel/git/shuah/linux-kselftest:
        selftest/gpio: add gpio test case
        selftest: sync: improve assert() failure message
        kselftests: Exercise hw-independent mock tests for i915.ko
        selftests: add missing gitignore files/dirs
        selftests: add missing set-tz to timers .gitignore
        selftest: sync: stress test for merges
        selftest: sync: stress consumer/producer test
        selftest: sync: stress test for parallelism
        selftest: sync: wait tests for sw_sync framework
        selftest: sync: merge tests for sw_sync framework
        selftest: sync: fence tests for sw_sync framework
        selftest: sync: basic tests for sw_sync framework
      09dee2a6
    • Linus Torvalds's avatar
      Merge tag 'arc-4.10-rc1-part1' of git://git.kernel.org/pub/scm/linux/kernel/git/vgupta/arc · d25b6af9
      Linus Torvalds authored
      Pull ARC updates from Vineet Gupta:
       "These are mostly timer/clocksource driver updates which were
        Reviewed/Acked by Daniel but had to be merged via ARC tree due to
        dependencies.
      
        I will follow up with another pull request with actual ARC changes
        early next week !
      
        Summary:
      
         - Moving ARC timer driver into drivers/clocksource
      
         - EZChip timer driver updates [Noam]
      
         - ARC AXS103 and HAPS platform updates [Alexey]"
      
      * tag 'arc-4.10-rc1-part1' of git://git.kernel.org/pub/scm/linux/kernel/git/vgupta/arc:
        ARC: axs10x: really enable ARC PGU
        ARC: rename Zebu platform support to HAPS
        clocksource: nps: avoid maybe-uninitialized warning
        clocksource: Add clockevent support to NPS400 driver
        clocksource: update "fn" at CLOCKSOURCE_OF_DECLARE() of nps400 timer
        soc: Support for NPS HW scheduling
        clocksource: import ARC timer driver
        ARC: breakout timer include code into separate header ...
        ARC: move mcip.h into include/soc and adjust the includes
        ARC: breakout aux handling into a separate header
        ARC: time: move time_init() out of the driver
        ARC: timer: gfrc, rtc: build under same option (64-bit timers)
        ARC: timer: gfrc, rtc: Read BCR to detect whether hardware exists ...
        ARC: timer: gfrc, rtc: deuglify big endian code
      d25b6af9
    • Michael S. Tsirkin's avatar
      6bdf1e0e
    • Michael S. Tsirkin's avatar
      fs/logfs: drop __CHECK_ENDIAN__ · 378d5a40
      Michael S. Tsirkin authored
      No need for it anymore: __bitwise checks are now
      on by default for everyone.
      Signed-off-by: default avatarMichael S. Tsirkin <mst@redhat.com>
      378d5a40
    • Michael S. Tsirkin's avatar
      Documentation/sparse: drop __CHECK_ENDIAN__ · dc67a9f7
      Michael S. Tsirkin authored
      It's no longer used.
      Signed-off-by: default avatarMichael S. Tsirkin <mst@redhat.com>
      dc67a9f7
    • Michael S. Tsirkin's avatar
      linux: drop __bitwise__ everywhere · 9efeccac
      Michael S. Tsirkin authored
      __bitwise__ used to mean "yes, please enable sparse checks
      unconditionally", but now that we dropped __CHECK_ENDIAN__
      __bitwise is exactly the same.
      There aren't many users, replace it by __bitwise everywhere.
      Signed-off-by: default avatarMichael S. Tsirkin <mst@redhat.com>
      Acked-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
      Acked-by: default avatarStefan Schmidt <stefan@osg.samsung.com>
      Acked-by: default avatarKrzysztof Kozlowski <krzk@kernel.org>
      Akced-by: default avatarLee Duncan <lduncan@suse.com>
      9efeccac
    • Michael S. Tsirkin's avatar
      checkpatch: replace __bitwise__ with __bitwise · 46d832f5
      Michael S. Tsirkin authored
      __bitwise__ is an implementation detail now.
      Signed-off-by: default avatarMichael S. Tsirkin <mst@redhat.com>
      46d832f5
    • Michael S. Tsirkin's avatar
      Documentation/sparse: drop __bitwise__ · 9536099a
      Michael S. Tsirkin authored
      We dropped __CHECK_ENDIAN__ so __bitwise__ is now an implementation
      detail. People should use __bitwise everywhere.
      Signed-off-by: default avatarMichael S. Tsirkin <mst@redhat.com>
      9536099a
    • Michael S. Tsirkin's avatar
      tools: enable endian checks for all sparse builds · 376a5fb3
      Michael S. Tsirkin authored
      We dropped need for __CHECK_ENDIAN__ for linux,
      this mirrors this for tools.
      Signed-off-by: default avatarMichael S. Tsirkin <mst@redhat.com>
      376a5fb3
    • Michael S. Tsirkin's avatar
      linux/types.h: enable endian checks for all sparse builds · 05de9700
      Michael S. Tsirkin authored
      By now, linux is mostly endian-clean. Enabling endian-ness
      checks for everyone produces about 200 new sparse warnings for me -
      less than 10% over the 2000 sparse warnings already there.
      
      Not a big deal, OTOH enabling this helps people notice
      they are introducing new bugs.
      
      So let's just drop __CHECK_ENDIAN__. Follow-up patches
      can drop distinction between __bitwise and __bitwise__.
      
      Cc: Linus Torvalds <torvalds@linux-foundation.org>
      Suggested-by: default avatarChristoph Hellwig <hch@infradead.org>
      Signed-off-by: default avatarMichael S. Tsirkin <mst@redhat.com>
      05de9700
    • Yuan Liu's avatar
      virtio_mmio: Set dev.release() to avoid warning · cecdbdc3
      Yuan Liu authored
      Fix a warning thrown from virtio_mmio_remove():
      Device 'virtio0' does not have a release() function
      
      The fix is according to virtio_pci_probe() of
      drivers/virtio/virtio_pci_common.c
      Signed-off-by: default avatarYuan Liu <liuyuan@google.com>
      Signed-off-by: default avatarMichael S. Tsirkin <mst@redhat.com>
      cecdbdc3
    • Jason Wang's avatar
      vhost: remove unused feature bit · 8d390464
      Jason Wang authored
      Signed-off-by: default avatarJason Wang <jasowang@redhat.com>
      Signed-off-by: default avatarMichael S. Tsirkin <mst@redhat.com>
      8d390464
    • Felipe Franciosi's avatar
      virtio_ring: fix description of virtqueue_get_buf · 0c7eaf59
      Felipe Franciosi authored
      The device (not the driver) populates the used ring and includes the len
      of how much data was written.
      Signed-off-by: default avatarFelipe Franciosi <felipe@nutanix.com>
      Signed-off-by: default avatarMichael S. Tsirkin <mst@redhat.com>
      0c7eaf59
    • Tobias Klauser's avatar
      vhost/scsi: Remove unused but set variable · b9fd06d0
      Tobias Klauser authored
      Remove the unused but set variable se_tpg in vhost_scsi_nexus_cb() to
      fix the following GCC warning when building with 'W=1':
      
        drivers/vhost/scsi.c:1752:26: warning: variable ‘se_tpg’ set but not used
      Signed-off-by: default avatarTobias Klauser <tklauser@distanz.ch>
      Signed-off-by: default avatarMichael S. Tsirkin <mst@redhat.com>
      b9fd06d0
    • Mark Rutland's avatar
      tools/virtio: use {READ,WRITE}_ONCE() in uaccess.h · ea9156fb
      Mark Rutland authored
      As a step towards killing off ACCESS_ONCE, use {READ,WRITE}_ONCE() for the
      virtio tools uaccess primitives, pulling these in from <linux/compiler.h>.
      
      With this done, we can kill off the now-unused ACCESS_ONCE() definition.
      Signed-off-by: default avatarMark Rutland <mark.rutland@arm.com>
      Cc: Jason Wang <jasowang@redhat.com>
      Cc: Michael S. Tsirkin <mst@redhat.com>
      Cc: linux-kernel@vger.kernel.org
      Cc: virtualization@lists.linux-foundation.org
      Signed-off-by: default avatarMichael S. Tsirkin <mst@redhat.com>
      Reviewed-by: default avatarCornelia Huck <cornelia.huck@de.ibm.com>
      Reviewed-by: default avatarJason Wang <jasowang@redhat.com>
      ea9156fb
    • Mark Rutland's avatar
      vringh: kill off ACCESS_ONCE() · 9d1b972f
      Mark Rutland authored
      Despite living under drivers/ vringh.c is also used as part of the userspace
      virtio tools. Before we can kill off the ACCESS_ONCE()definition in the tools,
      we must convert vringh.c to use {READ,WRITE}_ONCE().
      
      This patch does so, along with the required include of <linux/compiler.h> for
      the relevant definitions. The userspace tools provide their own definitions in
      their own <linux/compiler.h>.
      Signed-off-by: default avatarMark Rutland <mark.rutland@arm.com>
      Cc: Jason Wang <jasowang@redhat.com>
      Cc: Michael S. Tsirkin <mst@redhat.com>
      Cc: kvm@vger.kernel.org
      Cc: linux-kernel@vger.kernel.org
      Cc: netdev@vger.kernel.org
      Cc: virtualization@lists.linux-foundation.org
      Signed-off-by: default avatarMichael S. Tsirkin <mst@redhat.com>
      Reviewed-by: default avatarChristian Borntraeger <borntraeger@de.ibm.com>
      Reviewed-by: default avatarCornelia Huck <cornelia.huck@de.ibm.com>
      Reviewed-by: default avatarJason Wang <jasowang@redhat.com>
      9d1b972f
    • Mark Rutland's avatar
      tools/virtio: fix READ_ONCE() · 5da889c7
      Mark Rutland authored
      The virtio tools implementation of READ_ONCE() has a single parameter called
      'var', but erroneously refers to 'val' for its cast, and thus won't work unless
      there's a variable of the correct type that happens to be called 'var'.
      
      Fix this with s/var/val/, making READ_ONCE() work as expected regardless.
      
      Fixes: a7c49033 ("tools/virtio: use virt_xxx barriers")
      Signed-off-by: default avatarMark Rutland <mark.rutland@arm.com>
      Cc: Jason Wang <jasowang@redhat.com>
      Cc: Michael S. Tsirkin <mst@redhat.com>
      Cc: linux-kernel@vger.kernel.org
      Cc: virtualization@lists.linux-foundation.org
      Signed-off-by: default avatarMichael S. Tsirkin <mst@redhat.com>
      Reviewed-by: default avatarCornelia Huck <cornelia.huck@de.ibm.com>
      Reviewed-by: default avatarJason Wang <jasowang@redhat.com>
      5da889c7
    • Gonglei's avatar
      crypto: add virtio-crypto driver · dbaf0624
      Gonglei authored
      This patch introduces virtio-crypto driver for Linux Kernel.
      
      The virtio crypto device is a virtual cryptography device
      as well as a kind of virtual hardware accelerator for
      virtual machines. The encryption anddecryption requests
      are placed in the data queue and are ultimately handled by
      thebackend crypto accelerators. The second queue is the
      control queue used to create or destroy sessions for
      symmetric algorithms and will control some advanced features
      in the future. The virtio crypto device provides the following
      cryptoservices: CIPHER, MAC, HASH, and AEAD.
      
      For more information about virtio-crypto device, please see:
        http://qemu-project.org/Features/VirtioCrypto
      
      CC: Michael S. Tsirkin <mst@redhat.com>
      CC: Cornelia Huck <cornelia.huck@de.ibm.com>
      CC: Stefan Hajnoczi <stefanha@redhat.com>
      CC: Herbert Xu <herbert@gondor.apana.org.au>
      CC: Halil Pasic <pasic@linux.vnet.ibm.com>
      CC: David S. Miller <davem@davemloft.net>
      CC: Zeng Xin <xin.zeng@intel.com>
      Signed-off-by: default avatarGonglei <arei.gonglei@huawei.com>
      Signed-off-by: default avatarMichael S. Tsirkin <mst@redhat.com>
      dbaf0624
    • Jason Wang's avatar
      vhost: cache used event for better performance · 809ecb9b
      Jason Wang authored
      When event index was enabled, we need to fetch used event from
      userspace memory each time. This userspace fetch (with memory
      barrier) could be saved sometime when 1) caching used event and 2)
      if used event is ahead of new and old to new updating does not cross
      it, we're sure there's no need to notify guest.
      
      This will be useful for heavy tx load e.g guest pktgen test with Linux
      driver shows ~3.5% improvement.
      Signed-off-by: default avatarJason Wang <jasowang@redhat.com>
      Signed-off-by: default avatarMichael S. Tsirkin <mst@redhat.com>
      809ecb9b