1. 26 10月, 2020 3 次提交
    • L
      Merge tag 'for-linus-5.10b-rc1c-tag' of git://git.kernel.org/pub/scm/linux/kernel/git/xen/tip · bd6aabc7
      Linus Torvalds 提交于
      Pull more xen updates from Juergen Gross:
      
       - a series for the Xen pv block drivers adding module parameters for
         better control of resource usge
      
       - a cleanup series for the Xen event driver
      
      * tag 'for-linus-5.10b-rc1c-tag' of git://git.kernel.org/pub/scm/linux/kernel/git/xen/tip:
        Documentation: add xen.fifo_events kernel parameter description
        xen/events: unmask a fifo event channel only if it was masked
        xen/events: only register debug interrupt for 2-level events
        xen/events: make struct irq_info private to events_base.c
        xen: remove no longer used functions
        xen-blkfront: Apply changed parameter name to the document
        xen-blkfront: add a parameter for disabling of persistent grants
        xen-blkback: add a parameter for disabling of persistent grants
      bd6aabc7
    • L
      Merge tag 'safesetid-5.10' of git://github.com/micah-morton/linux · 81ecf91e
      Linus Torvalds 提交于
      Pull SafeSetID updates from Micah Morton:
       "The changes are mostly contained to within the SafeSetID LSM, with the
        exception of a few 1-line changes to change some ns_capable() calls to
        ns_capable_setid() -- causing a flag (CAP_OPT_INSETID) to be set that
        is examined by SafeSetID code and nothing else in the kernel.
      
        The changes to SafeSetID internally allow for setting up GID
        transition security policies, as already existed for UIDs"
      
      * tag 'safesetid-5.10' of git://github.com/micah-morton/linux:
        LSM: SafeSetID: Fix warnings reported by test bot
        LSM: SafeSetID: Add GID security policy handling
        LSM: Signal to SafeSetID when setting group IDs
      81ecf91e
    • L
      Merge tag '20201024-v4-5.10' of git://git.kernel.org/pub/scm/linux/kernel/git/wtarreau/prandom · 91f28da8
      Linus Torvalds 提交于
      Pull random32 updates from Willy Tarreau:
       "Make prandom_u32() less predictable.
      
        This is the cleanup of the latest series of prandom_u32
        experimentations consisting in using SipHash instead of Tausworthe to
        produce the randoms used by the network stack.
      
        The changes to the files were kept minimal, and the controversial
        commit that used to take noise from the fast_pool (f227e3ec) was
        reverted. Instead, a dedicated "net_rand_noise" per_cpu variable is
        fed from various sources of activities (networking, scheduling) to
        perturb the SipHash state using fast, non-trivially predictable data,
        instead of keeping it fully deterministic. The goal is essentially to
        make any occasional memory leakage or brute-force attempt useless.
      
        The resulting code was verified to be very slightly faster on x86_64
        than what is was with the controversial commit above, though this
        remains barely above measurement noise. It was also tested on i386 and
        arm, and build- tested only on arm64"
      
      Link: https://lore.kernel.org/netdev/20200808152628.GA27941@SDF.ORG/
      
      * tag '20201024-v4-5.10' of git://git.kernel.org/pub/scm/linux/kernel/git/wtarreau/prandom:
        random32: add a selftest for the prandom32 code
        random32: add noise from network and scheduling activity
        random32: make prandom_u32() output unpredictable
      91f28da8
  2. 25 10月, 2020 17 次提交
    • L
      Merge tag 'block-5.10-2020-10-24' of git://git.kernel.dk/linux-block · d7691390
      Linus Torvalds 提交于
      Pull block fixes from Jens Axboe:
      
       - NVMe pull request from Christoph
           - rdma error handling fixes (Chao Leng)
           - fc error handling and reconnect fixes (James Smart)
           - fix the qid displace when tracing ioctl command (Keith Busch)
           - don't use BLK_MQ_REQ_NOWAIT for passthru (Chaitanya Kulkarni)
           - fix MTDT for passthru (Logan Gunthorpe)
           - blacklist Write Same on more devices (Kai-Heng Feng)
           - fix an uninitialized work struct (zhenwei pi)"
      
       - lightnvm out-of-bounds fix (Colin)
      
       - SG allocation leak fix (Doug)
      
       - rnbd fixes (Gioh, Guoqing, Jack)
      
       - zone error translation fixes (Keith)
      
       - kerneldoc markup fix (Mauro)
      
       - zram lockdep fix (Peter)
      
       - Kill unused io_context members (Yufen)
      
       - NUMA memory allocation cleanup (Xianting)
      
       - NBD config wakeup fix (Xiubo)
      
      * tag 'block-5.10-2020-10-24' of git://git.kernel.dk/linux-block: (27 commits)
        block: blk-mq: fix a kernel-doc markup
        nvme-fc: shorten reconnect delay if possible for FC
        nvme-fc: wait for queues to freeze before calling update_hr_hw_queues
        nvme-fc: fix error loop in create_hw_io_queues
        nvme-fc: fix io timeout to abort I/O
        null_blk: use zone status for max active/open
        nvmet: don't use BLK_MQ_REQ_NOWAIT for passthru
        nvmet: cleanup nvmet_passthru_map_sg()
        nvmet: limit passthru MTDS by BIO_MAX_PAGES
        nvmet: fix uninitialized work for zero kato
        nvme-pci: disable Write Zeroes on Sandisk Skyhawk
        nvme: use queuedata for nvme_req_qid
        nvme-rdma: fix crash due to incorrect cqe
        nvme-rdma: fix crash when connect rejected
        block: remove unused members for io_context
        blk-mq: remove the calling of local_memory_node()
        zram: Fix __zram_bvec_{read,write}() locking order
        skd_main: remove unused including <linux/version.h>
        sgl_alloc_order: fix memory leak
        lightnvm: fix out-of-bounds write to array devices->info[]
        ...
      d7691390
    • L
      Merge tag 'io_uring-5.10-2020-10-24' of git://git.kernel.dk/linux-block · af004187
      Linus Torvalds 提交于
      Pull io_uring fixes from Jens Axboe:
      
       - fsize was missed in previous unification of work flags
      
       - Few fixes cleaning up the flags unification creds cases (Pavel)
      
       - Fix NUMA affinities for completely unplugged/replugged node for io-wq
      
       - Two fallout fixes from the set_fs changes. One local to io_uring, one
         for the splice entry point that io_uring uses.
      
       - Linked timeout fixes (Pavel)
      
       - Removal of ->flush() ->files work-around that we don't need anymore
         with referenced files (Pavel)
      
       - Various cleanups (Pavel)
      
      * tag 'io_uring-5.10-2020-10-24' of git://git.kernel.dk/linux-block:
        splice: change exported internal do_splice() helper to take kernel offset
        io_uring: make loop_rw_iter() use original user supplied pointers
        io_uring: remove req cancel in ->flush()
        io-wq: re-set NUMA node affinities if CPUs come online
        io_uring: don't reuse linked_timeout
        io_uring: unify fsize with def->work_flags
        io_uring: fix racy REQ_F_LINK_TIMEOUT clearing
        io_uring: do poll's hash_node init in common code
        io_uring: inline io_poll_task_handler()
        io_uring: remove extra ->file check in poll prep
        io_uring: make cached_cq_overflow non atomic_t
        io_uring: inline io_fail_links()
        io_uring: kill ref get/drop in personality init
        io_uring: flags-based creds init in queue
      af004187
    • L
      Merge tag 'libata-5.10-2020-10-24' of git://git.kernel.dk/linux-block · cb6b2897
      Linus Torvalds 提交于
      Pull libata fixes from Jens Axboe:
       "Two minor libata fixes:
      
         - Fix a DMA boundary mask regression for sata_rcar (Geert)
      
         - kerneldoc markup fix (Mauro)"
      
      * tag 'libata-5.10-2020-10-24' of git://git.kernel.dk/linux-block:
        ata: fix some kernel-doc markups
        ata: sata_rcar: Fix DMA boundary mask
      cb6b2897
    • L
      Merge branch 'work.misc' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs · 0eac1102
      Linus Torvalds 提交于
      Pull misc vfs updates from Al Viro:
       "Assorted stuff all over the place (the largest group here is
        Christoph's stat cleanups)"
      
      * 'work.misc' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs:
        fs: remove KSTAT_QUERY_FLAGS
        fs: remove vfs_stat_set_lookup_flags
        fs: move vfs_fstatat out of line
        fs: implement vfs_stat and vfs_lstat in terms of vfs_fstatat
        fs: remove vfs_statx_fd
        fs: omfs: use kmemdup() rather than kmalloc+memcpy
        [PATCH] reduce boilerplate in fsid handling
        fs: Remove duplicated flag O_NDELAY occurring twice in VALID_OPEN_FLAGS
        selftests: mount: add nosymfollow tests
        Add a "nosymfollow" mount option.
      0eac1102
    • L
      Merge tag 'dma-mapping-5.10-1' of git://git.infradead.org/users/hch/dma-mapping · 1b307ac8
      Linus Torvalds 提交于
      Pull dma-mapping fixes from Christoph Hellwig:
      
       - document the new dma_{alloc,free}_pages() API
      
       - two fixups for the dma-mapping.h split
      
      * tag 'dma-mapping-5.10-1' of git://git.infradead.org/users/hch/dma-mapping:
        dma-mapping: document dma_{alloc,free}_pages
        dma-mapping: move more functions to dma-map-ops.h
        ARM/sa1111: add a missing include of dma-map-ops.h
      1b307ac8
    • L
      Merge tag 'for-linus' of git://git.kernel.org/pub/scm/virt/kvm/kvm · 9bf8d8bc
      Linus Torvalds 提交于
      Pull KVM fixes from Paolo Bonzini:
       "Two fixes for this merge window, and an unrelated bugfix for a host
        hang"
      
      * tag 'for-linus' of git://git.kernel.org/pub/scm/virt/kvm/kvm:
        KVM: ioapic: break infinite recursion on lazy EOI
        KVM: vmx: rename pi_init to avoid conflict with paride
        KVM: x86/mmu: Avoid modulo operator on 64-bit value to fix i386 build
      9bf8d8bc
    • L
      Merge tag 'x86_seves_fixes_for_v5.10_rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · c51ae124
      Linus Torvalds 提交于
      Pull x86 SEV-ES fixes from Borislav Petkov:
       "Three fixes to SEV-ES to correct setting up the new early pagetable on
        5-level paging machines, to always map boot_params and the kernel
        cmdline, and disable stack protector for ../compressed/head{32,64}.c.
        (Arvind Sankar)"
      
      * tag 'x86_seves_fixes_for_v5.10_rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86/boot/64: Explicitly map boot_params and command line
        x86/head/64: Disable stack protection for head$(BITS).o
        x86/boot/64: Initialize 5-level paging variables earlier
      c51ae124
    • W
      random32: add a selftest for the prandom32 code · c6e169bc
      Willy Tarreau 提交于
      Given that this code is new, let's add a selftest for it as well.
      It doesn't rely on fixed sets, instead it picks 1024 numbers and
      verifies that they're not more correlated than desired.
      
      Link: https://lore.kernel.org/netdev/20200808152628.GA27941@SDF.ORG/
      Cc: George Spelvin <lkml@sdf.org>
      Cc: Amit Klein <aksecurity@gmail.com>
      Cc: Eric Dumazet <edumazet@google.com>
      Cc: "Jason A. Donenfeld" <Jason@zx2c4.com>
      Cc: Andy Lutomirski <luto@kernel.org>
      Cc: Kees Cook <keescook@chromium.org>
      Cc: Thomas Gleixner <tglx@linutronix.de>
      Cc: Peter Zijlstra <peterz@infradead.org>
      Cc: Linus Torvalds <torvalds@linux-foundation.org>
      Cc: tytso@mit.edu
      Cc: Florian Westphal <fw@strlen.de>
      Cc: Marc Plumb <lkml.mplumb@gmail.com>
      Signed-off-by: NWilly Tarreau <w@1wt.eu>
      c6e169bc
    • W
      random32: add noise from network and scheduling activity · 3744741a
      Willy Tarreau 提交于
      With the removal of the interrupt perturbations in previous random32
      change (random32: make prandom_u32() output unpredictable), the PRNG
      has become 100% deterministic again. While SipHash is expected to be
      way more robust against brute force than the previous Tausworthe LFSR,
      there's still the risk that whoever has even one temporary access to
      the PRNG's internal state is able to predict all subsequent draws till
      the next reseed (roughly every minute). This may happen through a side
      channel attack or any data leak.
      
      This patch restores the spirit of commit f227e3ec ("random32: update
      the net random state on interrupt and activity") in that it will perturb
      the internal PRNG's statee using externally collected noise, except that
      it will not pick that noise from the random pool's bits nor upon
      interrupt, but will rather combine a few elements along the Tx path
      that are collectively hard to predict, such as dev, skb and txq
      pointers, packet length and jiffies values. These ones are combined
      using a single round of SipHash into a single long variable that is
      mixed with the net_rand_state upon each invocation.
      
      The operation was inlined because it produces very small and efficient
      code, typically 3 xor, 2 add and 2 rol. The performance was measured
      to be the same (even very slightly better) than before the switch to
      SipHash; on a 6-core 12-thread Core i7-8700k equipped with a 40G NIC
      (i40e), the connection rate dropped from 556k/s to 555k/s while the
      SYN cookie rate grew from 5.38 Mpps to 5.45 Mpps.
      
      Link: https://lore.kernel.org/netdev/20200808152628.GA27941@SDF.ORG/
      Cc: George Spelvin <lkml@sdf.org>
      Cc: Amit Klein <aksecurity@gmail.com>
      Cc: Eric Dumazet <edumazet@google.com>
      Cc: "Jason A. Donenfeld" <Jason@zx2c4.com>
      Cc: Andy Lutomirski <luto@kernel.org>
      Cc: Kees Cook <keescook@chromium.org>
      Cc: Thomas Gleixner <tglx@linutronix.de>
      Cc: Peter Zijlstra <peterz@infradead.org>
      Cc: Linus Torvalds <torvalds@linux-foundation.org>
      Cc: tytso@mit.edu
      Cc: Florian Westphal <fw@strlen.de>
      Cc: Marc Plumb <lkml.mplumb@gmail.com>
      Tested-by: NSedat Dilek <sedat.dilek@gmail.com>
      Signed-off-by: NWilly Tarreau <w@1wt.eu>
      3744741a
    • G
      random32: make prandom_u32() output unpredictable · c51f8f88
      George Spelvin 提交于
      Non-cryptographic PRNGs may have great statistical properties, but
      are usually trivially predictable to someone who knows the algorithm,
      given a small sample of their output.  An LFSR like prandom_u32() is
      particularly simple, even if the sample is widely scattered bits.
      
      It turns out the network stack uses prandom_u32() for some things like
      random port numbers which it would prefer are *not* trivially predictable.
      Predictability led to a practical DNS spoofing attack.  Oops.
      
      This patch replaces the LFSR with a homebrew cryptographic PRNG based
      on the SipHash round function, which is in turn seeded with 128 bits
      of strong random key.  (The authors of SipHash have *not* been consulted
      about this abuse of their algorithm.)  Speed is prioritized over security;
      attacks are rare, while performance is always wanted.
      
      Replacing all callers of prandom_u32() is the quick fix.
      Whether to reinstate a weaker PRNG for uses which can tolerate it
      is an open question.
      
      Commit f227e3ec ("random32: update the net random state on interrupt
      and activity") was an earlier attempt at a solution.  This patch replaces
      it.
      Reported-by: NAmit Klein <aksecurity@gmail.com>
      Cc: Willy Tarreau <w@1wt.eu>
      Cc: Eric Dumazet <edumazet@google.com>
      Cc: "Jason A. Donenfeld" <Jason@zx2c4.com>
      Cc: Andy Lutomirski <luto@kernel.org>
      Cc: Kees Cook <keescook@chromium.org>
      Cc: Thomas Gleixner <tglx@linutronix.de>
      Cc: Peter Zijlstra <peterz@infradead.org>
      Cc: Linus Torvalds <torvalds@linux-foundation.org>
      Cc: tytso@mit.edu
      Cc: Florian Westphal <fw@strlen.de>
      Cc: Marc Plumb <lkml.mplumb@gmail.com>
      Fixes: f227e3ec ("random32: update the net random state on interrupt and activity")
      Signed-off-by: NGeorge Spelvin <lkml@sdf.org>
      Link: https://lore.kernel.org/netdev/20200808152628.GA27941@SDF.ORG/
      [ willy: partial reversal of f227e3ec; moved SIPROUND definitions
        to prandom.h for later use; merged George's prandom_seed() proposal;
        inlined siprand_u32(); replaced the net_rand_state[] array with 4
        members to fix a build issue; cosmetic cleanups to make checkpatch
        happy; fixed RANDOM32_SELFTEST build ]
      Signed-off-by: NWilly Tarreau <w@1wt.eu>
      c51f8f88
    • L
      Merge tag 'powerpc-5.10-2' of git://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux · b6f96e75
      Linus Torvalds 提交于
      Pull powerpc fixes from Michael Ellerman:
      
       - A fix for undetected data corruption on Power9 Nimbus <= DD2.1 in the
         emulation of VSX loads. The affected CPUs were not widely available.
      
       - Two fixes for machine check handling in guests under PowerVM.
      
       - A fix for our recent changes to SMP setup, when
         CONFIG_CPUMASK_OFFSTACK=y.
      
       - Three fixes for races in the handling of some of our powernv sysfs
         attributes.
      
       - One change to remove TM from the set of Power10 CPU features.
      
       - A couple of other minor fixes.
      
      Thanks to: Aneesh Kumar K.V, Christophe Leroy, Ganesh Goudar, Jordan
      Niethe, Mahesh Salgaonkar, Michael Neuling, Oliver O'Halloran, Qian Cai,
      Srikar Dronamraju, Vasant Hegde.
      
      * tag 'powerpc-5.10-2' of git://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux:
        powerpc/pseries: Avoid using addr_to_pfn in real mode
        powerpc/uaccess: Don't use "m<>" constraint with GCC 4.9
        powerpc/eeh: Fix eeh_dev_check_failure() for PE#0
        powerpc/64s: Remove TM from Power10 features
        selftests/powerpc: Make alignment handler test P9N DD2.1 vector CI load workaround
        powerpc: Fix undetected data corruption with P9N DD2.1 VSX CI load emulation
        powerpc/powernv/dump: Handle multiple writes to ack attribute
        powerpc/powernv/dump: Fix race while processing OPAL dump
        powerpc/smp: Use GFP_ATOMIC while allocating tmp mask
        powerpc/smp: Remove unnecessary variable
        powerpc/mce: Avoid nmi_enter/exit in real mode on pseries hash
        powerpc/opal_elog: Handle multiple writes to ack attribute
      b6f96e75
    • L
      Merge tag 'riscv-for-linus-5.10-mw1' of git://git.kernel.org/pub/scm/linux/kernel/git/riscv/linux · 0593c1b4
      Linus Torvalds 提交于
      Pull more RISC-V updates from Palmer Dabbelt:
       "Just a single patch set: the remainder of Christoph's work to remove
        set_fs, including the RISC-V portion"
      
      * tag 'riscv-for-linus-5.10-mw1' of git://git.kernel.org/pub/scm/linux/kernel/git/riscv/linux:
        riscv: remove address space overrides using set_fs()
        riscv: implement __get_kernel_nofault and __put_user_nofault
        riscv: refactor __get_user and __put_user
        riscv: use memcpy based uaccess for nommu again
        asm-generic: make the set_fs implementation optional
        asm-generic: add nommu implementations of __{get,put}_kernel_nofault
        asm-generic: improve the nommu {get,put}_user handling
        uaccess: provide a generic TASK_SIZE_MAX definition
      0593c1b4
    • L
      Merge tag 'armsoc-defconfig' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc · 45fe6058
      Linus Torvalds 提交于
      Pull ARM SoC defconfig updates from Olof Johansson:
       "We keep this in a separate branch to avoid cross-branch conflicts, but
        most of the material here is fairly boring -- some new drivers turned
        on for hardware since they were merged, and some refreshed files due
        to time having moved a lot of entries around"
      
      * tag 'armsoc-defconfig' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc: (33 commits)
        ARM: multi_v7_defconfig: add FMC2 EBI controller support
        arm64: defconfig: enable Qualcomm ASoC modules
        arm64: defconfig: qcom: enable GPU clock controller for SM8[12]50
        arm64: defconfig: enable INTERCONNECT for Qualcomm chipsets
        arm64: defconfig: enable the sl28cpld board management controller
        arm64: defconfig: Enable the eLCDIF and Raydium RM67191 drivers
        arm64: defconfig: Enable Qcom SNPS Femto PHY
        ARM: configs: Update Realview defconfig
        ARM: configs: Update Versatile defconfig
        ARM: config: aspeed_g5: Enable IBM OP Panel driver
        ARM: config: aspeed-g5: Enable I2C GPIO mux driver
        ARM: config: aspeed: Fix selection of media drivers
        arm64: defconfig: Enable Samsung S3FWRN5 NFC driver
        ARM: omap2plus_defconfig: enable generic net options
        ARM: omap2plus_defconfig: enable twl4030_madc as a loadable module
        arm64: defconfig: Enable clock driver for ROHM BD718x7 PMIC
        arm64: defconfig: Build ADMA and ACONNECT driver
        arm64: defconfig: Build AHUB component drivers
        arm64: defconfig: Enable Lontium LT9611 driver
        arm64: defcondfig: Enable USB ACM and FTDI drivers
        ...
      45fe6058
    • L
      Merge tag 'armsoc-dt' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc · e533cda1
      Linus Torvalds 提交于
      Pull ARM Devicetree updates from Olof Johansson:
       "As usual, most of the changes are to devicetrees.
      
        Besides smaller fixes, some refactorings and cleanups, some of the new
        platforms and chips (or significant features) supported are below:
      
        Broadcom boards:
         - Cisco Meraki MR32 (BCM53016-based)
         - BCM2711 (RPi4) display pipeline support
      
        Actions Semi boards:
         - Caninos Loucos Labrador SBC (S500-based)
         - RoseapplePi SBC (S500-based)
      
        Allwinner SoCs/boards:
         - A100 SoC with Perf1 board
         - Mali, DMA, Cetrus and IR support for R40 SoC
      
        Amlogic boards:
         - Libretch S905x CC V2 board
         - Hardkernel ODROID-N2+ board
      
        Aspeed boards/platforms:
         - Wistron Mowgli (AST2500-based, Power9 OpenPower server)
         - Facebook Wedge400 (AST2500-based, ToR switch)
      
        Hisilicon SoC:
         - SD5203 SoC
      
        Nvidia boards:
         - Tegra234 VDK, for pre-silicon Orin SoC
      
        NXP i.MX boards:
         - Librem 5 phone
         - i.MX8MM DDR4 EVK
         - Variscite VAR-SOM-MX8MN SoM
         - Symphony board
         - Tolino Shine 2 HD
         - TQMa6 SoM
         - Y Soft IOTA Orion
      
        Rockchip boards:
         - NanoPi R2S board
         - A95X-Z2 board
         - more Rock-Pi4 variants
      
        STM32 boards:
         - Odyssey SOM board (STM32MP157CAC-based)
         - DH DRC02 board
      
        Toshiba SoCs/boards:
         - Visconti SoC and TPMV7708 board"
      
      * tag 'armsoc-dt' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc: (638 commits)
        ARM: dts: nspire: Fix SP804 users
        arm64: dts: lg: Fix SP804 users
        arm64: dts: lg: Fix SP805 clocks
        ARM: mstar: Fix up the fallout from moving the dts/dtsi files
        ARM: mstar: Add mstar prefix to all of the dtsi/dts files
        ARM: mstar: Add interrupt to pm_uart
        ARM: mstar: Add interrupt controller to base dtsi
        ARM: dts: meson8: remove two invalid interrupt lines from the GPU node
        arm64: dts: ti: k3-j7200-common-proc-board: Add USB support
        arm64: dts: ti: k3-j7200-common-proc-board: Configure the SERDES lane function
        arm64: dts: ti: k3-j7200-main: Add USB controller
        arm64: dts: ti: k3-j7200-main.dtsi: Add USB to SERDES lane MUX
        arm64: dts: ti: k3-j7200-main: Add SERDES lane control mux
        dt-bindings: ti-serdes-mux: Add defines for J7200 SoC
        ARM: dts: hisilicon: add SD5203 dts
        ARM: dts: hisilicon: fix the system controller compatible nodes
        arm64: dts: zynqmp: Fix leds subnode name for zcu100/ultra96 v1
        arm64: dts: zynqmp: Remove undocumented u-boot properties
        arm64: dts: zynqmp: Remove additional compatible string for i2c IPs
        arm64: dts: zynqmp: Rename buses to be align with simple-bus yaml
        ...
      e533cda1
    • L
      Merge tag 'armsoc-drivers' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc · 2e368dd2
      Linus Torvalds 提交于
      Pull ARM SoC-related driver updates from Olof Johansson:
       "Various driver updates for platforms. A bulk of this is smaller fixes
        or cleanups, but some of the new material this time around is:
      
         - Support for Nvidia Tegra234 SoC
      
         - Ring accelerator support for TI AM65x
      
         - PRUSS driver for TI platforms
      
         - Renesas support for R-Car V3U SoC
      
         - Reset support for Cortex-M4 processor on i.MX8MQ
      
        There are also new socinfo entries for a handful of different SoCs and
        platforms"
      
      * tag 'armsoc-drivers' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc: (131 commits)
        drm/mediatek: reduce clear event
        soc: mediatek: cmdq: add clear option in cmdq_pkt_wfe api
        soc: mediatek: cmdq: add jump function
        soc: mediatek: cmdq: add write_s_mask value function
        soc: mediatek: cmdq: add write_s value function
        soc: mediatek: cmdq: add read_s function
        soc: mediatek: cmdq: add write_s_mask function
        soc: mediatek: cmdq: add write_s function
        soc: mediatek: cmdq: add address shift in jump
        soc: mediatek: mtk-infracfg: Fix kerneldoc
        soc: amlogic: pm-domains: use always-on flag
        reset: sti: reset-syscfg: fix struct description warnings
        reset: imx7: add the cm4 reset for i.MX8MQ
        dt-bindings: reset: imx8mq: add m4 reset
        reset: Fix and extend kerneldoc
        reset: reset-zynqmp: Added support for Versal platform
        dt-bindings: reset: Updated binding for Versal reset driver
        reset: imx7: Support module build
        soc: fsl: qe: Remove unnessesary check in ucc_set_tdm_rxtx_clk
        soc: fsl: qman: convert to use be32_add_cpu()
        ...
      2e368dd2
    • L
      Merge tag 'armsoc-soc' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc · e731f314
      Linus Torvalds 提交于
      Pull ARM SoC platform updates from Olof Johansson:
       "SoC changes, a substantial part of this is cleanup of some of the
        older platforms that used to have a bunch of board files.
      
        In particular:
      
         - Remove non-DT i.MX platforms that haven't seen activity in years,
           it's time to remove them.
      
         - A bunch of cleanup and removal of platform data for TI/OMAP
           platforms, moving over to genpd for power/reset control (yay!)
      
         - Major cleanup of Samsung S3C24xx and S3C64xx platforms, moving them
           closer to multiplatform support (not quite there yet, but getting
           close).
      
        There are a few other changes too, smaller fixlets, etc. For new
        platform support, the primary ones are:
      
         - New SoC: Hisilicon SD5203, ARM926EJ-S platform.
      
         - Cpufreq support for i.MX7ULP"
      
      * tag 'armsoc-soc' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc: (121 commits)
        ARM: mstar: Select MStar intc
        ARM: stm32: Replace HTTP links with HTTPS ones
        ARM: debug: add UART early console support for SD5203
        ARM: hisi: add support for SD5203 SoC
        ARM: omap3: enable off mode automatically
        clk: imx: imx35: Remove mx35_clocks_init()
        clk: imx: imx31: Remove mx31_clocks_init()
        clk: imx: imx27: Remove mx27_clocks_init()
        ARM: imx: Remove unused definitions
        ARM: imx35: Retrieve the IIM base address from devicetree
        ARM: imx3: Retrieve the AVIC base address from devicetree
        ARM: imx3: Retrieve the CCM base address from devicetree
        ARM: imx31: Retrieve the IIM base address from devicetree
        ARM: imx27: Retrieve the CCM base address from devicetree
        ARM: imx27: Retrieve the SYSCTRL base address from devicetree
        ARM: s3c64xx: bring back notes from removed debug-macro.S
        ARM: s3c24xx: fix Wunused-variable warning on !MMU
        ARM: samsung: fix PM debug build with DEBUG_LL but !MMU
        MAINTAINERS: mark linux-samsung-soc list non-moderated
        ARM: imx: Remove remnant board file support pieces
        ...
      e731f314
    • L
      Merge tag 'armsoc-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc · 1f70935f
      Linus Torvalds 提交于
      Pull ARM SoC fixes from Olof Johansson:
       "I had queued up a batch of fixes that got a bit close to the release
        for sending in before the merge window opened, so I'm including them
        in the merge window batch instead.
      
        Mostly smaller DT tweaks and fixes, the usual mix that we tend to have
        through the releases"
      
      * tag 'armsoc-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc:
        ARM: dts: iwg20d-q7-common: Fix touch controller probe failure
        ARM: OMAP2+: Restore MPU power domain if cpu_cluster_pm_enter() fails
        ARM: dts: am33xx: modify AM33XX_IOPAD for #pinctrl-cells = 2
        soc: actions: include header to fix missing prototype
        arm64: dts: ti: k3-j721e: Rename mux header and update macro names
        soc: qcom: pdr: Fixup array type of get_domain_list_resp message
        arm64: dts: qcom: pm660: Fix missing pound sign in interrupt-cells
        arm64: dts: qcom: kitakami: Temporarily disable SDHCI1
        arm64: dts: sdm630: Temporarily disable SMMUs by default
        arm64: dts: sdm845: Fixup OPP table for all qup devices
        arm64: dts: allwinner: h5: remove Mali GPU PMU module
        ARM: dts: sun8i: r40: bananapi-m2-ultra: Fix dcdc1 regulator
        soc: xilinx: Fix error code in zynqmp_pm_probe()
      1f70935f
  3. 24 10月, 2020 20 次提交
    • V
      KVM: ioapic: break infinite recursion on lazy EOI · 77377064
      Vitaly Kuznetsov 提交于
      During shutdown the IOAPIC trigger mode is reset to edge triggered
      while the vfio-pci INTx is still registered with a resampler.
      This allows us to get into an infinite loop:
      
      ioapic_set_irq
        -> ioapic_lazy_update_eoi
        -> kvm_ioapic_update_eoi_one
        -> kvm_notify_acked_irq
        -> kvm_notify_acked_gsi
        -> (via irq_acked fn ptr) irqfd_resampler_ack
        -> kvm_set_irq
        -> (via set fn ptr) kvm_set_ioapic_irq
        -> kvm_ioapic_set_irq
        -> ioapic_set_irq
      
      Commit 8be8f932 ("kvm: ioapic: Restrict lazy EOI update to
      edge-triggered interrupts", 2020-05-04) acknowledges that this recursion
      loop exists and tries to avoid it at the call to ioapic_lazy_update_eoi,
      but at this point the scenario is already set, we have an edge interrupt
      with resampler on the same gsi.
      
      Fortunately, the only user of irq ack notifiers (in addition to resamplefd)
      is i8254 timer interrupt reinjection.  These are edge-triggered, so in
      principle they would need the call to kvm_ioapic_update_eoi_one from
      ioapic_lazy_update_eoi, but they already disable AVIC(*), so they don't
      need the lazy EOI behavior.  Therefore, remove the call to
      kvm_ioapic_update_eoi_one from ioapic_lazy_update_eoi.
      
      This fixes CVE-2020-27152.  Note that this issue cannot happen with
      SR-IOV assigned devices because virtual functions do not have INTx,
      only MSI.
      
      Fixes: f458d039 ("kvm: ioapic: Lazy update IOAPIC EOI")
      Suggested-by: NPaolo Bonzini <pbonzini@redhat.com>
      Tested-by: NAlex Williamson <alex.williamson@redhat.com>
      Signed-off-by: NVitaly Kuznetsov <vkuznets@redhat.com>
      Signed-off-by: NPaolo Bonzini <pbonzini@redhat.com>
      77377064
    • P
      KVM: vmx: rename pi_init to avoid conflict with paride · a3ff25fc
      Paolo Bonzini 提交于
      allyesconfig results in:
      
      ld: drivers/block/paride/paride.o: in function `pi_init':
      (.text+0x1340): multiple definition of `pi_init'; arch/x86/kvm/vmx/posted_intr.o:posted_intr.c:(.init.text+0x0): first defined here
      make: *** [Makefile:1164: vmlinux] Error 1
      
      because commit:
      
      commit 8888cdd0
      Author: Xiaoyao Li <xiaoyao.li@intel.com>
      Date:   Wed Sep 23 11:31:11 2020 -0700
      
          KVM: VMX: Extract posted interrupt support to separate files
      
      added another pi_init(), though one already existed in the paride code.
      Reported-by: NJens Axboe <axboe@kernel.dk>
      Signed-off-by: NPaolo Bonzini <pbonzini@redhat.com>
      a3ff25fc
    • S
      KVM: x86/mmu: Avoid modulo operator on 64-bit value to fix i386 build · 764388ce
      Sean Christopherson 提交于
      Replace a modulo operator with the more common pattern for computing the
      gfn "offset" of a huge page to fix an i386 build error.
      
        arch/x86/kvm/mmu/tdp_mmu.c:212: undefined reference to `__umoddi3'
      
      In fact, almost all of tdp_mmu.c can be elided on 32-bit builds, but
      that is a much larger patch.
      
      Fixes: 2f2fad08 ("kvm: x86/mmu: Add functions to handle changed TDP SPTEs")
      Reported-by: NDaniel Díaz <daniel.diaz@linaro.org>
      Signed-off-by: NSean Christopherson <sean.j.christopherson@intel.com>
      Message-Id: <20201024031150.9318-1-sean.j.christopherson@intel.com>
      Signed-off-by: NPaolo Bonzini <pbonzini@redhat.com>
      764388ce
    • L
      Merge tag 'xfs-5.10-merge-7' of git://git.kernel.org/pub/scm/fs/xfs/xfs-linux · f11901ed
      Linus Torvalds 提交于
      Pull xfs fixes from Darrick Wong:
       "Two bug fixes that trickled in during the merge window:
      
         - Make fallocate check the alignment of its arguments against the
           fundamental allocation unit of the volume the file lives on, so
           that we don't trigger the fs' alignment checks.
      
         - Cancel unprocessed log intents immediately when log recovery fails,
           to avoid a log deadlock"
      
      * tag 'xfs-5.10-merge-7' of git://git.kernel.org/pub/scm/fs/xfs/xfs-linux:
        xfs: cancel intents immediately if process_intents fails
        xfs: fix fallocate functions when rtextsize is larger than 1
      f11901ed
    • L
      Merge tag 'docs-5.10-2' of git://git.lwn.net/linux · c80e42a4
      Linus Torvalds 提交于
      Pull documentation fixes from Jonathan Corbet:
       "A handful of late-arriving documentation fixes"
      
      * tag 'docs-5.10-2' of git://git.lwn.net/linux:
        docs: Add two missing entries in vm sysctl index
        docs/vm: trivial fixes to several spelling mistakes
        docs: submitting-patches: describe preserving review/test tags
        Documentation: Chinese translation of Documentation/arm64/hugetlbpage.rst
        Documentation: x86: fix a missing word in x86_64/mm.rst.
        docs: driver-api: remove a duplicated index entry
        docs: lkdtm: Modernize and improve details
        docs: deprecated.rst: Expand str*cpy() replacement notes
        docs/cpu-load: format the example code.
      c80e42a4
    • L
      Merge tag 'trace-v5.10-3' of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-trace · a5e5c274
      Linus Torvalds 提交于
      Pull tracing ring-buffer fix from Steven Rostedt:
       "The success return value of ring_buffer_resize() is stated to be
        zero and checked that way.
      
        But it was incorrectly returning the size allocated.
      
        Also, a fix to a comment"
      
      * tag 'trace-v5.10-3' of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-trace:
        ring-buffer: Update the description for ring_buffer_wait
        ring-buffer: Return 0 on success from ring_buffer_resize()
      a5e5c274
    • L
      Merge tag 'acpi-5.10-rc1-2' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm · b76f733c
      Linus Torvalds 提交于
      Pull more ACPI updates from Rafael Wysocki:
       "These include an ACPICA code build fix related to recent GPE register
        access changes, a Kconfig cleanup related to the Dynamic Platform and
        Thremal Framework (DPTF) support, a reboot issue workaround, a debug
        module fix and a couple of janitorial changes.
      
        Specifics:
      
         - Fix ACPICA code build after recent changes related to accessing GPE
           registers (Rafael Wysocki).
      
         - Clean up DPTF part of the ACPI Kconfig (Rafael Wysocki).
      
         - Work around a reboot issue related to RESET_REG (Zhang Rui).
      
         - Prevent ACPI debug module from attemtping to run (and crashing)
           when ACPI is disabled (Jamie Iles).
      
         - Drop confusing comment from the ACPI processor driver (Alex Hung).
      
         - Drop a few unreachable break statements (Tom Rix)"
      
      * tag 'acpi-5.10-rc1-2' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm:
        ACPI: utils: remove unreachable breaks
        ACPICA: Add missing type casts in GPE register access code
        ACPI: DPTF: Add ACPI_DPTF Kconfig menu
        ACPI: DPTF: Fix participant driver names
        ACPI: processor: remove comment regarding string _UID support
        ACPI: reboot: Avoid racing after writing to ACPI RESET_REG
        ACPI: debug: don't allow debugging when ACPI is disabled
      b76f733c
    • L
      Merge tag 'pm-5.10-rc1-2' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm · 41f762a1
      Linus Torvalds 提交于
      Pull more power management updates from Rafael Wysocki:
       "First of all, the adaptive voltage scaling (AVS) drivers go to new
        platform-specific locations as planned (this part was reported to have
        merge conflicts against the new arm-soc updates in linux-next).
      
        In addition to that, there are some fixes (intel_idle, intel_pstate,
        RAPL, acpi_cpufreq), the addition of on/off notifiers and idle state
        accounting support to the generic power domains (genpd) code and some
        janitorial changes all over.
      
        Specifics:
      
         - Move the AVS drivers to new platform-specific locations and get rid
           of the drivers/power/avs directory (Ulf Hansson).
      
         - Add on/off notifiers and idle state accounting support to the
           generic power domains (genpd) framework (Ulf Hansson, Lina Iyer).
      
         - Ulf will maintain the PM domain part of cpuidle-psci (Ulf Hansson).
      
         - Make intel_idle disregard ACPI _CST if it cannot use the data
           returned by that method (Mel Gorman).
      
         - Modify intel_pstate to avoid leaving useless sysfs directory
           structure behind if it cannot be registered (Chen Yu).
      
         - Fix domain detection in the RAPL power capping driver and prevent
           it from failing to enumerate the Psys RAPL domain (Zhang Rui).
      
         - Allow acpi-cpufreq to use ACPI _PSD information with Family 19 and
           later AMD chips (Wei Huang).
      
         - Update the driver assumptions comment in intel_idle and fix a
           kerneldoc comment in the runtime PM framework (Alexander Monakov,
           Bean Huo).
      
         - Avoid unnecessary resets of the cached frequency in the schedutil
           cpufreq governor to reduce overhead (Wei Wang).
      
         - Clean up the cpufreq core a bit (Viresh Kumar).
      
         - Make assorted minor janitorial changes (Daniel Lezcano, Geert
           Uytterhoeven, Hubert Jasudowicz, Tom Rix).
      
         - Clean up and optimize the cpupower utility somewhat (Colin Ian
           King, Martin Kaistra)"
      
      * tag 'pm-5.10-rc1-2' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm: (23 commits)
        PM: sleep: remove unreachable break
        PM: AVS: Drop the avs directory and the corresponding Kconfig
        PM: AVS: qcom-cpr: Move the driver to the qcom specific drivers
        PM: runtime: Fix typo in pm_runtime_set_active() helper comment
        PM: domains: Fix build error for genpd notifiers
        powercap: Fix typo in Kconfig "Plance" -> "Plane"
        cpufreq: schedutil: restore cached freq when next_f is not changed
        acpi-cpufreq: Honor _PSD table setting on new AMD CPUs
        PM: AVS: smartreflex Move driver to soc specific drivers
        PM: AVS: rockchip-io: Move the driver to the rockchip specific drivers
        PM: domains: enable domain idle state accounting
        PM: domains: Add curly braces to delimit comment + statement block
        PM: domains: Add support for PM domain on/off notifiers for genpd
        powercap/intel_rapl: enumerate Psys RAPL domain together with package RAPL domain
        powercap/intel_rapl: Fix domain detection
        intel_idle: Ignore _CST if control cannot be taken from the platform
        cpuidle: Remove pointless stub
        intel_idle: mention assumption that WBINVD is not needed
        MAINTAINERS: Add section for cpuidle-psci PM domain
        cpufreq: intel_pstate: Delete intel_pstate sysfs if failed to register the driver
        ...
      41f762a1
    • L
      Merge tag 'scsi-misc' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi · af995383
      Linus Torvalds 提交于
      Pull more SCSI updates from James Bottomley:
       "The set of core changes here is Christoph's submission path cleanups.
      
        These introduced a couple of regressions when first proposed so they
        got held over from the initial merge window pull request to give more
        testing time, which they've now had and Syzbot has confirmed the
        regression it detected is fixed.
      
        The other main changes are two driver updates (arcmsr, pm80xx) and
        assorted minor clean ups"
      
      * tag 'scsi-misc' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi: (38 commits)
        scsi: qla2xxx: Fix return of uninitialized value in rval
        scsi: core: Set sc_data_direction to DMA_NONE for no-transfer commands
        scsi: sr: Initialize ->cmd_len
        scsi: arcmsr: Update driver version to v1.50.00.02-20200819
        scsi: arcmsr: Add support for ARC-1886 series RAID controllers
        scsi: arcmsr: Fix device hot-plug monitoring timer stop
        scsi: arcmsr: Remove unnecessary syntax
        scsi: pm80xx: Driver version update
        scsi: pm80xx: Increase the number of outstanding I/O supported to 1024
        scsi: pm80xx: Remove DMA memory allocation for ccb and device structures
        scsi: pm80xx: Increase number of supported queues
        scsi: sym53c8xx_2: Fix sizeof() mismatch
        scsi: isci: Fix a typo in a comment
        scsi: qla4xxx: Fix inconsistent format argument type
        scsi: myrb: Fix inconsistent format argument types
        scsi: myrb: Remove redundant assignment to variable timeout
        scsi: bfa: Fix error return in bfad_pci_init()
        scsi: fcoe: Simplify the return expression of fcoe_sysfs_setup()
        scsi: snic: Simplify the return expression of svnic_cq_alloc()
        scsi: fnic: Simplify the return expression of vnic_wq_copy_alloc()
        ...
      af995383
    • L
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input · bd7e8c99
      Linus Torvalds 提交于
      Pull input updates from Dmitry Torokhov:
      
       - a new driver for ADC driven joysticks
      
       - a new Zintix touchscreen driver
      
       - enhancements to Intel SoC button array driver
      
       - support for F3A "function" in Synaptics RMI4 driver
      
       - assorted driver fixups
      
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input: (29 commits)
        Input: Add MAINTAINERS entry for SiS i2c touch input driver
        Input: evdev - per-client waitgroups
        Input: synaptics - enable InterTouch for ThinkPad T14 Gen 1
        Input: synaptics - enable InterTouch for ThinkPad P1/X1E gen 2
        Input: synaptics-rmi4 - support bootloader v8 in f34v7
        Input: synaptics-rmi4 - add support for F3A
        Input: synaptics-rmi4 - rename f30_data to gpio_data
        Input: add zinitix touchscreen driver
        dt-bindings: input/touchscreen: add bindings for zinitix
        Input: joystick - add ADC attached joystick driver.
        dt-bindings: input: Add docs for ADC driven joystick
        Input: sun4i-ps2 - fix handling of platform_get_irq() error
        Input: twl4030_keypad - fix handling of platform_get_irq() error
        Input: omap4-keypad - fix handling of platform_get_irq() error
        Input: ep93xx_keypad - fix handling of platform_get_irq() error
        Input: stmfts - fix a & vs && typo
        Input: imx6ul_tsc - unify open/close and PM paths
        Input: imx6ul_tsc - clean up some errors in imx6ul_tsc_resume()
        Input: elants_i2c - fix typo for an attribute to show calibration count
        Input: elants_i2c - report resolution of ABS_MT_TOUCH_MAJOR by FW information.
        ...
      bd7e8c99
    • L
      Merge tag 'sound-fix-5.10-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound · 40a03b75
      Linus Torvalds 提交于
      Pull sound fixes from Takashi Iwai:
       "Just a few additional small and trivial fixes"
      
      * tag 'sound-fix-5.10-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound:
        ALSA: hda - Fix the return value if cb func is already registered
        ALSA: usb-audio: Line6 Pod Go interface requires static clock rate quirk
        ALSA: hda/ca0132: make some const arrays static, makes object smaller
        ALSA: sparc: dbri: fix repeated word 'the'
      40a03b75
    • L
      Merge tag 'drm-next-2020-10-23' of git://anongit.freedesktop.org/drm/drm · fc03b2d6
      Linus Torvalds 提交于
      Pull more drm fixes from Dave Airlie:
       "This should be the last round of things for rc1, a bunch of i915
        fixes, some amdgpu, more font OOB fixes and one ttm fix just found
        reading code:
      
        fbcon/fonts:
         - Two patches to prevent OOB access
      
        ttm:
         - fix for evicition value range check
      
        amdgpu:
         - Sienna Cichlid fixes
         - MST manager resource leak fix
         - GPU reset fix
      
        amdkfd:
         - Luxmark fix for Navi1x
      
        i915:
         - Tweak initial DPCD backlight.enabled value (Sean)
         - Initialize reserved MOCS indices (Ayaz)
         - Mark initial fb obj as WT on eLLC machines to avoid rcu lockup (Ville)
         - Support parsing of oversize batches (Chris)
         - Delay execlists processing for TGL (Chris)
         - Use the active reference on the vma during error capture (Chris)
         - Widen CSB pointer (Chris)
         - Wait for CSB entries on TGL (Chris)
         - Fix unwind for scratch page allocation (Chris)
         - Exclude low patches of stolen memory (Chris)
         - Force VT'd workarounds when running as a guest OS (Chris)
         - Drop runtime-pm assert from vpgu io accessors (Chris)"
      
      * tag 'drm-next-2020-10-23' of git://anongit.freedesktop.org/drm/drm: (31 commits)
        drm/amdgpu: correct the cu and rb info for sienna cichlid
        drm/amd/pm: remove the average clock value in sysfs
        drm/amd/pm: fix pp_dpm_fclk
        Revert drm/amdgpu: disable sienna chichlid UMC RAS
        drm/amd/pm: fix pcie information for sienna cichlid
        drm/amdkfd: Use same SQ prefetch setting as amdgpu
        drm/amd/swsmu: correct wrong feature bit mapping
        drm/amd/psp: Fix sysfs: cannot create duplicate filename
        drm/amd/display: Avoid MST manager resource leak.
        drm/amd/display: Revert "drm/amd/display: Fix a list corruption"
        drm/amdgpu: update golden setting for sienna_cichlid
        drm/amd/swsmu: add missing feature map for sienna_cichlid
        drm/amdgpu: correct the gpu reset handling for job != NULL case
        drm/amdgpu: add rlc iram and dram firmware support
        drm/amdgpu: add function to program pbb mode for sienna cichlid
        drm/i915: Drop runtime-pm assert from vgpu io accessors
        drm/i915: Force VT'd workarounds when running as a guest OS
        drm/i915: Exclude low pages (128KiB) of stolen from use
        drm/i915/gt: Onion unwind for scratch page allocation failure
        drm/ttm: fix eviction valuable range check.
        ...
      fc03b2d6
    • R
      x86/uaccess: fix code generation in put_user() · 9c5743df
      Rasmus Villemoes 提交于
      Quoting https://gcc.gnu.org/onlinedocs/gcc/Local-Register-Variables.html:
      
        You can define a local register variable and associate it with a
        specified register...
      
        The only supported use for this feature is to specify registers for
        input and output operands when calling Extended asm (see Extended
        Asm). This may be necessary if the constraints for a particular
        machine don't provide sufficient control to select the desired
        register.
      
      On 32-bit x86, this is used to ensure that gcc will put an 8-byte value
      into the %edx:%eax pair, while all other cases will just use the single
      register %eax (%rax on x86-64).  While the _ASM_AX actually just expands
      to "%eax", note this comment next to get_user() which does something
      very similar:
      
       * The use of _ASM_DX as the register specifier is a bit of a
       * simplification, as gcc only cares about it as the starting point
       * and not size: for a 64-bit value it will use %ecx:%edx on 32 bits
       * (%ecx being the next register in gcc's x86 register sequence), and
       * %rdx on 64 bits.
      
      However, getting this to work requires that there is no code between the
      assignment to the local register variable and its use as an input to the
      asm() which can possibly clobber any of the registers involved -
      including evaluation of the expressions making up other inputs.
      
      In the current code, the ptr expression used directly as an input may
      cause such code to be emitted.  For example, Sean Christopherson
      observed that with KASAN enabled and ptr being current->set_child_tid
      (from chedule_tail()), the load of current->set_child_tid causes a call
      to __asan_load8() to be emitted immediately prior to the __put_user_4
      call, and Naresh Kamboju reports that various mmstress tests fail on
      KASAN-enabled builds.
      
      It's also possible to synthesize a broken case without KASAN if one uses
      "foo()" as the ptr argument, with foo being some "extern u64 __user
      *foo(void);" (though I don't know if that appears in real code).
      
      Fix it by making sure ptr gets evaluated before the assignment to
      __val_pu, and add a comment that __val_pu must be the last thing
      computed before the asm() is entered.
      
      Cc: Sean Christopherson <sean.j.christopherson@intel.com>
      Reported-by: NNaresh Kamboju <naresh.kamboju@linaro.org>
      Tested-by: NNaresh Kamboju <naresh.kamboju@linaro.org>
      Fixes: d55564cf ("x86: Make __put_user() generate an out-of-line call")
      Signed-off-by: NRasmus Villemoes <linux@rasmusvillemoes.dk>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      9c5743df
    • L
      Merge tag 'net-5.10-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net · 3cb12d27
      Linus Torvalds 提交于
      Pull networking fixes from Jakub Kicinski:
       "Cross-tree/merge window issues:
      
         - rtl8150: don't incorrectly assign random MAC addresses; fix late in
           the 5.9 cycle started depending on a return code from a function
           which changed with the 5.10 PR from the usb subsystem
      
        Current release regressions:
      
         - Revert "virtio-net: ethtool configurable RXCSUM", it was causing
           crashes at probe when control vq was not negotiated/available
      
        Previous release regressions:
      
         - ixgbe: fix probing of multi-port 10 Gigabit Intel NICs with an MDIO
           bus, only first device would be probed correctly
      
         - nexthop: Fix performance regression in nexthop deletion by
           effectively switching from recently added synchronize_rcu() to
           synchronize_rcu_expedited()
      
         - netsec: ignore 'phy-mode' device property on ACPI systems; the
           property is not populated correctly by the firmware, but firmware
           configures the PHY so just keep boot settings
      
        Previous releases - always broken:
      
         - tcp: fix to update snd_wl1 in bulk receiver fast path, addressing
           bulk transfers getting "stuck"
      
         - icmp: randomize the global rate limiter to prevent attackers from
           getting useful signal
      
         - r8169: fix operation under forced interrupt threading, make the
           driver always use hard irqs, even on RT, given the handler is light
           and only wants to schedule napi (and do so through a _irqoff()
           variant, preferably)
      
         - bpf: Enforce pointer id generation for all may-be-null register
           type to avoid pointers erroneously getting marked as null-checked
      
         - tipc: re-configure queue limit for broadcast link
      
         - net/sched: act_tunnel_key: fix OOB write in case of IPv6 ERSPAN
           tunnels
      
         - fix various issues in chelsio inline tls driver
      
        Misc:
      
         - bpf: improve just-added bpf_redirect_neigh() helper api to support
           supplying nexthop by the caller - in case BPF program has already
           done a lookup we can avoid doing another one
      
         - remove unnecessary break statements
      
         - make MCTCP not select IPV6, but rather depend on it"
      
      * tag 'net-5.10-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net: (62 commits)
        tcp: fix to update snd_wl1 in bulk receiver fast path
        net: Properly typecast int values to set sk_max_pacing_rate
        netfilter: nf_fwd_netdev: clear timestamp in forwarding path
        ibmvnic: save changed mac address to adapter->mac_addr
        selftests: mptcp: depends on built-in IPv6
        Revert "virtio-net: ethtool configurable RXCSUM"
        rtnetlink: fix data overflow in rtnl_calcit()
        net: ethernet: mtk-star-emac: select REGMAP_MMIO
        net: hdlc_raw_eth: Clear the IFF_TX_SKB_SHARING flag after calling ether_setup
        net: hdlc: In hdlc_rcv, check to make sure dev is an HDLC device
        bpf, libbpf: Guard bpf inline asm from bpf_tail_call_static
        bpf, selftests: Extend test_tc_redirect to use modified bpf_redirect_neigh()
        bpf: Fix bpf_redirect_neigh helper api to support supplying nexthop
        mptcp: depends on IPV6 but not as a module
        sfc: move initialisation of efx->filter_sem to efx_init_struct()
        mpls: load mpls_gso after mpls_iptunnel
        net/sched: act_tunnel_key: fix OOB write in case of IPv6 ERSPAN tunnels
        net/sched: act_gate: Unlock ->tcfa_lock in tc_setup_flow_action()
        net: dsa: bcm_sf2: make const array static, makes object smaller
        mptcp: MPTCP_IPV6 should depend on IPV6 instead of selecting it
        ...
      3cb12d27
    • L
      Merge tag 'gfs2-for-5.10' of git://git.kernel.org/pub/scm/linux/kernel/git/gfs2/linux-gfs2 · 0adc313c
      Linus Torvalds 提交于
      Pull gfs2 updates from Andreas Gruenbacher:
      
       - Use iomap for non-journaled buffered I/O. This largely eliminates
         buffer heads on filesystems where the block size matches the page
         size. Many thanks to Christoph Hellwig for this patch!
      
       - Fixes for some more journaled data filesystem bugs, found by running
         xfstests with data journaling on for all files (chattr +j $MNT) (Bob
         Peterson)
      
       - gfs2_evict_inode refactoring (Bob Peterson)
      
       - Use the statfs data in the journal during recovery instead of reading
         it in from the local statfs inodes (Abhi Das)
      
       - Several other minor fixes by various people
      
      * tag 'gfs2-for-5.10' of git://git.kernel.org/pub/scm/linux/kernel/git/gfs2/linux-gfs2: (30 commits)
        gfs2: Recover statfs info in journal head
        gfs2: lookup local statfs inodes prior to journal recovery
        gfs2: Add fields for statfs info in struct gfs2_log_header_host
        gfs2: Ignore subsequent errors after withdraw in rgrp_go_sync
        gfs2: Eliminate gl_vm
        gfs2: Only access gl_delete for iopen glocks
        gfs2: Fix comments to glock_hash_walk
        gfs2: eliminate GLF_QUEUED flag in favor of list_empty(gl_holders)
        gfs2: Ignore journal log writes for jdata holes
        gfs2: simplify gfs2_block_map
        gfs2: Only set PageChecked if we have a transaction
        gfs2: don't lock sd_ail_lock in gfs2_releasepage
        gfs2: make gfs2_ail1_empty_one return the count of active items
        gfs2: Wipe jdata and ail1 in gfs2_journal_wipe, formerly gfs2_meta_wipe
        gfs2: enhance log_blocks trace point to show log blocks free
        gfs2: add missing log_blocks trace points in gfs2_write_revokes
        gfs2: rename gfs2_write_full_page to gfs2_write_jdata_page, remove parm
        gfs2: add validation checks for size of superblock
        gfs2: use-after-free in sysfs deregistration
        gfs2: Fix NULL pointer dereference in gfs2_rgrp_dump
        ...
      0adc313c
    • L
      Merge tag '5.10-rc-smb3-fixes-part1' of git://git.samba.org/sfrench/cifs-2.6 · 0613ed91
      Linus Torvalds 提交于
      Pull cifs updates from Steve French:
      
       - add support for recognizing special file types (char/block/fifo/
         symlink) for files created by Linux on WSL (a format we plan to move
         to as the default for creating special files on Linux, as it has
         advantages over the other current option, the SFU format) in readdir.
      
       - fix double queries to root directory when directory leases not
         supported (e.g. Samba)
      
       - fix querying mode bits (modefromsid mount option) for special file
         types
      
       - stronger encryption (gcm256), disabled by default until tested more
         broadly
      
       - allow querying owner when server reports 'well known SID' on query
         dir with SMB3.1.1 POSIX extensions
      
      * tag '5.10-rc-smb3-fixes-part1' of git://git.samba.org/sfrench/cifs-2.6: (30 commits)
        SMB3: add support for recognizing WSL reparse tags
        cifs: remove bogus debug code
        smb3.1.1: fix typo in compression flag
        cifs: move smb version mount options into fs_context.c
        cifs: move cache mount options to fs_context.ch
        cifs: move security mount options into fs_context.ch
        cifs: add files to host new mount api
        smb3: do not try to cache root directory if dir leases not supported
        smb3: fix stat when special device file and mounted with modefromsid
        cifs: Print the address and port we are connecting to in generic_ip_connect()
        SMB3: Resolve data corruption of TCP server info fields
        cifs: make const array static, makes object smaller
        SMB3.1.1: Fix ids returned in POSIX query dir
        smb3: add dynamic trace point to trace when credits obtained
        smb3.1.1: do not fail if no encryption required but server doesn't support it
        cifs: Return the error from crypt_message when enc/dec key not found.
        smb3.1.1: set gcm256 when requested
        smb3.1.1: rename nonces used for GCM and CCM encryption
        smb3.1.1: print warning if server does not support requested encryption type
        smb3.1.1: add new module load parm enable_gcm_256
        ...
      0613ed91
    • L
      Merge tag 'vfs-5.10-merge-1' of git://git.kernel.org/pub/scm/fs/xfs/xfs-linux · c4728cfb
      Linus Torvalds 提交于
      Pull clone/dedupe/remap code refactoring from Darrick Wong:
       "Move the generic file range remap (aka reflink and dedupe) functions
        out of mm/filemap.c and fs/read_write.c and into fs/remap_range.c to
        reduce clutter in the first two files"
      
      * tag 'vfs-5.10-merge-1' of git://git.kernel.org/pub/scm/fs/xfs/xfs-linux:
        vfs: move the generic write and copy checks out of mm
        vfs: move the remap range helpers to remap_range.c
        vfs: move generic_remap_checks out of mm
      c4728cfb
    • M
      ata: fix some kernel-doc markups · 94bd5719
      Mauro Carvalho Chehab 提交于
      Some functions have different names between their prototypes
      and the kernel-doc markup.
      Signed-off-by: NMauro Carvalho Chehab <mchehab+huawei@kernel.org>
      Signed-off-by: NJens Axboe <axboe@kernel.dk>
      94bd5719
    • M
      block: blk-mq: fix a kernel-doc markup · 24f7bb88
      Mauro Carvalho Chehab 提交于
      Fix a typo:
      	blk_mq_run_hw_queue -> blk_mq_run_hw_queues
      Signed-off-by: NMauro Carvalho Chehab <mchehab+huawei@kernel.org>
      Signed-off-by: NJens Axboe <axboe@kernel.dk>
      24f7bb88
    • L
      Merge tag 'for-linus' of git://git.kernel.org/pub/scm/virt/kvm/kvm · f9a705ad
      Linus Torvalds 提交于
      Pull KVM updates from Paolo Bonzini:
       "For x86, there is a new alternative and (in the future) more scalable
        implementation of extended page tables that does not need a reverse
        map from guest physical addresses to host physical addresses.
      
        For now it is disabled by default because it is still lacking a few of
        the existing MMU's bells and whistles. However it is a very solid
        piece of work and it is already available for people to hammer on it.
      
        Other updates:
      
        ARM:
         - New page table code for both hypervisor and guest stage-2
         - Introduction of a new EL2-private host context
         - Allow EL2 to have its own private per-CPU variables
         - Support of PMU event filtering
         - Complete rework of the Spectre mitigation
      
        PPC:
         - Fix for running nested guests with in-kernel IRQ chip
         - Fix race condition causing occasional host hard lockup
         - Minor cleanups and bugfixes
      
        x86:
         - allow trapping unknown MSRs to userspace
         - allow userspace to force #GP on specific MSRs
         - INVPCID support on AMD
         - nested AMD cleanup, on demand allocation of nested SVM state
         - hide PV MSRs and hypercalls for features not enabled in CPUID
         - new test for MSR_IA32_TSC writes from host and guest
         - cleanups: MMU, CPUID, shared MSRs
         - LAPIC latency optimizations ad bugfixes"
      
      * tag 'for-linus' of git://git.kernel.org/pub/scm/virt/kvm/kvm: (232 commits)
        kvm: x86/mmu: NX largepage recovery for TDP MMU
        kvm: x86/mmu: Don't clear write flooding count for direct roots
        kvm: x86/mmu: Support MMIO in the TDP MMU
        kvm: x86/mmu: Support write protection for nesting in tdp MMU
        kvm: x86/mmu: Support disabling dirty logging for the tdp MMU
        kvm: x86/mmu: Support dirty logging for the TDP MMU
        kvm: x86/mmu: Support changed pte notifier in tdp MMU
        kvm: x86/mmu: Add access tracking for tdp_mmu
        kvm: x86/mmu: Support invalidate range MMU notifier for TDP MMU
        kvm: x86/mmu: Allocate struct kvm_mmu_pages for all pages in TDP MMU
        kvm: x86/mmu: Add TDP MMU PF handler
        kvm: x86/mmu: Remove disallowed_hugepage_adjust shadow_walk_iterator arg
        kvm: x86/mmu: Support zapping SPTEs in the TDP MMU
        KVM: Cache as_id in kvm_memory_slot
        kvm: x86/mmu: Add functions to handle changed TDP SPTEs
        kvm: x86/mmu: Allocate and free TDP MMU roots
        kvm: x86/mmu: Init / Uninit the TDP MMU
        kvm: x86/mmu: Introduce tdp_iter
        KVM: mmu: extract spte.h and spte.c
        KVM: mmu: Separate updating a PTE from kvm_set_pte_rmapp
        ...
      f9a705ad