1. 10 2月, 2018 9 次提交
    • L
      Merge tag 'nfs-for-4.16-2' of git://git.linux-nfs.org/projects/trondmy/linux-nfs · 82f0a41e
      Linus Torvalds 提交于
      Pull more NFS client updates from Trond Myklebust:
       "A few bugfixes and some small sunrpc latency/performance improvements
        before the merge window closes:
      
        Stable fixes:
      
         - fix an incorrect calculation of the RDMA send scatter gather
           element limit
      
         - fix an Oops when attempting to free resources after RDMA device
           removal
      
        Bugfixes:
      
         - SUNRPC: Ensure we always release the TCP socket in a timely fashion
           when the connection is shut down.
      
         - SUNRPC: Don't call __UDPX_INC_STATS() from a preemptible context
      
        Latency/Performance:
      
         - SUNRPC: Queue latency sensitive socket tasks to the less contended
           xprtiod queue
      
         - SUNRPC: Make the xprtiod workqueue unbounded.
      
         - SUNRPC: Make the rpciod workqueue unbounded"
      
      * tag 'nfs-for-4.16-2' of git://git.linux-nfs.org/projects/trondmy/linux-nfs:
        SUNRPC: Don't call __UDPX_INC_STATS() from a preemptible context
        fix parallelism for rpc tasks
        Make the xprtiod workqueue unbounded.
        SUNRPC: Queue latency-sensitive socket tasks to xprtiod
        SUNRPC: Ensure we always close the socket after a connection shuts down
        xprtrdma: Fix BUG after a device removal
        xprtrdma: Fix calculation of ri_max_send_sges
      82f0a41e
    • L
      Merge branch 'for-next' of git://git.kernel.org/pub/scm/linux/kernel/git/nab/target-pending · 858f45bf
      Linus Torvalds 提交于
      Pull SCSI target updates from Nicholas Bellinger:
       "The highlights include:
      
         - numerous target-core-user improvements related to queue full and
           timeout handling. (MNC)
      
         - prevent target-core-user corruption when invalid data page is
           requested. (MNC)
      
         - add target-core device action configfs attributes to allow
           user-space to trigger events separate from existing attributes
           exposed to end-users. (MNC)
      
         - fix iscsi-target NULL pointer dereference 4.6+ regression in CHAP
           error path. (David Disseldorp)
      
         - avoid target-core backend UNMAP callbacks if range is zero. (Andrei
           Vagin)
      
         - fix a iscsi-target 4.14+ regression related multiple PDU logins,
           that was exposed due to removal of TCP prequeue support. (Florian
           Westphal + MNC)
      
        Also, there is a iser-target bug still being worked on for post -rc1
        code to address a long standing issue resulting in persistent
        ib_post_send() failures, for RNICs with small max_send_sge"
      
      * 'for-next' of git://git.kernel.org/pub/scm/linux/kernel/git/nab/target-pending: (36 commits)
        iscsi-target: make sure to wake up sleeping login worker
        tcmu: Fix trailing semicolon
        tcmu: fix cmd user after free
        target: fix destroy device in target_configure_device
        tcmu: allow userspace to reset ring
        target core: add device action configfs files
        tcmu: fix error return code in tcmu_configure_device()
        target_core_user: add cmd id to broken ring message
        target: add SAM_STAT_BUSY sense reason
        tcmu: prevent corruption when invalid data page requested
        target: don't call an unmap callback if a range length is zero
        target/iscsi: avoid NULL dereference in CHAP auth error path
        cxgbit: call neigh_event_send() to update MAC address
        target: tcm_loop: Use seq_puts() in tcm_loop_show_info()
        target: tcm_loop: Delete an unnecessary return statement in tcm_loop_submission_work()
        target: tcm_loop: Delete two unnecessary variable initialisations in tcm_loop_issue_tmr()
        target: tcm_loop: Combine substrings for 26 messages
        target: tcm_loop: Improve a size determination in two functions
        target: tcm_loop: Delete an error message for a failed memory allocation in four functions
        sbp-target: Delete an error message for a failed memory allocation in three functions
        ...
      858f45bf
    • L
      Merge tag 'trace-v4.16-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-trace · 8158c2ff
      Linus Torvalds 提交于
      Pull tracing fixes from Steven Rostedt:
       "Al Viro discovered some breakage with the parsing of the
        set_ftrace_filter as well as the removing of function probes.
      
        This fixes the code with Al's suggestions. I also added a few
        selftests to test the broken cases such that they wont happen
        again"
      
      * tag 'trace-v4.16-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-trace:
        selftests/ftrace: Add more tests for removing of function probes
        selftests/ftrace: Add some missing glob checks
        selftests/ftrace: Have reset_ftrace_filter handle multiple instances
        selftests/ftrace: Have reset_ftrace_filter handle modules
        tracing: Fix parsing of globs with a wildcard at the beginning
        ftrace: Remove incorrect setting of glob search field
      8158c2ff
    • L
      Merge tag '4.16-minor-rc-SMB3-fixes' of git://git.samba.org/sfrench/cifs-2.6 · a2834832
      Linus Torvalds 提交于
      Pull cifs fixes from Steve French:
       "There are a couple additional security fixes that are still being
        tested that are not in this set."
      
      * tag '4.16-minor-rc-SMB3-fixes' of git://git.samba.org/sfrench/cifs-2.6:
        Add missing structs and defines from recent SMB3.1.1 documentation
        address lock imbalance warnings in smbdirect.c
        cifs: silence compiler warnings showing up with gcc-8.0.0
        Add some missing debug fields in server and tcon structs
      a2834832
    • L
      Merge tag 'fbdev-v4.16-fix' of git://github.com/bzolnier/linux · 58fcba61
      Linus Torvalds 提交于
      Pull fbdev fix from Bartlomiej Zolnierkiewicz:
       "Fix building of the omapfb driver (Tomi Valkeinen)"
      
      * tag 'fbdev-v4.16-fix' of git://github.com/bzolnier/linux:
        video: omapfb: fix missing #includes
      58fcba61
    • L
      Merge tag 'for-linus-4.16-rc1-tag' of git://git.kernel.org/pub/scm/linux/kernel/git/xen/tip · f9f1e414
      Linus Torvalds 提交于
      Pull xen fixes from Juergen Gross:
       "Only five small fixes for issues when running under Xen"
      
      * tag 'for-linus-4.16-rc1-tag' of git://git.kernel.org/pub/scm/linux/kernel/git/xen/tip:
        xen: Fix {set,clear}_foreign_p2m_mapping on autotranslating guests
        pvcalls-back: do not return error on inet_accept EAGAIN
        xen-netfront: Fix race between device setup and open
        xen/grant-table: Use put_page instead of free_page
        x86/xen: init %gs very early to avoid page faults with stack protector
      f9f1e414
    • L
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/s390/linux · dff839f2
      Linus Torvalds 提交于
      Pull s390 updates from Heiko Carstens:
       "The main thing in this merge is the defense for the Spectre
        vulnerabilities. But there are other updates as well, the changes in
        more detail:
      
         - An s390 specific implementation of the array_index_mask_nospec
           function to the defense against spectre v1
      
         - Two patches to utilize the new PPA-12/PPA-13 instructions to run
           the kernel and/or user space with reduced branch predicton.
      
         - The s390 variant of the 'retpoline' spectre v2 defense called
           'expoline'. There is no return instruction for s390, instead an
           indirect branch is used for function return
      
           The s390 defense mechanism for indirect branches works by using an
           execute-type instruction with the indirect branch as the target of
           the execute. In effect that turns off the prediction for the
           indirect branch.
      
         - Scrub registers in entry.S that contain user controlled values to
           prevent the speculative use of these values.
      
         - Re-add the second parameter for the s390 specific runtime
           instrumentation system call and move the header file to uapi. The
           second parameter will continue to do nothing but older kernel
           versions only accepted valid real-time signal numbers. The details
           will be documented in the man-page for the system call.
      
         - Corrections and improvements for the s390 specific documentation
      
         - Add a line to /proc/sysinfo to display the CPU model dependent
           license-internal-code identifier
      
         - A header file include fix for eadm.
      
         - An error message fix in the kprobes code.
      
         - The removal of an outdated ARCH_xxx select statement"
      
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/s390/linux:
        s390/kconfig: Remove ARCH_WANTS_PROT_NUMA_PROT_NONE select
        s390: introduce execute-trampolines for branches
        s390: run user space and KVM guests with modified branch prediction
        s390: add options to change branch prediction behaviour for the kernel
        s390/alternative: use a copy of the facility bit mask
        s390: add optimized array_index_mask_nospec
        s390: scrub registers on kernel entry and KVM exit
        s390/cio: fix kernel-doc usage
        s390/runtime_instrumentation: re-add signum system call parameter
        s390/cpum_cf: correct counter number of LAST_HOST_TRANSLATIONS
        s390/kprobes: Fix %p uses in error messages
        s390/runtime instrumentation: provide uapi header file
        s390/sysinfo: add and display licensed internal code identifier
        s390/docs: reword airq section
        s390/docs: mention subchannel types
        s390/cmf: fix kerneldoc
        s390/eadm: fix CONFIG_BLOCK include dependency
      dff839f2
    • L
      Merge tag 'acpi-part2-4.16-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm · 54ce685c
      Linus Torvalds 提交于
      Pull more ACPI updates from Rafael Wysocki:
       "These are mostly fixes and cleanups, a few new quirks, a couple of
        updates related to the handling of ACPI tables and ACPICA copyrights
        refreshment.
      
        Specifics:
      
         - Update the ACPICA kernel code to upstream revision 20180105
           including:
             * Assorted fixes (Jung-uk Kim)
             * Support for X32 ABI compilation (Anuj Mittal)
             * Update of ACPICA copyrights to 2018 (Bob Moore)
      
         - Prepare for future modifications to avoid executing the _STA
           control method too early (Hans de Goede)
      
         - Make the processor performance control library code ignore _PPC
           notifications if they cannot be handled and fix up the C1 idle
           state definition when it is used as a fallback state (Chen Yu,
           Yazen Ghannam)
      
         - Make it possible to use the SPCR table on x86 and to replace the
           original IORT table with a new one from initrd (Prarit Bhargava,
           Shunyong Yang)
      
         - Add battery-related quirks for Asus UX360UA and UX410UAK and add
           quirks for table parsing on Dell XPS 9570 and Precision M5530 (Kai
           Heng Feng)
      
         - Address static checker warnings in the CPPC code (Gustavo Silva)
      
         - Avoid printing a raw pointer to the kernel log in the smart battery
           driver (Greg Kroah-Hartman)"
      
      * tag 'acpi-part2-4.16-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm:
        ACPI: sbshc: remove raw pointer from printk() message
        ACPI: SPCR: Make SPCR available to x86
        ACPI / CPPC: Use 64-bit arithmetic instead of 32-bit
        ACPI / tables: Add IORT to injectable table list
        ACPI / bus: Parse tables as term_list for Dell XPS 9570 and Precision M5530
        ACPICA: Update version to 20180105
        ACPICA: All acpica: Update copyrights to 2018
        ACPI / processor: Set default C1 idle state description
        ACPI / battery: Add quirk for Asus UX360UA and UX410UAK
        ACPI: processor_perflib: Do not send _PPC change notification if not ready
        ACPI / scan: Use acpi_bus_get_status() to initialize ACPI_TYPE_DEVICE devs
        ACPI / bus: Do not call _STA on battery devices with unmet dependencies
        PCI: acpiphp_ibm: prepare for acpi_get_object_info() no longer returning status
        ACPI: export acpi_bus_get_status_handle()
        ACPICA: Add a missing pair of parentheses
        ACPICA: Prefer ACPI_TO_POINTER() over ACPI_ADD_PTR()
        ACPICA: Avoid NULL pointer arithmetic
        ACPICA: Linux: add support for X32 ABI compilation
        ACPI / video: Use true for boolean value
      54ce685c
    • L
      Merge tag 'pm-part2-4.16-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm · a051c14b
      Linus Torvalds 提交于
      Pull more power management updates from Rafael Wysocki:
       "These are mostly fixes and cleanups and removal of the no longer
        needed at32ap-cpufreq driver.
      
        Specifics:
      
         - Drop the at32ap-cpufreq driver which is useless after the removal
           of the corresponding arch (Corentin LABBE).
      
         - Fix a regression from the 4.14 cycle in the APM idle driver by
           making it initialize the polling state properly (Rafael Wysocki).
      
         - Fix a crash on failing system suspend due to a missing check in the
           cpufreq core (Bo Yan).
      
         - Make the intel_pstate driver initialize the hardware-managed
           P-state control (HWP) feature on CPU0 upon resume from system
           suspend if HWP had been enabled before the system was suspended
           (Chen Yu).
      
         - Fix up the SCPI cpufreq driver after recent changes (Sudeep Holla,
           Wei Yongjun).
      
         - Avoid pointer subtractions during frequency table walks in cpufreq
           (Dominik Brodowski).
      
         - Avoid the check for ProcFeedback in ST/CZ in the cpufreq driver for
           AMD processors and add a MODULE_ALIAS for cpufreq on ARM IMX (Akshu
           Agrawal, Nicolas Chauvet).
      
         - Fix the prototype of swsusp_arch_resume() on x86 (Arnd Bergmann).
      
         - Fix up the parsing of power domains DT data (Ulf Hansson)"
      
      * tag 'pm-part2-4.16-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm:
        arm: imx: Add MODULE_ALIAS for cpufreq
        cpufreq: Add and use cpufreq_for_each_{valid_,}entry_idx()
        cpufreq: intel_pstate: Enable HWP during system resume on CPU0
        cpufreq: scpi: fix error return code in scpi_cpufreq_init()
        x86: hibernate: fix swsusp_arch_resume() prototype
        PM / domains: Fix up domain-idle-states OF parsing
        cpufreq: scpi: fix static checker warning cdev isn't an ERR_PTR
        cpufreq: remove at32ap-cpufreq
        cpufreq: AMD: Ignore the check for ProcFeedback in ST/CZ
        x86: PM: Make APM idle driver initialize polling state
        cpufreq: Skip cpufreq resume if it's not suspended
      a051c14b
  2. 09 2月, 2018 21 次提交
    • T
      SUNRPC: Don't call __UDPX_INC_STATS() from a preemptible context · 0afa6b44
      Trond Myklebust 提交于
      Calling __UDPX_INC_STATS() from a preemptible context leads to a
      warning of the form:
      
       BUG: using __this_cpu_add() in preemptible [00000000] code: kworker/u5:0/31
       caller is xs_udp_data_receive_workfn+0x194/0x270
       CPU: 1 PID: 31 Comm: kworker/u5:0 Not tainted 4.15.0-rc8-00076-g90ea9f1b #2
       Workqueue: xprtiod xs_udp_data_receive_workfn
       Call Trace:
        dump_stack+0x85/0xc1
        check_preemption_disabled+0xce/0xe0
        xs_udp_data_receive_workfn+0x194/0x270
        process_one_work+0x318/0x620
        worker_thread+0x20a/0x390
        ? process_one_work+0x620/0x620
        kthread+0x120/0x130
        ? __kthread_bind_mask+0x60/0x60
        ret_from_fork+0x24/0x30
      
      Since we're taking a spinlock in those functions anyway, let's fix the
      issue by moving the call so that it occurs under the spinlock.
      Reported-by: Nkernel test robot <fengguang.wu@intel.com>
      Signed-off-by: NTrond Myklebust <trond.myklebust@primarydata.com>
      0afa6b44
    • T
      video: omapfb: fix missing #includes · b9058afc
      Tomi Valkeinen 提交于
      The omapfb driver fails to build after commit 23c35f48
      ("pinctrl: remove include file from <linux/device.h>") because it
      relies on the <linux/pinctrl/consumer.h> and <linux/seq_file.h>
      being pulled in by the <linux/device.h> header implicitly.
      
      Include these headers explicitly to avoid the build failures.
      
      Fixes: 23c35f48 ("pinctrl: remove include file from <linux/device.h>")
      Signed-off-by: NTomi Valkeinen <tomi.valkeinen@ti.com>
      Tested-by: NTony Lindgren <tony@atomide.com>
      [b.zolnierkie: fix include order and patch description]
      Signed-off-by: NBartlomiej Zolnierkiewicz <b.zolnierkie@samsung.com>
      b9058afc
    • L
      Merge tag 'nfsd-4.16' of git://linux-nfs.org/~bfields/linux · f1517df8
      Linus Torvalds 提交于
      Pull nfsd update from Bruce Fields:
       "A fairly small update this time around. Some cleanup, RDMA fixes,
        overlayfs fixes, and a fix for an NFSv4 state bug.
      
        The bigger deal for nfsd this time around was Jeff Layton's
        already-merged i_version patches"
      
      * tag 'nfsd-4.16' of git://linux-nfs.org/~bfields/linux:
        svcrdma: Fix Read chunk round-up
        NFSD: hide unused svcxdr_dupstr()
        nfsd: store stat times in fill_pre_wcc() instead of inode times
        nfsd: encode stat->mtime for getattr instead of inode->i_mtime
        nfsd: return RESOURCE not GARBAGE_ARGS on too many ops
        nfsd4: don't set lock stateid's sc_type to CLOSED
        nfsd: Detect unhashed stids in nfsd4_verify_open_stid()
        sunrpc: remove dead code in svc_sock_setbufsize
        svcrdma: Post Receives in the Receive completion handler
        nfsd4: permit layoutget of executable-only files
        lockd: convert nlm_rqst.a_count from atomic_t to refcount_t
        lockd: convert nlm_lockowner.count from atomic_t to refcount_t
        lockd: convert nsm_handle.sm_count from atomic_t to refcount_t
      f1517df8
    • L
      Merge branch 'idr-2018-02-06' of git://git.infradead.org/users/willy/linux-dax · 9d21874d
      Linus Torvalds 提交于
      Pull idr updates from Matthew Wilcox:
      
       - test-suite improvements
      
       - replace the extended API by improving the normal API
      
       - performance improvement for IDRs which are 1-based rather than
         0-based
      
       - add documentation
      
      * 'idr-2018-02-06' of git://git.infradead.org/users/willy/linux-dax:
        idr: Add documentation
        idr: Make 1-based IDRs more efficient
        idr: Warn if old iterators see large IDs
        idr: Rename idr_for_each_entry_ext
        idr: Remove idr_alloc_ext
        cls_u32: Convert to idr_alloc_u32
        cls_u32: Reinstate cyclic allocation
        cls_flower: Convert to idr_alloc_u32
        cls_bpf: Convert to use idr_alloc_u32
        cls_basic: Convert to use idr_alloc_u32
        cls_api: Convert to idr_alloc_u32
        net sched actions: Convert to use idr_alloc_u32
        idr: Add idr_alloc_u32 helper
        idr: Delete idr_find_ext function
        idr: Delete idr_replace_ext function
        idr: Delete idr_remove_ext function
        IDR test suite: Check handling negative end correctly
        idr test suite: Fix ida_test_random()
        radix tree test suite: Remove ARRAY_SIZE
      9d21874d
    • L
      Merge tag 'gcc-plugins-v4.16-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/kees/linux · 4ed8244e
      Linus Torvalds 提交于
      Pull gcc plugins updates from Kees Cook:
      
       - update includes for gcc 8 (Valdis Kletnieks)
      
       - update initializers for gcc 8
      
      * tag 'gcc-plugins-v4.16-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/kees/linux:
        gcc-plugins: Use dynamic initializers
        gcc-plugins: Add include required by GCC release 8
      4ed8244e
    • O
      fix parallelism for rpc tasks · f515f86b
      Olga Kornievskaia 提交于
      Hi folks,
      
      On a multi-core machine, is it expected that we can have parallel RPCs
      handled by each of the per-core workqueue?
      
      In testing a read workload, observing via "top" command that a single
      "kworker" thread is running servicing the requests (no parallelism).
      It's more prominent while doing these operations over krb5p mount.
      
      What has been suggested by Bruce is to try this and in my testing I
      see then the read workload spread among all the kworker threads.
      Signed-off-by: NOlga Kornievskaia <kolga@netapp.com>
      Signed-off-by: NTrond Myklebust <trond.myklebust@primarydata.com>
      f515f86b
    • L
      Merge tag 'for-linus-4.16' of git://git.kernel.org/pub/scm/linux/kernel/git/hubcap/linux · a0f79386
      Linus Torvalds 提交于
      Pull orangefs updates from Mike Marshall:
       "Mostly cleanups, but three bug fixes:
      
         - don't pass garbage return codes back up the call chain (Mike
           Marshall)
      
         - fix stale inode test (Martin Brandenburg)
      
         - fix off-by-one errors (Xiongfeng Wang)
      
        Also add Martin as a reviewer in the Maintainers file"
      
      * tag 'for-linus-4.16' of git://git.kernel.org/pub/scm/linux/kernel/git/hubcap/linux:
        orangefs: reverse sense of is-inode-stale test in d_revalidate
        orangefs: simplify orangefs_inode_is_stale
        Orangefs: don't propogate whacky error codes
        orangefs: use correct string length
        orangefs: make orangefs_make_bad_inode static
        orangefs: remove ORANGEFS_KERNEL_DEBUG
        orangefs: remove gossip_ldebug and gossip_lerr
        orangefs: make orangefs_client_debug_init static
        MAINTAINERS: update orangefs list and add myself as reviewer
      a0f79386
    • L
      Merge tag 'afs-next-20180208' of git://git.kernel.org/pub/scm/linux/kernel/git/dhowells/linux-fs · 81153336
      Linus Torvalds 提交于
      Pull afs updates from David Howells:
       "Four fixes:
      
         - add a missing put
      
         - two fixes to reset the address iteration cursor correctly
      
         - fix setting up the fileserver iteration cursor.
      
        Two cleanups:
      
         - remove some dead code
      
         - rearrange a function to be more logically laid out
      
        And one new feature:
      
         - Support AFS dynamic root.
      
           With this one should be able to do, say:
      
              mkdir /afs
              mount -t afs none /afs -o dyn
      
           to create a dynamic root and then, provided you have keyutils
           installed, do:
      
              ls /afs/grand.central.org
      
           and:
      
              ls /afs/umich.edu
      
           to list the root volumes of both those organisations' AFS cells
           without requiring any other setup (the kernel upcall to a program
           in the keyutils package to do DNS access as does NFS)"
      
      * tag 'afs-next-20180208' of git://git.kernel.org/pub/scm/linux/kernel/git/dhowells/linux-fs:
        afs: Support the AFS dynamic root
        afs: Rearrange afs_select_fileserver() a little
        afs: Remove unused code
        afs: Fix server list handling
        afs: Need to clear responded flag in addr cursor
        afs: Fix missing cursor clearance
        afs: Add missing afs_put_cell()
      81153336
    • L
      Merge tag 'iommu-updates-v4.16' of git://git.kernel.org/pub/scm/linux/kernel/git/joro/iommu · ef9417e8
      Linus Torvalds 提交于
      Pull IOMMU updates from Joerg Roedel:
       "This time there are not a lot of changes coming from the IOMMU side.
      
        That is partly because I returned from my parental leave late in the
        development process and probably partly because everyone was busy with
        Spectre and Meltdown mitigation work and didn't find the time for
        IOMMU work. So here are the few changes that queued up for this merge
        window:
      
         - 5-level page-table support for the Intel IOMMU.
      
         - error reporting improvements for the AMD IOMMU driver
      
         - additional DT bindings for ipmmu-vmsa (Renesas)
      
         - small fixes and cleanups"
      
      * tag 'iommu-updates-v4.16' of git://git.kernel.org/pub/scm/linux/kernel/git/joro/iommu:
        iommu: Clean up of_iommu_init_fn
        iommu/ipmmu-vmsa: Remove redundant of_iommu_init_fn hook
        iommu/msm: Claim bus ops on probe
        iommu/vt-d: Enable 5-level paging mode in the PASID entry
        iommu/vt-d: Add a check for 5-level paging support
        iommu/vt-d: Add a check for 1GB page support
        iommu/vt-d: Enable upto 57 bits of domain address width
        iommu/vt-d: Use domain instead of cache fetching
        iommu/exynos: Don't unconditionally steal bus ops
        iommu/omap: Fix debugfs_create_*() usage
        iommu/vt-d: clean up pr_irq if request_threaded_irq fails
        iommu: Check the result of iommu_group_get() for NULL
        iommu/ipmmu-vmsa: Add r8a779(70|95) DT bindings
        iommu/ipmmu-vmsa: Add r8a7796 DT binding
        iommu/amd: Set the device table entry PPR bit for IOMMU V2 devices
        iommu/amd - Record more information about unknown events
      ef9417e8
    • L
      Merge branch 'pcmcia' of git://git.kernel.org/pub/scm/linux/kernel/git/brodo/pcmcia · 605dc776
      Linus Torvalds 提交于
      Pull pcmcia updates from Dominik Brodowski:
       "The linux-pcmcia mailing list was shut down, so offer an alternative
        path for patches in MAINTAINERS.
      
        Also, throw in two odd fixes for the pcmcia subsystem"
      
      * 'pcmcia' of git://git.kernel.org/pub/scm/linux/kernel/git/brodo/pcmcia:
        pcmcia: soc_common: Handle return value of clk_prepare_enable
        pcmcia: use proper printk format for resource
        pcmcia: remove mailing list, update MAINTAINERS
      605dc776
    • L
      Merge tag 'drm-for-v4.16-part2-fixes' of git://people.freedesktop.org/~airlied/linux · fe26adf4
      Linus Torvalds 提交于
      Pull more drm updates from Dave Airlie:
       "Ben missed sending his nouveau tree, but he really didn't have much
        stuff in it:
      
         - GP108 acceleration support is enabled by "secure boot" support
      
         - some clockgating work on Kepler, and bunch of fixes
      
         - the bulk of the diff is regenerated firmware files, the change to
           them really isn't that large.
      
        Otherwise this contains regular Intel and AMDGPU fixes"
      
      * tag 'drm-for-v4.16-part2-fixes' of git://people.freedesktop.org/~airlied/linux: (59 commits)
        drm/i915/bios: add DP max link rate to VBT child device struct
        drm/i915/cnp: Properly handle VBT ddc pin out of bounds.
        drm/i915/cnp: Ignore VBT request for know invalid DDC pin.
        drm/i915/cmdparser: Do not check past the cmd length.
        drm/i915/cmdparser: Check reg_table_count before derefencing.
        drm/i915/bxt, glk: Increase PCODE timeouts during CDCLK freq changing
        drm/i915/gvt: Use KVM r/w to access guest opregion
        drm/i915/gvt: Fix aperture read/write emulation when enable x-no-mmap=on
        drm/i915/gvt: only reset execlist state of one engine during VM engine reset
        drm/i915/gvt: refine intel_vgpu_submission_ops as per engine ops
        drm/amdgpu: re-enable CGCG on CZ and disable on ST
        drm/nouveau/clk: fix gcc-7 -Wint-in-bool-context warning
        drm/nouveau/mmu: Fix trailing semicolon
        drm/nouveau: Introduce NvPmEnableGating option
        drm/nouveau: Add support for SLCG for Kepler2
        drm/nouveau: Add support for BLCG on Kepler2
        drm/nouveau: Add support for BLCG on Kepler1
        drm/nouveau: Add support for basic clockgating on Kepler1
        drm/nouveau/kms/nv50: fix handling of gamma since atomic conversion
        drm/nouveau/kms/nv50: use INTERPOLATE_257_UNITY_RANGE LUT on newer chipsets
        ...
      fe26adf4
    • L
      Merge tag 'ceph-for-4.16-rc1' of git://github.com/ceph/ceph-client · 9e95dae7
      Linus Torvalds 提交于
      Pull ceph updates from Ilya Dryomov:
       "Things have been very quiet on the rbd side, as work continues on the
        big ticket items slated for the next merge window.
      
        On the CephFS side we have a large number of cap handling
        improvements, a fix for our long-standing abuse of ->journal_info in
        ceph_readpages() and yet another dentry pointer management patch"
      
      * tag 'ceph-for-4.16-rc1' of git://github.com/ceph/ceph-client:
        ceph: improving efficiency of syncfs
        libceph: check kstrndup() return value
        ceph: try to allocate enough memory for reserved caps
        ceph: fix race of queuing delayed caps
        ceph: delete unreachable code in ceph_check_caps()
        ceph: limit rate of cap import/export error messages
        ceph: fix incorrect snaprealm when adding caps
        ceph: fix un-balanced fsc->writeback_count update
        ceph: track read contexts in ceph_file_info
        ceph: avoid dereferencing invalid pointer during cached readdir
        ceph: use atomic_t for ceph_inode_info::i_shared_gen
        ceph: cleanup traceless reply handling for rename
        ceph: voluntarily drop Fx cap for readdir request
        ceph: properly drop caps for setattr request
        ceph: voluntarily drop Lx cap for link/rename requests
        ceph: voluntarily drop Ax cap for requests that create new inode
        rbd: whitelist RBD_FEATURE_OPERATIONS feature bit
        rbd: don't NULL out ->obj_request in rbd_img_obj_parent_read_full()
        rbd: use kmem_cache_zalloc() in rbd_img_request_create()
        rbd: obj_request->completion is unused
      9e95dae7
    • N
      cramfs: better MTD dependency expression · a8c6db00
      Nicolas Pitre 提交于
      Commit b9f5fb18 ("cramfs: fix MTD dependency") did what it says.
      
      Since commit 9059a349 ("kconfig: fix relational operators for bool
      and tristate symbols") it is possible to do it slightly better though.
      Signed-off-by: NNicolas Pitre <nico@linaro.org>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      a8c6db00
    • L
      Merge tag 'arm64-upstream' of git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux · c0136321
      Linus Torvalds 提交于
      Pull more arm64 updates from Catalin Marinas:
       "As I mentioned in the last pull request, there's a second batch of
        security updates for arm64 with mitigations for Spectre/v1 and an
        improved one for Spectre/v2 (via a newly defined firmware interface
        API).
      
        Spectre v1 mitigation:
      
         - back-end version of array_index_mask_nospec()
      
         - masking of the syscall number to restrict speculation through the
           syscall table
      
         - masking of __user pointers prior to deference in uaccess routines
      
        Spectre v2 mitigation update:
      
         - using the new firmware SMC calling convention specification update
      
         - removing the current PSCI GET_VERSION firmware call mitigation as
           vendors are deploying new SMCCC-capable firmware
      
         - additional branch predictor hardening for synchronous exceptions
           and interrupts while in user mode
      
        Meltdown v3 mitigation update:
      
          - Cavium Thunder X is unaffected but a hardware erratum gets in the
            way. The kernel now starts with the page tables mapped as global
            and switches to non-global if kpti needs to be enabled.
      
        Other:
      
         - Theoretical trylock bug fixed"
      
      * tag 'arm64-upstream' of git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux: (38 commits)
        arm64: Kill PSCI_GET_VERSION as a variant-2 workaround
        arm64: Add ARM_SMCCC_ARCH_WORKAROUND_1 BP hardening support
        arm/arm64: smccc: Implement SMCCC v1.1 inline primitive
        arm/arm64: smccc: Make function identifiers an unsigned quantity
        firmware/psci: Expose SMCCC version through psci_ops
        firmware/psci: Expose PSCI conduit
        arm64: KVM: Add SMCCC_ARCH_WORKAROUND_1 fast handling
        arm64: KVM: Report SMCCC_ARCH_WORKAROUND_1 BP hardening support
        arm/arm64: KVM: Turn kvm_psci_version into a static inline
        arm/arm64: KVM: Advertise SMCCC v1.1
        arm/arm64: KVM: Implement PSCI 1.0 support
        arm/arm64: KVM: Add smccc accessors to PSCI code
        arm/arm64: KVM: Add PSCI_VERSION helper
        arm/arm64: KVM: Consolidate the PSCI include files
        arm64: KVM: Increment PC after handling an SMC trap
        arm: KVM: Fix SMCCC handling of unimplemented SMC/HVC calls
        arm64: KVM: Fix SMCCC handling of unimplemented SMC/HVC calls
        arm64: entry: Apply BP hardening for suspicious interrupts from EL0
        arm64: entry: Apply BP hardening for high-priority synchronous exceptions
        arm64: futex: Mask __user pointers prior to dereference
        ...
      c0136321
    • L
      Merge tag 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mst/vhost · 846ade7d
      Linus Torvalds 提交于
      Pull virtio/vhost updates from Michael Tsirkin:
       "virtio, vhost: fixes, cleanups, features
      
        This includes the disk/cache memory stats for for the virtio balloon,
        as well as multiple fixes and cleanups"
      
      * tag 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mst/vhost:
        vhost: don't hold onto file pointer for VHOST_SET_LOG_FD
        vhost: don't hold onto file pointer for VHOST_SET_VRING_ERR
        vhost: don't hold onto file pointer for VHOST_SET_VRING_CALL
        ringtest: ring.c malloc & memset to calloc
        virtio_vop: don't kfree device on register failure
        virtio_pci: don't kfree device on register failure
        virtio: split device_register into device_initialize and device_add
        vhost: remove unused lock check flag in vhost_dev_cleanup()
        vhost: Remove the unused variable.
        virtio_blk: print capacity at probe time
        virtio: make VIRTIO a menuconfig to ease disabling it all
        virtio/ringtest: virtio_ring: fix up need_event math
        virtio/ringtest: fix up need_event math
        virtio: virtio_mmio: make of_device_ids const.
        firmware: Use PTR_ERR_OR_ZERO()
        virtio-mmio: Use PTR_ERR_OR_ZERO()
        vhost/scsi: Improve a size determination in four functions
        virtio_balloon: include disk/file caches memory statistics
      846ade7d
    • C
      svcrdma: Fix Read chunk round-up · 175e0310
      Chuck Lever 提交于
      A single NFSv4 WRITE compound can often have three operations:
      PUTFH, WRITE, then GETATTR.
      
      When the WRITE payload is sent in a Read chunk, the client places
      the GETATTR in the inline part of the RPC/RDMA message, just after
      the WRITE operation (sans payload). The position value in the Read
      chunk enables the receiver to insert the Read chunk at the correct
      place in the received XDR stream; that is between the WRITE and
      GETATTR.
      
      According to RFC 8166, an NFS/RDMA client does not have to add XDR
      round-up to the Read chunk that carries the WRITE payload. The
      receiver adds XDR round-up padding if it is absent and the
      receiver's XDR decoder requires it to be present.
      
      Commit 193bcb7b ("svcrdma: Populate tail iovec when receiving")
      attempted to add support for receiving such a compound so that just
      the WRITE payload appears in rq_arg's page list, and the trailing
      GETATTR is placed in rq_arg's tail iovec. (TCP just strings the
      whole compound into the head iovec and page list, without regard
      to the alignment of the WRITE payload).
      
      The server transport logic also had to accommodate the optional XDR
      round-up of the Read chunk, which it did simply by lengthening the
      tail iovec when round-up was needed. This approach is adequate for
      the NFSv2 and NFSv3 WRITE decoders.
      
      Unfortunately it is not sufficient for nfsd4_decode_write. When the
      Read chunk length is a couple of bytes less than PAGE_SIZE, the
      computation at the end of nfsd4_decode_write allows argp->pagelen to
      go negative, which breaks the logic in read_buf that looks for the
      tail iovec.
      
      The result is that a WRITE operation whose payload length is just
      less than a multiple of a page succeeds, but the subsequent GETATTR
      in the same compound fails with NFS4ERR_OP_ILLEGAL because the XDR
      decoder can't find it. Clients ignore the error, but they must
      update their attribute cache via a separate round trip.
      
      As nfsd4_decode_write appears to expect the payload itself to always
      have appropriate XDR round-up, have svc_rdma_build_normal_read_chunk
      add the Read chunk XDR round-up to the page_len rather than
      lengthening the tail iovec.
      Reported-by: NOlga Kornievskaia <kolga@netapp.com>
      Fixes: 193bcb7b ("svcrdma: Populate tail iovec when receiving")
      Signed-off-by: NChuck Lever <chuck.lever@oracle.com>
      Tested-by: NOlga Kornievskaia <kolga@netapp.com>
      Signed-off-by: NJ. Bruce Fields <bfields@redhat.com>
      175e0310
    • A
      NFSD: hide unused svcxdr_dupstr() · 2285ae76
      Arnd Bergmann 提交于
      There is now only one caller left for svcxdr_dupstr() and this is inside
      of an #ifdef, so we can get a warning when the option is disabled:
      
      fs/nfsd/nfs4xdr.c:241:1: error: 'svcxdr_dupstr' defined but not used [-Werror=unused-function]
      
      This changes the remaining caller to use a nicer IS_ENABLED() check,
      which lets the compiler drop the unused code silently.
      
      Fixes: e40d99e6183e ("NFSD: Clean up symlink argument XDR decoders")
      Suggested-by: NRasmus Villemoes <rasmus.villemoes@prevas.dk>
      Signed-off-by: NArnd Bergmann <arnd@arndb.de>
      Signed-off-by: NJ. Bruce Fields <bfields@redhat.com>
      2285ae76
    • A
      nfsd: store stat times in fill_pre_wcc() instead of inode times · 39ca1bf6
      Amir Goldstein 提交于
      The time values in stat and inode may differ for overlayfs and stat time
      values are the correct ones to use. This is also consistent with the fact
      that fill_post_wcc() also stores stat time values.
      
      This means introducing a stat call that could fail, where previously we
      were just copying values out of the inode.  To be conservative about
      changing behavior, we fall back to copying values out of the inode in
      the error case.  It might be better just to clear fh_pre_saved (though
      note the BUG_ON in set_change_info).
      Signed-off-by: NAmir Goldstein <amir73il@gmail.com>
      Signed-off-by: NJ. Bruce Fields <bfields@redhat.com>
      39ca1bf6
    • A
      nfsd: encode stat->mtime for getattr instead of inode->i_mtime · 76c47948
      Amir Goldstein 提交于
      The values of stat->mtime and inode->i_mtime may differ for overlayfs
      and stat->mtime is the correct value to use when encoding getattr.
      This is also consistent with the fact that other attr times are also
      encoded from stat values.
      
      Both callers of lease_get_mtime() already have the value of stat->mtime,
      so the only needed change is that lease_get_mtime() will not overwrite
      this value with inode->i_mtime in case the inode does not have an
      exclusive lease.
      Signed-off-by: NAmir Goldstein <amir73il@gmail.com>
      Reviewed-by: NJeff Layton <jlayton@kernel.org>
      Signed-off-by: NJ. Bruce Fields <bfields@redhat.com>
      76c47948
    • J
      nfsd: return RESOURCE not GARBAGE_ARGS on too many ops · 0078117c
      J. Bruce Fields 提交于
      A client that sends more than a hundred ops in a single compound
      currently gets an rpc-level GARBAGE_ARGS error.
      
      It would be more helpful to return NFS4ERR_RESOURCE, since that gives
      the client a better idea how to recover (for example by splitting up the
      compound into smaller compounds).
      
      This is all a bit academic since we've never actually seen a reason for
      clients to send such long compounds, but we may as well fix it.
      
      While we're there, just use NFSD4_MAX_OPS_PER_COMPOUND == 16, the
      constant we already use in the 4.1 case, instead of hard-coding 100.
      Chances anyone actually uses even 16 ops per compound are small enough
      that I think there's a neglible risk or any regression.
      
      This fixes pynfs test COMP6.
      Reported-by: N"Lu, Xinyu" <luxy.fnst@cn.fujitsu.com>
      Signed-off-by: NJ. Bruce Fields <bfields@redhat.com>
      0078117c
    • L
      Merge tags 'cris-for-4.16' and 'cris-for-4.16-urgent' of... · 977e4152
      Linus Torvalds 提交于
      Merge tags 'cris-for-4.16' and 'cris-for-4.16-urgent' of git://git.kernel.org/pub/scm/linux/kernel/git/jesper/cris
      
      Pull CRIS updates and fixes from Jesper Nilsson:
      
       - a small fix for some conflicting symbols, aligning CRIS with other
         platforms.
      
       - fix build breakage regression for all CRIS SoCs. The main Makefile
         for the CRIS port was overzealously scrubbed in 4.15-rc3.
      
      * tag 'cris-for-4.16' of git://git.kernel.org/pub/scm/linux/kernel/git/jesper/cris:
        cris: Fix conflicting types for _etext, _edata, _end
      
      * tag 'cris-for-4.16-urgent' of git://git.kernel.org/pub/scm/linux/kernel/git/jesper/cris:
        CRIS: Restore mistakenly cleared kernel Makefile
      977e4152
  3. 08 2月, 2018 10 次提交