1. 02 Dec, 2019 5 commits
    • Linus Torvalds's avatar
      Merge tag 'mfd-next-5.5' of git://git.kernel.org/pub/scm/linux/kernel/git/lee/mfd · 37323918
      Linus Torvalds authored
      Pull MFD updates from Lee Jones:
       "Core Frameworks:
         - Add support for a "resource managed strongly uncachable ioremap"
           call
         - Provide a collection of MFD helper macros
         - Remove mfd_clone_cell() from MFD core
         - Add NULL de-reference protection in MFD core
         - Remove superfluous function fd_platform_add_cell() from MFD core
         - Honour Device Tree's request to disable a device
      
        New Drivers:
         - Add support for MediaTek MT6323 PMIC
      
        New Device Support:
         - Add support for Gemini Lake to Intel LPSS PCI
         - Add support for Cherry Trail Crystal Cover PMIC to Intel SoC PMIC
           CRC
         - Add support for PM{I}8950 to Qualcomm SPMI PMIC
         - Add support for U8420 to ST-Ericsson DB8500
         - Add support for Comet Lake PCH-H to Intel LPSS PCI
      
        New Functionality:
         - Add support for requested supply clocks; madera-core
      
        Fix-ups:
         - Lower interrupt priority; rk808
         - Use provided helpers (macros, group functions, defines); rk808,
           ipaq-micro, ab8500-core, db8500-prcmu, mt6397-core, cs5535-mfd
         - Only allocate IRQs on request; max77620
         - Use simplified API; arizona-core
         - Remove redundant and/or duplicated code; wm8998-tables, arizona,
           syscon
         - Device Tree binding fix-ups; madera, max77650, max77693
         - Remove mfd_cell->id abuse hack; cs5535-mfd
         - Remove only user of mfd_clone_cell(); cs5535-mfd
         - Make resources static; rohm-bd70528
      
        Bug Fixes:
         - Fix product ID for RK818; rk808
         - Fix Power Key; rk808
         - Fix booting on the BananaPi; mt6397-core
         - Endian fix-ups; twl.h
         - Fix static error checker warnings; ti_am335x_tscadc"
      
      * tag 'mfd-next-5.5' of git://git.kernel.org/pub/scm/linux/kernel/git/lee/mfd: (47 commits)
        Revert "mfd: syscon: Set name of regmap_config"
        mfd: ti_am335x_tscadc: Fix static checker warning
        mfd: bd70528: Staticize bit value definitions
        mfd: mfd-core: Honour Device Tree's request to disable a child-device
        dt-bindings: mfd: max77693: Fix missing curly brace
        mfd: intel-lpss: Add Intel Comet Lake PCH-H PCI IDs
        mfd: db8500-prcmu: Support U8420-sysclk firmware
        dt-bindings: mfd: max77650: Convert the binding document to yaml
        mfd: mfd-core: Move pdev->mfd_cell creation back into mfd_add_device()
        mfd: mfd-core: Remove usage counting for .{en,dis}able() call-backs
        x86: olpc-xo1-sci: Remove invocation of MFD's .enable()/.disable() call-backs
        x86: olpc-xo1-pm: Remove invocation of MFD's .enable()/.disable() call-backs
        mfd: mfd-core: Remove mfd_clone_cell()
        mfd: mfd-core: Protect against NULL call-back function pointer
        mfd: cs5535-mfd: Register clients using their own dedicated MFD cell entries
        mfd: cs5535-mfd: Request shared IO regions centrally
        mfd: cs5535-mfd: Remove mfd_cell->id hack
        mfd: cs5535-mfd: Use PLATFORM_DEVID_* defines and tidy error message
        mfd: intel_soc_pmic_crc: Add "cht_crystal_cove_pmic" cell to CHT cells
        mfd: madera: Add support for requesting the supply clocks
        ...
      37323918
    • Linus Torvalds's avatar
      Merge tag 'backlight-next-5.5' of git://git.kernel.org/pub/scm/linux/kernel/git/lee/backlight · 38edc3df
      Linus Torvalds authored
      Pull backlight updates from Lee Jones:
       "New Functionality:
         - Add support for an enable GPIO; lm3630a_bl
         - Add support for short circuit handling; qcom-wled
         - Add support for automatic string detection; qcom-wled
      
        Fix-ups:
         - Update Device Tree bindings; lm3630a-backlight, led-backlight,
           qcom-wled
         - Constify; ipaq_micro_bl
         - Optimise for CPU cycles; pwm_bl
         - Coding style fix-ups; pwm_bl
         - Trivial fix-ups (white space, comments, renaming); pwm_bl,
           gpio_backlight, qcom-wled
         - Kconfig dependency hacking; LCD_HP700
         - Rename, refactor and add peripherals; pm8941-wled => qcom-wled
         - Make use of GPIO look-up tables; tosa_bl, tosa_lcd
         - Remove superfluous code; gpio_backlight
         - Adapt GPIO direction handling; gpio_backlight
         - Remove legacy use of platform data; gpio_backlight
      
        Bug Fixes:
         - Provide modules aliases; lm3630a_bl"
      
      * tag 'backlight-next-5.5' of git://git.kernel.org/pub/scm/linux/kernel/git/lee/backlight: (32 commits)
        backlight: qcom-wled: Fix spelling mistake "trigged" -> "triggered"
        backlight: gpio: Pull gpio_backlight_initial_power_state() into probe
        backlight: gpio: Use a helper variable for &pdev->dev
        backlight: gpio: Remove unused fields from platform data
        sh: ecovec24: don't set unused fields in platform data
        backlight: gpio: Simplify the platform data handling
        sh: ecovec24: add additional properties to the backlight device
        backlight: gpio: Explicitly set the direction of the GPIO
        backlight: gpio: Remove stray newline
        backlight: gpio: Remove unneeded include
        video: backlight: tosa: Use GPIO lookup table
        backlight: qcom-wled: Add auto string detection logic
        backlight: qcom-wled: Add support for short circuit handling
        backlight: qcom-wled: Add support for WLED4 peripheral
        backlight: qcom-wled: Restructure the driver for WLED3
        backlight: qcom-wled: Rename PM8941* to WLED3
        backlight: qcom-wled: Add new properties for PMI8998
        backlight: qcom-wled: Restructure the qcom-wled bindings
        backlight: qcom-wled: Rename pm8941-wled.c to qcom-wled.c
        dt-bindings: backlight: lm3630a: Fix missing include
        ...
      38edc3df
    • Linus Torvalds's avatar
      Merge tag 'pinctrl-v5.5-2' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-pinctrl · 8b233da0
      Linus Torvalds authored
      Pull pinctrl fix from Linus Walleij:
       "A oneliner fix adding the license to the new Intel pin controller,
        avoiding a build-time warning"
      
      * tag 'pinctrl-v5.5-2' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-pinctrl:
        pinctrl: Fix warning by adding missing MODULE_LICENSE
      8b233da0
    • Linus Torvalds's avatar
      Merge tag 'leds-5.5-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/pavel/linux-leds · 304220b5
      Linus Torvalds authored
      Pull LED updates from Pavel Machek:
       "This contains usual small updates to drivers, and removal of PAGE_SIZE
        limits on /sys/class/leds/<led>/trigger.
      
        We should not be really having that many triggers; but with cpu
        activity triggers we do, and we'll eventually need to fix it, but...
        remove the limit for now"
      
      * tag 'leds-5.5-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/pavel/linux-leds: (26 commits)
        leds: trigger: netdev: fix handling on interface rename
        leds: an30259a: add a check for devm_regmap_init_i2c
        leds: mlxreg: Fix possible buffer overflow
        leds: pca953x: Use of_device_get_match_data()
        leds: core: Fix leds.h structure documentation
        leds: core: Fix devm_classdev_match to reference correct structure
        leds: core: Remove extern from header
        leds: lm3601x: Convert class registration to device managed
        leds: flash: Add devm_* functions to the flash class
        leds: flash: Remove extern from the header file
        leds: flash: Convert non extended registration to inline
        leds: Kconfig: Be consistent with the usage of "LED"
        leds: remove PAGE_SIZE limit of /sys/class/leds/<led>/trigger
        leds: tlc591xx: update the maximum brightness
        leds: lm3692x: Use flags from LM3692X_BRT_CTRL
        leds: lm3692x: Use flags from LM3692X_BOOST_CTRL
        leds: lm3692x: Handle failure to probe the regulator
        leds: lm3692x: Don't overwrite return value in error path
        leds: lm3692x: Print error value on dev_err
        leds: tlc591xx: use devm_led_classdev_register_ext()
        ...
      304220b5
    • Linus Torvalds's avatar
      Merge tag 'clk-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/clk/linux · ddebe839
      Linus Torvalds authored
      Pull clk updates from Stephen Boyd:
       "This merge window we have one small clk provider API in the core
        framework and then a bunch of driver updates and a handful of new
        drivers. In terms of diffstat the Qualcomm and Amlogic drivers are
        high up there because of all the clk data introcued by new drivers.
        The Nvidia Tegra driver had a lot of work done this cycle too to
        support suspend/resume and memory controllers. And the OMAP clk driver
        got proper clk and reset handling in place.
      
        Rounding out the patches are various updates to remove unused data,
        mark things static, correct incorrect data in drivers, etc. All the
        little things that improve drivers and maintain code health. I will
        point out that there's a patch in here for the GPIO clk driver, that
        almost nobody uses, which changes behavior and causes clk_set_rate()
        to try to change the GPIO gate clk's parent. Other than that things
        are fairly well SoC specific here.
      
        Core:
         - Add a clk provider API to get current parent index
         - Plug a memory leak in clk_unregister() path
      
        New Drivers:
         - CGU in Ingenix X1000
         - Bitmain BM1880 clks
         - Qualcomm MSM8998 GPU clk controllers
         - Qualcomm SC7180 GCC and RPMH clk controllers
         - Qualcomm QCS404 Q6SSTOP clk controllers
         - Add support for the Renesas R-Car M3-W+ (r8a77961) SoC
         - Add support for the Renesas RZ/G2N (r8a774b1) SoC
         - Add Tegra20/30 External Memory Clock (EMC) support
      
        Updates:
         - Make gpio gate clks propagate rate setting up to parent
         - Prepare Armada 3700 for suspend to RAM by moving PCIe
           suspend/resume priority
         - Drop unused variables, enums, etc. in various clk drivers
         - Convert various drivers to use devm_platform_ioremap_resource()
         - Use struct_size() some more in various clk drivers
         - Improve Rockchip px30 clk tree
         - Add suspend/resume support to Tegra210 clk driver
         - Reimplement SOR clks on earlier Tegra SoCs, helping HDMI and DP
         - Allwinner DT exports and H6 clk tree fixes
         - Proper clk and reset handling for OMAP SoCs
         - Revamped TI divider clk to clamp max divider
         - Make 1443X/1416X PLL clock structure common for reusing among i.MX8
           SoCs
         - Drop IMX7ULP_CLK_MIPI_PLL clock, it shouldn't be used
         - Add VIDEO2_PLL clock for imx8mq
         - Add missing gate clock for pll1/2 fixed dividers on i.MX8 SoCs
         - Add sm1 support in the Amlogic audio clock controller
         - Switch some clocks on R-Car Gen2/3 to .determine_rate()
         - Remove Renesas R-Car Gen2 legacy DT clock support
         - Improve arithmetic divisions on Renesas R-Car Gen2 and Gen3
         - Improve Renesas R-Car Gen3 SD clock handling
         - Add rate table for Samsung exynos542x GPU and VPLL clks
         - Fix potential CPU performance degradation after system
           suspend/resume cycle on exynos542x SoCs"
      
      * tag 'clk-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/clk/linux: (160 commits)
        clk: aspeed: Add RMII RCLK gates for both AST2500 MACs
        MAINTAINERS: Add entry for BM1880 SoC clock driver
        clk: Add common clock driver for BM1880 SoC
        dt-bindings: clock: Add devicetree binding for BM1880 SoC
        clk: Add clk_hw_unregister_composite helper function definition
        clk: Zero init clk_init_data in helpers
        clk: ingenic: Allow drivers to be built with COMPILE_TEST
        MAINTAINERS: Update section for Ux500 clock drivers
        clk: mark clk_disable_unused() as __init
        clk: Fix memory leak in clk_unregister()
        clk: Ingenic: Add CGU driver for X1000.
        dt-bindings: clock: Add X1000 bindings.
        clk: tegra: Use match_string() helper to simplify the code
        clk: pxa: fix one of the pxa RTC clocks
        clk: sprd: Use IS_ERR() to validate the return value of syscon_regmap_lookup_by_phandle()
        clk: armada-xp: remove unused code
        clk: tegra: Fix build error without CONFIG_PM_SLEEP
        clk: tegra: Add missing stubs for the case of !CONFIG_PM_SLEEP
        clk: tegra: Optimize PLLX restore on Tegra20/30
        clk: tegra: Add suspend and resume support on Tegra210
        ...
      ddebe839
  2. 01 Dec, 2019 7 commits
    • Linus Torvalds's avatar
      Merge tag 'y2038-cleanups-5.5' of git://git.kernel.org:/pub/scm/linux/kernel/git/arnd/playground · ceb30747
      Linus Torvalds authored
      Pull y2038 cleanups from Arnd Bergmann:
       "y2038 syscall implementation cleanups
      
        This is a series of cleanups for the y2038 work, mostly intended for
        namespace cleaning: the kernel defines the traditional time_t, timeval
        and timespec types that often lead to y2038-unsafe code. Even though
        the unsafe usage is mostly gone from the kernel, having the types and
        associated functions around means that we can still grow new users,
        and that we may be missing conversions to safe types that actually
        matter.
      
        There are still a number of driver specific patches needed to get the
        last users of these types removed, those have been submitted to the
        respective maintainers"
      
      Link: https://lore.kernel.org/lkml/20191108210236.1296047-1-arnd@arndb.de/
      
      * tag 'y2038-cleanups-5.5' of git://git.kernel.org:/pub/scm/linux/kernel/git/arnd/playground: (26 commits)
        y2038: alarm: fix half-second cut-off
        y2038: ipc: fix x32 ABI breakage
        y2038: fix typo in powerpc vdso "LOPART"
        y2038: allow disabling time32 system calls
        y2038: itimer: change implementation to timespec64
        y2038: move itimer reset into itimer.c
        y2038: use compat_{get,set}_itimer on alpha
        y2038: itimer: compat handling to itimer.c
        y2038: time: avoid timespec usage in settimeofday()
        y2038: timerfd: Use timespec64 internally
        y2038: elfcore: Use __kernel_old_timeval for process times
        y2038: make ns_to_compat_timeval use __kernel_old_timeval
        y2038: socket: use __kernel_old_timespec instead of timespec
        y2038: socket: remove timespec reference in timestamping
        y2038: syscalls: change remaining timeval to __kernel_old_timeval
        y2038: rusage: use __kernel_old_timeval
        y2038: uapi: change __kernel_time_t to __kernel_old_time_t
        y2038: stat: avoid 'time_t' in 'struct stat'
        y2038: ipc: remove __kernel_time_t reference from headers
        y2038: vdso: powerpc: avoid timespec references
        ...
      ceb30747
    • Linus Torvalds's avatar
      Merge tag 'compat-ioctl-5.5' of git://git.kernel.org:/pub/scm/linux/kernel/git/arnd/playground · 0da52210
      Linus Torvalds authored
      Pull removal of most of fs/compat_ioctl.c from Arnd Bergmann:
       "As part of the cleanup of some remaining y2038 issues, I came to
        fs/compat_ioctl.c, which still has a couple of commands that need
        support for time64_t.
      
        In completely unrelated work, I spent time on cleaning up parts of
        this file in the past, moving things out into drivers instead.
      
        After Al Viro reviewed an earlier version of this series and did a lot
        more of that cleanup, I decided to try to completely eliminate the
        rest of it and move it all into drivers.
      
        This series incorporates some of Al's work and many patches of my own,
        but in the end stops short of actually removing the last part, which
        is the scsi ioctl handlers. I have patches for those as well, but they
        need more testing or possibly a rewrite"
      
      * tag 'compat-ioctl-5.5' of git://git.kernel.org:/pub/scm/linux/kernel/git/arnd/playground: (42 commits)
        scsi: sd: enable compat ioctls for sed-opal
        pktcdvd: add compat_ioctl handler
        compat_ioctl: move SG_GET_REQUEST_TABLE handling
        compat_ioctl: ppp: move simple commands into ppp_generic.c
        compat_ioctl: handle PPPIOCGIDLE for 64-bit time_t
        compat_ioctl: move PPPIOCSCOMPRESS to ppp_generic
        compat_ioctl: unify copy-in of ppp filters
        tty: handle compat PPP ioctls
        compat_ioctl: move SIOCOUTQ out of compat_ioctl.c
        compat_ioctl: handle SIOCOUTQNSD
        af_unix: add compat_ioctl support
        compat_ioctl: reimplement SG_IO handling
        compat_ioctl: move WDIOC handling into wdt drivers
        fs: compat_ioctl: move FITRIM emulation into file systems
        gfs2: add compat_ioctl support
        compat_ioctl: remove unused convert_in_user macro
        compat_ioctl: remove last RAID handling code
        compat_ioctl: remove /dev/raw ioctl translation
        compat_ioctl: remove PCI ioctl translation
        compat_ioctl: remove joystick ioctl translation
        ...
      0da52210
    • Linus Torvalds's avatar
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/ebiederm/user-namespace · ad0b314e
      Linus Torvalds authored
      Pull sysctl system call removal from Eric Biederman:
       "As far as I can tell we have reached the point where no one enables
        the sysctl system call anymore. It still is enabled in a few
        defconfigs but they are mostly the rarely used one and in asking
        people about that it was more cut & paste enabled than anything else.
      
        This is single commit that just deletes code. Leaving just enough code
        so that the deprecated sysctl warning continues to be printed. If my
        analysis turns out to be wrong and someone actually cares it will be
        easy to revert this commit and have the system call again.
      
        There was one new xtensa defconfig in linux-next that enabled the
        system call this cycle and when asked about it the maintainer of the
        code replied that it was not enabled on purpose. As of today's
        linux-next tree that defconfig no longer enables the system call.
      
        What we saw in the review discussion was that if we go a step farther
        than my patch and mess with uapi headers there are pieces of code that
        won't compile, but nothing minds the system call actually disappearing
        from the kernel"
      
      Link: https://lore.kernel.org/lkml/201910011140.EA0181F13@keescook/
      
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/ebiederm/user-namespace:
        sysctl: Remove the sysctl system call
      ad0b314e
    • Linus Torvalds's avatar
      Merge tag 'seccomp-v5.5-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/kees/linux · b94ae8ad
      Linus Torvalds authored
      Pull seccomp updates from Kees Cook:
       "Mostly this is implementing the new flag SECCOMP_USER_NOTIF_FLAG_CONTINUE,
        but there are cleanups as well.
      
         - implement SECCOMP_USER_NOTIF_FLAG_CONTINUE (Christian Brauner)
      
         - fixes to selftests (Christian Brauner)
      
         - remove secure_computing() argument (Christian Brauner)"
      
      * tag 'seccomp-v5.5-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/kees/linux:
        seccomp: rework define for SECCOMP_USER_NOTIF_FLAG_CONTINUE
        seccomp: fix SECCOMP_USER_NOTIF_FLAG_CONTINUE test
        seccomp: simplify secure_computing()
        seccomp: test SECCOMP_USER_NOTIF_FLAG_CONTINUE
        seccomp: add SECCOMP_USER_NOTIF_FLAG_CONTINUE
        seccomp: avoid overflow in implicit constant conversion
      b94ae8ad
    • Linus Torvalds's avatar
      Merge tag 'audit-pr-20191126' of git://git.kernel.org/pub/scm/linux/kernel/git/pcmoore/audit · 3b805ca1
      Linus Torvalds authored
      Pull audit updates from Paul Moore:
       "Audit is back for v5.5, albeit with only two patches:
      
         - Allow for the auditing of suspicious O_CREAT usage via the new
           AUDIT_ANOM_CREAT record.
      
         - Remove a redundant if-conditional check found during code analysis.
           It's a minor change, but when the pull request is only two patches
           long, you need filler in the pull request email"
      
      [ Heh on the pull request filler. I wish more people tried to write
        better pull request messages, even if maybe it's not worth it for the
        trivial cases ;^)   - Linus ]
      
      * tag 'audit-pr-20191126' of git://git.kernel.org/pub/scm/linux/kernel/git/pcmoore/audit:
        audit: remove redundant condition check in kauditd_thread()
        audit: Report suspicious O_CREAT usage
      3b805ca1
    • Linus Torvalds's avatar
      Merge tag 'selinux-pr-20191126' of git://git.kernel.org/pub/scm/linux/kernel/git/pcmoore/selinux · ba75082e
      Linus Torvalds authored
      Pull selinux updates from Paul Moore:
       "Only three SELinux patches for v5.5:
      
         - Remove the size limit on SELinux policies, the limitation was a
           lingering vestige and no longer necessary.
      
         - Allow file labeling before the policy is loaded. This should ease
           some of the burden when the policy is initially loaded (no need to
           relabel files), but it should also help enable some new system
           concepts which dynamically create the root filesystem in the
           initrd.
      
         - Add support for the "greatest lower bound" policy construct which
           is defined as the intersection of the MLS range of two SELinux
           labels"
      
      * tag 'selinux-pr-20191126' of git://git.kernel.org/pub/scm/linux/kernel/git/pcmoore/selinux:
        selinux: default_range glblub implementation
        selinux: allow labeling before policy is loaded
        selinux: remove load size limit
      ba75082e
    • Linus Torvalds's avatar
      Merge tag 'kgdb-5.5-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/danielt/linux · 8a99117f
      Linus Torvalds authored
      Pull kgdb updates from Daniel Thompson:
       "The major change here is the work from Douglas Anderson that reworks
        the way kdb stack traces are handled on SMP systems. The effect is to
        allow all CPUs to issue their stack trace which reduced the need for
        architecture specific code to support stack tracing.
      
        Also included are general of clean ups from Doug and myself:
      
         - Remove some unused variables or arguments.
      
         - Tidy up the kdb escape handling code and fix a couple of odd corner
           cases.
      
         - Better ignore escape characters that do not form part of an escape
           sequence. This mostly benefits vi users since they are most likely
           to press escape as a nervous habit but it won't harm anyone else"
      
      * tag 'kgdb-5.5-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/danielt/linux:
        kdb: Tweak escape handling for vi users
        kdb: Improve handling of characters from different input sources
        kdb: Remove special case logic from kdb_read()
        kdb: Simplify code to fetch characters from console
        kdb: Tidy up code to handle escape sequences
        kdb: Avoid array subscript warnings on non-SMP builds
        kdb: Fix stack crawling on 'running' CPUs that aren't the master
        kdb: Fix "btc <cpu>" crash if the CPU didn't round up
        kdb: Remove unused "argcount" param from kdb_bt1(); make btaprompt bool
        kgdb: Remove unused DCPU_SSTEP definition
      8a99117f
  3. 30 Nov, 2019 18 commits
    • Linus Torvalds's avatar
      Merge tag 'hyperv-next-signed' of git://git.kernel.org/pub/scm/linux/kernel/git/hyperv/linux · 0dd0c8f7
      Linus Torvalds authored
      Pull Hyper-V updates from Sasha Levin:
      
       - support for new VMBus protocols (Andrea Parri)
      
       - hibernation support (Dexuan Cui)
      
       - latency testing framework (Branden Bonaby)
      
       - decoupling Hyper-V page size from guest page size (Himadri Pandya)
      
      * tag 'hyperv-next-signed' of git://git.kernel.org/pub/scm/linux/kernel/git/hyperv/linux: (22 commits)
        Drivers: hv: vmbus: Fix crash handler reset of Hyper-V synic
        drivers/hv: Replace binary semaphore with mutex
        drivers: iommu: hyperv: Make HYPERV_IOMMU only available on x86
        HID: hyperv: Add the support of hibernation
        hv_balloon: Add the support of hibernation
        x86/hyperv: Implement hv_is_hibernation_supported()
        Drivers: hv: balloon: Remove dependencies on guest page size
        Drivers: hv: vmbus: Remove dependencies on guest page size
        x86: hv: Add function to allocate zeroed page for Hyper-V
        Drivers: hv: util: Specify ring buffer size using Hyper-V page size
        Drivers: hv: Specify receive buffer size using Hyper-V page size
        tools: hv: add vmbus testing tool
        drivers: hv: vmbus: Introduce latency testing
        video: hyperv: hyperv_fb: Support deferred IO for Hyper-V frame buffer driver
        video: hyperv: hyperv_fb: Obtain screen resolution from Hyper-V host
        hv_netvsc: Add the support of hibernation
        hv_sock: Add the support of hibernation
        video: hyperv_fb: Add the support of hibernation
        scsi: storvsc: Add the support of hibernation
        Drivers: hv: vmbus: Add module parameter to cap the VMBus version
        ...
      0dd0c8f7
    • Linus Torvalds's avatar
      Merge branch 'ras-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 8fa91bfa
      Linus Torvalds authored
      Pull RAS fix from Borislav Petkov:
       "One urgent fix for the thermal throttling machinery: the recent change
        reworking the thermal notifications forgot to mask out read-only and
        reserved bits in the thermal status MSRs, leading to exceptions while
        writing those MSRs.
      
        The fix takes care of masking out those bits first"
      
      * 'ras-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86/mce/therm_throt: Mask out read-only and reserved MSR bits
      8fa91bfa
    • Linus Torvalds's avatar
      Merge branch 'parisc-5.5-1' of git://git.kernel.org/pub/scm/linux/kernel/git/deller/parisc-linux · 738d5fab
      Linus Torvalds authored
      Pull parisc updates from Helge Deller:
       "Just trivial small updates: An assembler register optimization in the
        inlined networking checksum functions, a compiler warning fix and
        don't unneccesary print a runtime warning on machines which wouldn't
        be affected anyway"
      
      * 'parisc-5.5-1' of git://git.kernel.org/pub/scm/linux/kernel/git/deller/parisc-linux:
        parisc: Avoid spurious inequivalent alias kernel error messages
        kexec: Fix pointer-to-int-cast warnings
        parisc: Do not hardcode registers in checksum functions
      738d5fab
    • Linus Torvalds's avatar
      Merge tag 'powerpc-5.5-1' of git://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux · 7794b1d4
      Linus Torvalds authored
      Pull powerpc updates from Michael Ellerman:
       "Highlights:
      
         - Infrastructure for secure boot on some bare metal Power9 machines.
           The firmware support is still in development, so the code here
           won't actually activate secure boot on any existing systems.
      
         - A change to xmon (our crash handler / pseudo-debugger) to restrict
           it to read-only mode when the kernel is lockdown'ed, otherwise it's
           trivial to drop into xmon and modify kernel data, such as the
           lockdown state.
      
         - Support for KASLR on 32-bit BookE machines (Freescale / NXP).
      
         - Fixes for our flush_icache_range() and __kernel_sync_dicache()
           (VDSO) to work with memory ranges >4GB.
      
         - Some reworks of the pseries CMM (Cooperative Memory Management)
           driver to make it behave more like other balloon drivers and enable
           some cleanups of generic mm code.
      
         - A series of fixes to our hardware breakpoint support to properly
           handle unaligned watchpoint addresses.
      
        Plus a bunch of other smaller improvements, fixes and cleanups.
      
        Thanks to: Alastair D'Silva, Andrew Donnellan, Aneesh Kumar K.V,
        Anthony Steinhauser, Cédric Le Goater, Chris Packham, Chris Smart,
        Christophe Leroy, Christopher M. Riedl, Christoph Hellwig, Claudio
        Carvalho, Daniel Axtens, David Hildenbrand, Deb McLemore, Diana
        Craciun, Eric Richter, Geert Uytterhoeven, Greg Kroah-Hartman, Greg
        Kurz, Gustavo L. F. Walbon, Hari Bathini, Harish, Jason Yan, Krzysztof
        Kozlowski, Leonardo Bras, Mathieu Malaterre, Mauro S. M. Rodrigues,
        Michal Suchanek, Mimi Zohar, Nathan Chancellor, Nathan Lynch, Nayna
        Jain, Nick Desaulniers, Oliver O'Halloran, Qian Cai, Rasmus Villemoes,
        Ravi Bangoria, Sam Bobroff, Santosh Sivaraj, Scott Wood, Thomas Huth,
        Tyrel Datwyler, Vaibhav Jain, Valentin Longchamp, YueHaibing"
      
      * tag 'powerpc-5.5-1' of git://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux: (144 commits)
        powerpc/fixmap: fix crash with HIGHMEM
        x86/efi: remove unused variables
        powerpc: Define arch_is_kernel_initmem_freed() for lockdep
        powerpc/prom_init: Use -ffreestanding to avoid a reference to bcmp
        powerpc: Avoid clang warnings around setjmp and longjmp
        powerpc: Don't add -mabi= flags when building with Clang
        powerpc: Fix Kconfig indentation
        powerpc/fixmap: don't clear fixmap area in paging_init()
        selftests/powerpc: spectre_v2 test must be built 64-bit
        powerpc/powernv: Disable native PCIe port management
        powerpc/kexec: Move kexec files into a dedicated subdir.
        powerpc/32: Split kexec low level code out of misc_32.S
        powerpc/sysdev: drop simple gpio
        powerpc/83xx: map IMMR with a BAT.
        powerpc/32s: automatically allocate BAT in setbat()
        powerpc/ioremap: warn on early use of ioremap()
        powerpc: Add support for GENERIC_EARLY_IOREMAP
        powerpc/fixmap: Use __fix_to_virt() instead of fix_to_virt()
        powerpc/8xx: use the fixmapped IMMR in cpm_reset()
        powerpc/8xx: add __init to cpm1 init functions
        ...
      7794b1d4
    • Linus Torvalds's avatar
      Merge tag 'for-linus' of git://git.armlinux.org.uk/~rmk/linux-arm · 9dd00138
      Linus Torvalds authored
      Pull ARM updates from Russell King:
      
       - improve ARM implementation of pfn_valid()
      
       - various sparse fixes
      
       - spelling fixes
      
       - add further ARMv8 debug architecture versions
      
       - clang fix for decompressor
      
       - update to generic vDSO
      
       - remove Brahma-B53 from spectre hardening
      
       - initialise broadcast hrtimer device
      
       - use correct nm executable in decompressor
      
       - remove old mcount et.al.
      
      * tag 'for-linus' of git://git.armlinux.org.uk/~rmk/linux-arm: (26 commits)
        ARM: 8940/1: ftrace: remove mcount(),ftrace_caller_old() and ftrace_call_old()
        ARM: 8939/1: kbuild: use correct nm executable
        ARM: 8938/1: kernel: initialize broadcast hrtimer based clock event device
        ARM: 8937/1: spectre-v2: remove Brahma-B53 from hardening
        ARM: 8933/1: replace Sun/Solaris style flag on section directive
        ARM: 8932/1: Add clock_gettime64 entry point
        ARM: 8931/1: Add clock_getres entry point
        ARM: 8930/1: Add support for generic vDSO
        ARM: 8929/1: use APSR_nzcv instead of r15 as mrc operand
        ARM: 8927/1: ARM/hw_breakpoint: add more ARMv8 debug architecture versions support
        ARM: 8918/2: only build return_address() if needed
        ARM: 8928/1: ARM_ERRATA_775420: Spelling s/date/data/
        ARM: 8925/1: tcm: include <asm/tcm.h> for missing declarations
        ARM: 8924/1: tcm: make dtcm_end and itcm_end static
        ARM: 8923/1: mm: include <asm/vga.h> for vga_base
        ARM: 8922/1: parse_dt_topology() rate is pointer to __be32
        ARM: 8920/1: share get_signal_page from signal.c to process.c
        ARM: 8919/1: make unexported functions static
        ARM: 8917/1: mm: include <asm/set_memory.h>
        ARM: 8916/1: mm: make set_section_perms() static
        ...
      9dd00138
    • Linus Torvalds's avatar
      Merge tag 'nds32-for-linus-5.5-rc1' of... · 2309d076
      Linus Torvalds authored
      Merge tag 'nds32-for-linus-5.5-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/greentime/linux
      
      Pull nds32 updates from Greentime Hu:
      
       - code clean up
      
       - add a nds32 maintainer
      
      * tag 'nds32-for-linus-5.5-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/greentime/linux:
        MAINTAINERS: add nds32 maintainer
        nds32: Move static keyword to the front of declaration
        nds32: Fix typo in Kconfig.cpu
        nds32: remove unneeded clean-files for DTB
      2309d076
    • Linus Torvalds's avatar
      Merge tag 'notifications-pipe-prep-20191115' of... · 6a965666
      Linus Torvalds authored
      Merge tag 'notifications-pipe-prep-20191115' of git://git.kernel.org/pub/scm/linux/kernel/git/dhowells/linux-fs
      
      Pull pipe rework from David Howells:
       "This is my set of preparatory patches for building a general
        notification queue on top of pipes. It makes a number of significant
        changes:
      
         - It removes the nr_exclusive argument from __wake_up_sync_key() as
           this is always 1. This prepares for the next step:
      
         - Adds wake_up_interruptible_sync_poll_locked() so that poll can be
           woken up from a function that's holding the poll waitqueue
           spinlock.
      
         - Change the pipe buffer ring to be managed in terms of unbounded
           head and tail indices rather than bounded index and length. This
           means that reading the pipe only needs to modify one index, not
           two.
      
         - A selection of helper functions are provided to query the state of
           the pipe buffer, plus a couple to apply updates to the pipe
           indices.
      
         - The pipe ring is allowed to have kernel-reserved slots. This allows
           many notification messages to be spliced in by the kernel without
           allowing userspace to pin too many pages if it writes to the same
           pipe.
      
         - Advance the head and tail indices inside the pipe waitqueue lock
           and use wake_up_interruptible_sync_poll_locked() to poke poll
           without having to take the lock twice.
      
         - Rearrange pipe_write() to preallocate the buffer it is going to
           write into and then drop the spinlock. This allows kernel
           notifications to then be added the ring whilst it is filling the
           buffer it allocated. The read side is stalled because the pipe
           mutex is still held.
      
         - Don't wake up readers on a pipe if there was already data in it
           when we added more.
      
         - Don't wake up writers on a pipe if the ring wasn't full before we
           removed a buffer"
      
      * tag 'notifications-pipe-prep-20191115' of git://git.kernel.org/pub/scm/linux/kernel/git/dhowells/linux-fs:
        pipe: Remove sync on wake_ups
        pipe: Increase the writer-wakeup threshold to reduce context-switch count
        pipe: Check for ring full inside of the spinlock in pipe_write()
        pipe: Remove redundant wakeup from pipe_write()
        pipe: Rearrange sequence in pipe_write() to preallocate slot
        pipe: Conditionalise wakeup in pipe_read()
        pipe: Advance tail pointer inside of wait spinlock in pipe_read()
        pipe: Allow pipes to have kernel-reserved slots
        pipe: Use head and tail pointers for the ring, not cursor and length
        Add wake_up_interruptible_sync_poll_locked()
        Remove the nr_exclusive argument from __wake_up_sync_key()
        pipe: Reduce #inclusion of pipe_fs_i.h
      6a965666
    • Linus Torvalds's avatar
      Merge tag 'fsnotify_for_v5.5-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/jack/linux-fs · 32ef9553
      Linus Torvalds authored
      Pull fsnotify updates from Jan Kara:
       "Three fsnotify cleanups"
      
      * tag 'fsnotify_for_v5.5-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/jack/linux-fs:
        fsnotify: Add git tree reference to MAINTAINERS
        fsnotify/fdinfo: exportfs_encode_inode_fh() takes pointer as 4th argument
        fsnotify: move declaration of fsnotify_mark_connector_cachep to fsnotify.h
      32ef9553
    • Linus Torvalds's avatar
      Merge tag 'for_v5.5-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/jack/linux-fs · b8072d5b
      Linus Torvalds authored
      Pull ext2, quota, reiserfs cleanups and fixes from Jan Kara:
      
       - Refactor the quota on/off kernel internal interfaces (mostly for
         ubifs quota support as ubifs does not want to have inodes holding
         quota information)
      
       - A few other small quota fixes and cleanups
      
       - Various small ext2 fixes and cleanups
      
       - Reiserfs xattr fix and one cleanup
      
      * tag 'for_v5.5-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/jack/linux-fs: (28 commits)
        ext2: code cleanup for descriptor_loc()
        fs/quota: handle overflows of sysctl fs.quota.* and report as unsigned long
        ext2: fix improper function comment
        ext2: code cleanup for ext2_try_to_allocate()
        ext2: skip unnecessary operations in ext2_try_to_allocate()
        ext2: Simplify initialization in ext2_try_to_allocate()
        ext2: code cleanup by calling ext2_group_last_block_no()
        ext2: introduce new helper ext2_group_last_block_no()
        reiserfs: replace open-coded atomic_dec_and_mutex_lock()
        ext2: check err when partial != NULL
        quota: Handle quotas without quota inodes in dquot_get_state()
        quota: Make dquot_disable() work without quota inodes
        quota: Drop dquot_enable()
        fs: Use dquot_load_quota_inode() from filesystems
        quota: Rename vfs_load_quota_inode() to dquot_load_quota_inode()
        quota: Simplify dquot_resume()
        quota: Factor out setup of quota inode
        quota: Check that quota is not dirty before release
        quota: fix livelock in dquot_writeback_dquots
        ext2: don't set *count in the case of failure in ext2_try_to_allocate()
        ...
      b8072d5b
    • Linus Torvalds's avatar
      Merge tag 'erofs-for-5.5-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/xiang/erofs · e2d73c30
      Linus Torvalds authored
      Pull erofs updates from Gao Xiang:
       "No major kernel updates for this round since I'm fully diving into
        LZMA algorithm internals now to provide high CR XZ algorihm support.
        That needs more work and time for me to get a better compression time.
      
        Summary:
      
         - Introduce superblock checksum support
      
         - Set iowait when waiting I/O for sync decompression path
      
         - Several code cleanups"
      
      * tag 'erofs-for-5.5-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/xiang/erofs:
        erofs: remove unnecessary output in erofs_show_options()
        erofs: drop all vle annotations for runtime names
        erofs: support superblock checksum
        erofs: set iowait for sync decompression
        erofs: clean up decompress queue stuffs
        erofs: get rid of __stagingpage_alloc helper
        erofs: remove dead code since managed cache is now built-in
        erofs: clean up collection handling routines
      e2d73c30
    • Linus Torvalds's avatar
      Merge tag '5.5-rc-smb3-fixes' of git://git.samba.org/sfrench/cifs-2.6 · 21b26d26
      Linus Torvalds authored
      Pull cifs updates from Steve French:
       "Various smb3 fixes (including 12 for stable) and also features
        (addition of multichannel support)"
      
      * tag '5.5-rc-smb3-fixes' of git://git.samba.org/sfrench/cifs-2.6: (41 commits)
        CIFS: fix a white space issue in cifs_get_inode_info()
        cifs: update internal module version number
        cifs: Always update signing key of first channel
        cifs: Fix retrieval of DFS referrals in cifs_mount()
        cifs: Fix potential softlockups while refreshing DFS cache
        cifs: Fix lookup of root ses in DFS referral cache
        cifs: Fix use-after-free bug in cifs_reconnect()
        cifs: dump channel info in DebugData
        smb3: dump in_send and num_waiters stats counters by default
        cifs: try harder to open new channels
        CIFS: Properly process SMB3 lease breaks
        cifs: move cifsFileInfo_put logic into a work-queue
        cifs: try opening channels after mounting
        CIFS: refactor cifs_get_inode_info()
        cifs: switch servers depending on binding state
        cifs: add server param
        cifs: add multichannel mount options and data structs
        cifs: sort interface list by speed
        CIFS: Fix SMB2 oplock break processing
        cifs: don't use 'pre:' for MODULE_SOFTDEP
        ...
      21b26d26
    • Linus Torvalds's avatar
      Merge tag 'f2fs-for-5.5' of git://git.kernel.org/pub/scm/linux/kernel/git/jaegeuk/f2fs · 8f45533e
      Linus Torvalds authored
      Pull f2fs updates from Jaegeuk Kim:
       "In this round, we've introduced fairly small number of patches as below.
      
        Enhancements:
         - improve the in-place-update IO flow
         - allocate segment to guarantee no GC for pinned files
      
        Bug fixes:
         - fix updatetime in lazytime mode
         - potential memory leak in f2fs_listxattr
         - record parent inode number in rename2 correctly
         - fix deadlock in f2fs_gc along with atomic writes
         - avoid needless data migration in GC"
      
      * tag 'f2fs-for-5.5' of git://git.kernel.org/pub/scm/linux/kernel/git/jaegeuk/f2fs:
        f2fs: stop GC when the victim becomes fully valid
        f2fs: expose main_blkaddr in sysfs
        f2fs: choose hardlimit when softlimit is larger than hardlimit in f2fs_statfs_project()
        f2fs: Fix deadlock in f2fs_gc() context during atomic files handling
        f2fs: show f2fs instance in printk_ratelimited
        f2fs: fix potential overflow
        f2fs: fix to update dir's i_pino during cross_rename
        f2fs: support aligned pinned file
        f2fs: avoid kernel panic on corruption test
        f2fs: fix wrong description in document
        f2fs: cache global IPU bio
        f2fs: fix to avoid memory leakage in f2fs_listxattr
        f2fs: check total_segments from devices in raw_super
        f2fs: update multi-dev metadata in resize_fs
        f2fs: mark recovery flag correctly in read_raw_super_block()
        f2fs: fix to update time in lazytime mode
      8f45533e
    • Linus Torvalds's avatar
      Merge tag 'afs-next-20191121' of git://git.kernel.org/pub/scm/linux/kernel/git/dhowells/linux-fs · 4a55d362
      Linus Torvalds authored
      Pull AFS updates from David Howells:
       "Minor cleanups and fix:
      
         - Minor fix to make some debugging statements display information
           from the correct iov_iter.
      
         - Rename some members and variables to make things more obvious or
           consistent.
      
         - Provide a helper to wrap increments of the usage count on the
           afs_read struct.
      
         - Use scnprintf() to print into a stack buffer rather than sprintf().
      
         - Remove some set but unused variables"
      
      * tag 'afs-next-20191121' of git://git.kernel.org/pub/scm/linux/kernel/git/dhowells/linux-fs:
        afs: Remove set but not used variable 'ret'
        afs: Remove set but not used variables 'before', 'after'
        afs: xattr: use scnprintf
        afs: Introduce an afs_get_read() refcount helper
        afs: Rename desc -> req in afs_fetch_data()
        afs: Switch the naming of call->iter and call->_iter
        afs: Use call->_iter not &call->iter in debugging statements
      4a55d362
    • Linus Torvalds's avatar
      Merge tag 'ext4_for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tytso/ext4 · 50b8b3f8
      Linus Torvalds authored
      Pull ext4 updates from Ted Ts'o:
       "This merge window saw the the following new featuers added to ext4:
      
         - Direct I/O via iomap (required the iomap-for-next branch from
           Darrick as a prereq).
      
         - Support for using dioread-nolock where the block size < page size.
      
         - Support for encryption for file systems where the block size < page
           size.
      
         - Rework of journal credits handling so a revoke-heavy workload will
           not cause the journal to run out of space.
      
         - Replace bit-spinlocks with spinlocks in jbd2
      
        Also included were some bug fixes and cleanups, mostly to clean up
        corner cases from fuzzed file systems and error path handling"
      
      * tag 'ext4_for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tytso/ext4: (59 commits)
        ext4: work around deleting a file with i_nlink == 0 safely
        ext4: add more paranoia checking in ext4_expand_extra_isize handling
        jbd2: make jbd2_handle_buffer_credits() handle reserved handles
        ext4: fix a bug in ext4_wait_for_tail_page_commit
        ext4: bio_alloc with __GFP_DIRECT_RECLAIM never fails
        ext4: code cleanup for get_next_id
        ext4: fix leak of quota reservations
        ext4: remove unused variable warning in parse_options()
        ext4: Enable encryption for subpage-sized blocks
        fs/buffer.c: support fscrypt in block_read_full_page()
        ext4: Add error handling for io_end_vec struct allocation
        jbd2: Fine tune estimate of necessary descriptor blocks
        jbd2: Provide trace event for handle restarts
        ext4: Reserve revoke credits for freed blocks
        jbd2: Make credit checking more strict
        jbd2: Rename h_buffer_credits to h_total_credits
        jbd2: Reserve space for revoke descriptor blocks
        jbd2: Drop jbd2_space_needed()
        jbd2: Account descriptor blocks into t_outstanding_credits
        jbd2: Factor out common parts of stopping and restarting a handle
        ...
      50b8b3f8
    • Linus Torvalds's avatar
      Merge tag 'vfs-5.5-merge-1' of git://git.kernel.org/pub/scm/fs/xfs/xfs-linux · f112a2fd
      Linus Torvalds authored
      Pull splice fix from Darrick Wong:
       "Fix another place in the splice code where a pipe could ask a
        filesystem for a longer read than the pipe actually has free buffer
        space"
      
      * tag 'vfs-5.5-merge-1' of git://git.kernel.org/pub/scm/fs/xfs/xfs-linux:
        splice: only read in as much information as there is pipe buffer space
      f112a2fd
    • Linus Torvalds's avatar
      Merge tag 'iomap-5.5-merge-11' of git://git.kernel.org/pub/scm/fs/xfs/xfs-linux · 3b266a52
      Linus Torvalds authored
      Pull iomap updates from Darrick Wong:
       "In this release, we hoisted as much of XFS' writeback code into iomap
        as was practicable, refactored the unshare file data function, added
        the ability to perform buffered io copy on write, and tweaked various
        parts of the directio implementation as needed to port ext4's directio
        code (that will be a separate pull).
      
        Summary:
      
         - Make iomap_dio_rw callers explicitly tell us if they want us to
           wait
      
         - Port the xfs writeback code to iomap to complete the buffered io
           library functions
      
         - Refactor the unshare code to share common pieces
      
         - Add support for performing copy on write with buffered writes
      
         - Other minor fixes
      
         - Fix unchecked return in iomap_bmap
      
         - Fix a type casting bug in a ternary statement in
           iomap_dio_bio_actor
      
         - Improve tracepoints for easier diagnostic ability
      
         - Fix pipe page leakage in directio reads"
      
      * tag 'iomap-5.5-merge-11' of git://git.kernel.org/pub/scm/fs/xfs/xfs-linux: (31 commits)
        iomap: Fix pipe page leakage during splicing
        iomap: trace iomap_appply results
        iomap: fix return value of iomap_dio_bio_actor on 32bit systems
        iomap: iomap_bmap should check iomap_apply return value
        iomap: Fix overflow in iomap_page_mkwrite
        fs/iomap: remove redundant check in iomap_dio_rw()
        iomap: use a srcmap for a read-modify-write I/O
        iomap: renumber IOMAP_HOLE to 0
        iomap: use write_begin to read pages to unshare
        iomap: move the zeroing case out of iomap_read_page_sync
        iomap: ignore non-shared or non-data blocks in xfs_file_dirty
        iomap: always use AOP_FLAG_NOFS in iomap_write_begin
        iomap: remove the unused iomap argument to __iomap_write_end
        iomap: better document the IOMAP_F_* flags
        iomap: enhance writeback error message
        iomap: pass a struct page to iomap_finish_page_writeback
        iomap: cleanup iomap_ioend_compare
        iomap: move struct iomap_page out of iomap.h
        iomap: warn on inline maps in iomap_writepage_map
        iomap: lift the xfs writeback code to iomap
        ...
      3b266a52
    • Linus Torvalds's avatar
      Merge tag 'for-linus-hmm' of git://git.kernel.org/pub/scm/linux/kernel/git/rdma/rdma · aa32f116
      Linus Torvalds authored
      Pull hmm updates from Jason Gunthorpe:
       "This is another round of bug fixing and cleanup. This time the focus
        is on the driver pattern to use mmu notifiers to monitor a VA range.
        This code is lifted out of many drivers and hmm_mirror directly into
        the mmu_notifier core and written using the best ideas from all the
        driver implementations.
      
        This removes many bugs from the drivers and has a very pleasing
        diffstat. More drivers can still be converted, but that is for another
        cycle.
      
         - A shared branch with RDMA reworking the RDMA ODP implementation
      
         - New mmu_interval_notifier API. This is focused on the use case of
           monitoring a VA and simplifies the process for drivers
      
         - A common seq-count locking scheme built into the
           mmu_interval_notifier API usable by drivers that call
           get_user_pages() or hmm_range_fault() with the VA range
      
         - Conversion of mlx5 ODP, hfi1, radeon, nouveau, AMD GPU, and Xen
           GntDev drivers to the new API. This deletes a lot of wonky driver
           code.
      
         - Two improvements for hmm_range_fault(), from testing done by Ralph"
      
      * tag 'for-linus-hmm' of git://git.kernel.org/pub/scm/linux/kernel/git/rdma/rdma:
        mm/hmm: remove hmm_range_dma_map and hmm_range_dma_unmap
        mm/hmm: make full use of walk_page_range()
        xen/gntdev: use mmu_interval_notifier_insert
        mm/hmm: remove hmm_mirror and related
        drm/amdgpu: Use mmu_interval_notifier instead of hmm_mirror
        drm/amdgpu: Use mmu_interval_insert instead of hmm_mirror
        drm/amdgpu: Call find_vma under mmap_sem
        nouveau: use mmu_interval_notifier instead of hmm_mirror
        nouveau: use mmu_notifier directly for invalidate_range_start
        drm/radeon: use mmu_interval_notifier_insert
        RDMA/hfi1: Use mmu_interval_notifier_insert for user_exp_rcv
        RDMA/odp: Use mmu_interval_notifier_insert()
        mm/hmm: define the pre-processor related parts of hmm.h even if disabled
        mm/hmm: allow hmm_range to be used with a mmu_interval_notifier or hmm_mirror
        mm/mmu_notifier: add an interval tree notifier
        mm/mmu_notifier: define the header pre-processor parts even if disabled
        mm/hmm: allow snapshot of the special zero page
      aa32f116
    • Linus Torvalds's avatar
      Merge tag 'drm-vmwgfx-coherent-2019-11-29' of git://anongit.freedesktop.org/drm/drm · d5bb349d
      Linus Torvalds authored
      Pull drm coherent memory support for vmwgfx from Dave Airlie:
       "This is a separate pull for the mm pagewalking + drm/vmwgfx work
        Thomas did and you were involved in, I've left it separate in case you
        don't feel as comfortable with it as the other stuff.
      
        It has mm acks/r-b in the right places from what I can see"
      
      * tag 'drm-vmwgfx-coherent-2019-11-29' of git://anongit.freedesktop.org/drm/drm:
        drm/vmwgfx: Add surface dirty-tracking callbacks
        drm/vmwgfx: Implement an infrastructure for read-coherent resources
        drm/vmwgfx: Use an RBtree instead of linked list for MOB resources
        drm/vmwgfx: Implement an infrastructure for write-coherent resources
        mm: Add write-protect and clean utilities for address space ranges
        mm: Add a walk_page_mapping() function to the pagewalk code
        mm: pagewalk: Take the pagetable lock in walk_pte_range()
        mm: Remove BUG_ON mmap_sem not held from xxx_trans_huge_lock()
        drm/ttm: Convert vm callbacks to helpers
        drm/ttm: Remove explicit typecasts of vm_private_data
      d5bb349d
  4. 29 Nov, 2019 3 commits
  5. 28 Nov, 2019 7 commits
    • Linus Torvalds's avatar
      Merge branch 'master' of... · 81b6b964
      Linus Torvalds authored
      Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux; tag 'dma-mapping-5.5' of git://git.infradead.org/users/hch/dma-mapping
      
      Pull dma-mapping updates from Christoph Hellwig:
      
       - improve dma-debug scalability (Eric Dumazet)
      
       - tiny dma-debug cleanup (Dan Carpenter)
      
       - check for vmap memory in dma_map_single (Kees Cook)
      
       - check for dma_addr_t overflows in dma-direct when using DMA offsets
         (Nicolas Saenz Julienne)
      
       - switch the x86 sta2x11 SOC to use more generic DMA code (Nicolas
         Saenz Julienne)
      
       - fix arm-nommu dma-ranges handling (Vladimir Murzin)
      
       - use __initdata in CMA (Shyam Saini)
      
       - replace the bus dma mask with a limit (Nicolas Saenz Julienne)
      
       - merge the remapping helpers into the main dma-direct flow (me)
      
       - switch xtensa to the generic dma remap handling (me)
      
       - various cleanups around dma_capable (me)
      
       - remove unused dev arguments to various dma-noncoherent helpers (me)
      
      * 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux:
      
      * tag 'dma-mapping-5.5' of git://git.infradead.org/users/hch/dma-mapping: (22 commits)
        dma-mapping: treat dev->bus_dma_mask as a DMA limit
        dma-direct: exclude dma_direct_map_resource from the min_low_pfn check
        dma-direct: don't check swiotlb=force in dma_direct_map_resource
        dma-debug: clean up put_hash_bucket()
        powerpc: remove support for NULL dev in __phys_to_dma / __dma_to_phys
        dma-direct: avoid a forward declaration for phys_to_dma
        dma-direct: unify the dma_capable definitions
        dma-mapping: drop the dev argument to arch_sync_dma_for_*
        x86/PCI: sta2x11: use default DMA address translation
        dma-direct: check for overflows on 32 bit DMA addresses
        dma-debug: increase HASH_SIZE
        dma-debug: reorder struct dma_debug_entry fields
        xtensa: use the generic uncached segment support
        dma-mapping: merge the generic remapping helpers into dma-direct
        dma-direct: provide mmap and get_sgtable method overrides
        dma-direct: remove the dma_handle argument to __dma_direct_alloc_pages
        dma-direct: remove __dma_direct_free_pages
        usb: core: Remove redundant vmap checks
        kernel: dma-contiguous: mark CMA parameters __initdata/__initconst
        dma-debug: add a schedule point in debug_dma_dump_mappings()
        ...
      81b6b964
    • Linus Torvalds's avatar
      Merge tag 'ioremap-5.5' of git://git.infradead.org/users/hch/ioremap · a308a710
      Linus Torvalds authored
      Pull generic ioremap support from Christoph Hellwig:
       "This adds the remaining bits for an entirely generic ioremap and
        iounmap to lib/ioremap.c. To facilitate that, it cleans up the giant
        mess of weird ioremap variants we had with no users outside the arch
        code.
      
        For now just the three newest ports use the code, but there is more
        than a handful others that can be converted without too much work.
      
        Summary:
      
         - clean up various obsolete ioremap and iounmap variants
      
         - add a new generic ioremap implementation and switch csky, nds32 and
           riscv over to it"
      
      * tag 'ioremap-5.5' of git://git.infradead.org/users/hch/ioremap: (21 commits)
        nds32: use generic ioremap
        csky: use generic ioremap
        csky: remove ioremap_cache
        riscv: use the generic ioremap code
        lib: provide a simple generic ioremap implementation
        sh: remove __iounmap
        nios2: remove __iounmap
        hexagon: remove __iounmap
        m68k: rename __iounmap and mark it static
        arch: rely on asm-generic/io.h for default ioremap_* definitions
        asm-generic: don't provide ioremap for CONFIG_MMU
        asm-generic: ioremap_uc should behave the same with and without MMU
        xtensa: clean up ioremap
        x86: Clean up ioremap()
        parisc: remove __ioremap
        nios2: remove __ioremap
        alpha: remove the unused __ioremap wrapper
        hexagon: clean up ioremap
        ia64: rename ioremap_nocache to ioremap_uc
        unicore32: remove ioremap_cached
        ...
      a308a710
    • Linus Torvalds's avatar
      Merge tag 'for-5.5/io_uring-post-20191128' of git://git.kernel.dk/linux-block · 05bd375b
      Linus Torvalds authored
      Pull more io_uring updates from Jens Axboe:
       "As mentioned in the first pull request, there was a later batch as
        well. This contains fixes to the stuff that already went in, cleanups,
        and a few later additions. In particular, this contains:
      
         - Cleanups/fixes/unification of the submission and completion path
           (Pavel,me)
      
         - Linked timeouts improvements (Pavel,me)
      
         - Error path fixes (me)
      
         - Fix lookup window where cancellations wouldn't work (me)
      
         - Improve DRAIN support (Pavel)
      
         - Fix backlog flushing -EBUSY on submit (me)
      
         - Add support for connect(2) (me)
      
         - Fix for non-iter based fixed IO (Pavel)
      
         - creds inheritance for async workers (me)
      
         - Disable cmsg/ancillary data for sendmsg/recvmsg (me)
      
         - Shrink io_kiocb to 3 cachelines (me)
      
         - NUMA fix for io-wq (Jann)"
      
      * tag 'for-5.5/io_uring-post-20191128' of git://git.kernel.dk/linux-block: (42 commits)
        io_uring: make poll->wait dynamically allocated
        io-wq: shrink io_wq_work a bit
        io-wq: fix handling of NUMA node IDs
        io_uring: use kzalloc instead of kcalloc for single-element allocations
        io_uring: cleanup io_import_fixed()
        io_uring: inline struct sqe_submit
        io_uring: store timeout's sqe->off in proper place
        net: disallow ancillary data for __sys_{send,recv}msg_file()
        net: separate out the msghdr copy from ___sys_{send,recv}msg()
        io_uring: remove superfluous check for sqe->off in io_accept()
        io_uring: async workers should inherit the user creds
        io-wq: have io_wq_create() take a 'data' argument
        io_uring: fix dead-hung for non-iter fixed rw
        io_uring: add support for IORING_OP_CONNECT
        net: add __sys_connect_file() helper
        io_uring: only return -EBUSY for submit on non-flushed backlog
        io_uring: only !null ptr to io_issue_sqe()
        io_uring: simplify io_req_link_next()
        io_uring: pass only !null to io_req_find_next()
        io_uring: remove io_free_req_find_next()
        ...
      05bd375b
    • Rahul Tanwar's avatar
      pinctrl: Fix warning by adding missing MODULE_LICENSE · 6d29032c
      Rahul Tanwar authored
      Fix below build warning
      
         WARNING: modpost: missing MODULE_LICENSE() in
         drivers/pinctrl/pinctrl-equilibrium.o
      
      Introduced by commit
      
         1948d5c5 ("pinctrl: Add pinmux & GPIO controller driver for a new SoC")
      
      by adding missing MODULE_LICENSE.
      Signed-off-by: default avatarRahul Tanwar <rahul.tanwar@linux.intel.com>
      Link: https://lore.kernel.org/r/20191128080832.13529-2-rahul.tanwar@linux.intel.comSigned-off-by: default avatarLinus Walleij <linus.walleij@linaro.org>
      6d29032c
    • Dave Airlie's avatar
      Merge branch 'vmwgfx-coherent' of git://people.freedesktop.org/~thomash/linux into drm-next · 0a6cad5d
      Dave Airlie authored
      Graphics APIs like OpenGL 4.4 and Vulkan require the graphics driver
      to provide coherent graphics memory, meaning that the GPU sees any
      content written to the coherent memory on the next GPU operation that
      touches that memory, and the CPU sees any content written by the GPU
      to that memory immediately after any fence object trailing the GPU
      operation is signaled.
      
      Paravirtual drivers that otherwise require explicit synchronization
      needs to do this by hooking up dirty tracking to pagefault handlers
      and buffer object validation.
      
      Provide mm helpers needed for this and that also allow for huge pmd-
      and pud entries (patch 1-3), and the associated vmwgfx code (patch 4-7).
      
      The code has been tested and exercised by a tailored version of mesa
      where we disable all explicit synchronization and assume graphics memory
      is coherent. The performance loss varies of course; a typical number is
      around 5%.
      Signed-off-by: default avatarDave Airlie <airlied@redhat.com>
      From: Thomas Hellstrom <thomas_os@shipmail.org>
      Link: https://patchwork.freedesktop.org/patch/msgid/20191113131639.4653-1-thomas_os@shipmail.org
      0a6cad5d
    • Linus Torvalds's avatar
      Merge tag 'drm-next-2019-11-27' of git://anongit.freedesktop.org/drm/drm · a6ed68d6
      Linus Torvalds authored
      Pull drm updates from Dave Airlie:
       "Lots of stuff in here, though it hasn't been too insane this merge
        apart from dealing with the security fun.
      
        uapi:
         - export different colorspace properties on DP vs HDMI
         - new fourcc for ARM 16x16 block format
         - syncobj: allow querying last submitted timeline value
         - DRM_FORMAT_BIG_ENDIAN defined as unsigned
      
        core:
         - allow using gem vma manager in ttm
         - connector/encoder/bridge doc fixes
         - allow more than 3 encoders for a connector
         - displayport mst suspend/resume reprobing support
         - vram lazy unmapping, uniform vram mm and gem vram
         - edid cleanups + AVI informframe bar info
         - displayport helpers - dpcd parser added
      
        dp_cec:
         - Allow a connector to be associated with a cec device
      
        ttm:
         - pipelining with no_gpu_wait fix
         - always keep BOs on the LRU
      
        sched:
         - allow free_job routine to sleep
      
        i915:
         - Block userptr from mappable GTT
         - i915 perf uapi versioning
         - OA stream dynamic reconfiguration
         - make context persistence optional
         - introduce DRM_I915_UNSTABLE Kconfig
         - add fake lmem testing under unstable
         - BT.2020 support for DP MSA
         - struct mutex elimination
         - Tigerlake display/PLL/power management improvements
         - Jasper Lake PCH support
         - refactor PMU for multiple GPUs
         - Icelake firmware update
         - Split out vga + switcheroo code
      
        amdgpu:
         - implement dma-buf import/export without helpers
         - vega20 RAS enablement
         - DC i2c over aux fixes
         - renoir GPU reset
         - DC HDCP support
         - BACO support for CI/VI asics
         - MSI-X support
         - Arcturus EEPROM support
         - Arcturus VCN encode support
         - VCN dynamic powergating on RV/RV2
      
        amdkfd:
         - add navi12/14/renoir support to kfd
      
        radeon:
         - SI dpm fix ported from amdgpu
         - fix bad DMA on ppc platforms
      
        gma500:
         - memory leak fixes
      
        qxl:
         - convert to new gem mmap
      
        exynos:
         - build warning fix
      
        komeda:
         - add aclk sysfs attribute
      
        v3d:
         - userspace cleanup uapi change
      
        i810:
         - fix for underflow in dispatch ioctls
      
        ast:
         - refactor show_cursor
      
        mgag200:
         - refactor show_cursor
      
        arcgpu:
         - encoder finding improvements
      
        mediatek:
         - mipi_tx, dsi and partial crtc support for MT8183 SoC
         - rotation support
      
        meson:
         - add suspend/resume support
      
        omap:
         - misc refactors
      
        tegra:
         - DisplayPort support for Tegra 210, 186 and 194.
         - IOMMU-backed DMA API fixes
      
        panfrost:
         - fix lockdep issue
         - simplify devfreq integration
      
        rcar-du:
         - R8A774B1 SoC support
         - fixes for H2 ES2.0
      
        sun4i:
         - vcc-dsi regulator support
      
        virtio-gpu:
         - vmexit vs spinlock fix
         - move to gem shmem helpers
         - handle large command buffers with cma"
      
      * tag 'drm-next-2019-11-27' of git://anongit.freedesktop.org/drm/drm: (1855 commits)
        drm/amdgpu: invalidate mmhub semaphore workaround in gmc9/gmc10
        drm/amdgpu: initialize vm_inv_eng0_sem for gfxhub and mmhub
        drm/amd/amdgpu/sriov skip RLCG s/r list for arcturus VF.
        drm/amd/amdgpu/sriov temporarily skip ras,dtm,hdcp for arcturus VF
        drm/amdgpu/gfx10: re-init clear state buffer after gpu reset
        merge fix for "ftrace: Rework event_create_dir()"
        drm/amdgpu: Update Arcturus golden registers
        drm/amdgpu/gfx10: fix out-of-bound mqd_backup array access
        drm/amdgpu/gfx10: explicitly wait for cp idle after halt/unhalt
        Revert "drm/amd/display: enable S/G for RAVEN chip"
        drm/amdgpu: disable gfxoff on original raven
        drm/amdgpu: remove experimental flag for Navi14
        drm/amdgpu: disable gfxoff when using register read interface
        drm/amdgpu/powerplay: properly set PP_GFXOFF_MASK (v2)
        drm/amdgpu: fix bad DMA from INTERRUPT_CNTL2
        drm/radeon: fix bad DMA from INTERRUPT_CNTL2
        drm/amd/display: Fix debugfs on MST connectors
        drm/amdgpu/nv: add asic func for fetching vbios from rom directly
        drm/amdgpu: put flush_delayed_work at first
        drm/amdgpu/vcn2.5: fix the enc loop with hw fini
        ...
      a6ed68d6
    • Linus Torvalds's avatar
      Merge git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net · 8c39f71e
      Linus Torvalds authored
      Pull networking fixes from David Miller:
       "This is mostly to fix the iwlwifi regression:
      
        1) Flush GRO state properly in iwlwifi driver, from Alexander Lobakin.
      
        2) Validate TIPC link name with properly length macro, from John
           Rutherford.
      
        3) Fix completion init and device query timeouts in ibmvnic, from
           Thomas Falcon.
      
        4) Fix SKB size calculation for netlink messages in psample, from
           Nikolay Aleksandrov.
      
        5) Similar kind of fix for OVS flow dumps, from Paolo Abeni.
      
        6) Handle queue allocation failure unwind properly in gve driver, we
           could try to release pages we didn't allocate. From Jeroen de
           Borst.
      
        7) Serialize TX queue SKB list accesses properly in mscc ocelot
           driver. From Yangbo Lu"
      
      * git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net:
        net: usb: aqc111: Use the correct style for SPDX License Identifier
        net: phy: Use the correct style for SPDX License Identifier
        net: wireless: intel: iwlwifi: fix GRO_NORMAL packet stalling
        net: mscc: ocelot: use skb queue instead of skbs list
        net: mscc: ocelot: avoid incorrect consuming in skbs list
        gve: Fix the queue page list allocated pages count
        net: inet_is_local_reserved_port() port arg should be unsigned short
        openvswitch: fix flow command message size
        net: phy: dp83869: Fix return paths to return proper values
        net: psample: fix skb_over_panic
        net: usbnet: Fix -Wcast-function-type
        net: hso: Fix -Wcast-function-type
        net: port < inet_prot_sock(net) --> inet_port_requires_bind_service(net, port)
        ibmvnic: Serialize device queries
        ibmvnic: Bound waits for device queries
        ibmvnic: Terminate waiting device threads after loss of service
        ibmvnic: Fix completion structure initialization
        net-sctp: replace some sock_net(sk) with just 'net'
        net: Fix a documentation bug wrt. ip_unprivileged_port_start
        tipc: fix link name length check
      8c39f71e