Skip to content
  1. Oct 31, 2020
  2. Oct 30, 2020
    • Gustavo A. R. Silva's avatar
      scsi: target: tcmu: Replace zero-length array with flexible-array member · 8fdaabe1
      Gustavo A. R. Silva authored
      
      
      There is a regular need in the kernel to provide a way to declare having a
      dynamically sized set of trailing elements in a structure. Kernel code should
      always use “flexible array members”[1] for these cases. The older style of
      one-element or zero-length arrays should no longer be used[2].
      
      [1] https://en.wikipedia.org/wiki/Flexible_array_member
      [2] https://www.kernel.org/doc/html/v5.9-rc1/process/deprecated.html#zero-length-and-one-element-arrays
      
      Signed-off-by: default avatarGustavo A. R. Silva <gustavoars@kernel.org>
      8fdaabe1
    • Gustavo A. R. Silva's avatar
      ima: Replace zero-length array with flexible-array member · 4739eeaf
      Gustavo A. R. Silva authored
      
      
      There is a regular need in the kernel to provide a way to declare having a
      dynamically sized set of trailing elements in a structure. Kernel code should
      always use “flexible array members”[1] for these cases. The older style of
      one-element or zero-length arrays should no longer be used[2].
      
      [1] https://en.wikipedia.org/wiki/Flexible_array_member
      [2] https://www.kernel.org/doc/html/v5.9-rc1/process/deprecated.html#zero-length-and-one-element-arrays
      
      Signed-off-by: default avatarGustavo A. R. Silva <gustavoars@kernel.org>
      4739eeaf
    • Gustavo A. R. Silva's avatar
      enetc: Replace zero-length array with flexible-array member · bfe124d1
      Gustavo A. R. Silva authored
      
      
      There is a regular need in the kernel to provide a way to declare having a
      dynamically sized set of trailing elements in a structure. Kernel code should
      always use “flexible array members”[1] for these cases. The older style of
      one-element or zero-length arrays should no longer be used[2].
      
      [1] https://en.wikipedia.org/wiki/Flexible_array_member
      [2] https://www.kernel.org/doc/html/v5.9-rc1/process/deprecated.html#zero-length-and-one-element-arrays
      
      Signed-off-by: default avatarGustavo A. R. Silva <gustavoars@kernel.org>
      bfe124d1
    • Gustavo A. R. Silva's avatar
      fs: Replace zero-length array with flexible-array member · 5e01fdff
      Gustavo A. R. Silva authored
      
      
      There is a regular need in the kernel to provide a way to declare having a
      dynamically sized set of trailing elements in a structure. Kernel code should
      always use “flexible array members”[1] for these cases. The older style of
      one-element or zero-length arrays should no longer be used[2].
      
      [1] https://en.wikipedia.org/wiki/Flexible_array_member
      [2] https://www.kernel.org/doc/html/v5.9-rc1/process/deprecated.html#zero-length-and-one-element-arrays
      
      Signed-off-by: default avatarGustavo A. R. Silva <gustavoars@kernel.org>
      5e01fdff
    • Gustavo A. R. Silva's avatar
      Bluetooth: Replace zero-length array with flexible-array member · b08eadd2
      Gustavo A. R. Silva authored
      
      
      There is a regular need in the kernel to provide a way to declare having a
      dynamically sized set of trailing elements in a structure. Kernel code should
      always use “flexible array members”[1] for these cases. The older style of
      one-element or zero-length arrays should no longer be used[2].
      
      [1] https://en.wikipedia.org/wiki/Flexible_array_member
      [2] https://www.kernel.org/doc/html/v5.9-rc1/process/deprecated.html#zero-length-and-one-element-arrays
      
      Signed-off-by: default avatarGustavo A. R. Silva <gustavoars@kernel.org>
      b08eadd2
    • Gustavo A. R. Silva's avatar
      params: Replace zero-length array with flexible-array member · fa29c9c1
      Gustavo A. R. Silva authored
      
      
      There is a regular need in the kernel to provide a way to declare having a
      dynamically sized set of trailing elements in a structure. Kernel code should
      always use “flexible array members”[1] for these cases. The older style of
      one-element or zero-length arrays should no longer be used[2].
      
      [1] https://en.wikipedia.org/wiki/Flexible_array_member
      [2] https://www.kernel.org/doc/html/v5.9-rc1/process/deprecated.html#zero-length-and-one-element-arrays
      
      Signed-off-by: default avatarGustavo A. R. Silva <gustavoars@kernel.org>
      fa29c9c1
    • Gustavo A. R. Silva's avatar
      tracepoint: Replace zero-length array with flexible-array member · 9d0a49c7
      Gustavo A. R. Silva authored
      
      
      There is a regular need in the kernel to provide a way to declare having a
      dynamically sized set of trailing elements in a structure. Kernel code should
      always use “flexible array members”[1] for these cases. The older style of
      one-element or zero-length arrays should no longer be used[2].
      
      [1] https://en.wikipedia.org/wiki/Flexible_array_member
      [2] https://www.kernel.org/doc/html/v5.9-rc1/process/deprecated.html#zero-length-and-one-element-arrays
      
      Signed-off-by: default avatarGustavo A. R. Silva <gustavoars@kernel.org>
      9d0a49c7
    • Gustavo A. R. Silva's avatar
      platform/chrome: cros_ec_proto: Replace zero-length array with flexible-array member · 12008883
      Gustavo A. R. Silva authored
      
      
      There is a regular need in the kernel to provide a way to declare having a
      dynamically sized set of trailing elements in a structure. Kernel code should
      always use “flexible array members”[1] for these cases. The older style of
      one-element or zero-length arrays should no longer be used[2].
      
      [1] https://en.wikipedia.org/wiki/Flexible_array_member
      [2] https://www.kernel.org/doc/html/v5.9-rc1/process/deprecated.html#zero-length-and-one-element-arrays
      
      Signed-off-by: default avatarGustavo A. R. Silva <gustavoars@kernel.org>
      12008883
    • Gustavo A. R. Silva's avatar
      platform/chrome: cros_ec_commands: Replace zero-length array with flexible-array member · 88354105
      Gustavo A. R. Silva authored
      
      
      There is a regular need in the kernel to provide a way to declare having a
      dynamically sized set of trailing elements in a structure. Kernel code should
      always use “flexible array members”[1] for these cases. The older style of
      one-element or zero-length arrays should no longer be used[2].
      
      [1] https://en.wikipedia.org/wiki/Flexible_array_member
      [2] https://www.kernel.org/doc/html/v5.9-rc1/process/deprecated.html#zero-length-and-one-element-arrays
      
      Signed-off-by: default avatarGustavo A. R. Silva <gustavoars@kernel.org>
      88354105
    • Gustavo A. R. Silva's avatar
      mailbox: zynqmp-ipi-message: Replace zero-length array with flexible-array member · 277ffd6c
      Gustavo A. R. Silva authored
      
      
      There is a regular need in the kernel to provide a way to declare having a
      dynamically sized set of trailing elements in a structure. Kernel code should
      always use “flexible array members”[1] for these cases. The older style of
      one-element or zero-length arrays should no longer be used[2].
      
      [1] https://en.wikipedia.org/wiki/Flexible_array_member
      [2] https://www.kernel.org/doc/html/v5.9-rc1/process/deprecated.html#zero-length-and-one-element-arrays
      
      Signed-off-by: default avatarGustavo A. R. Silva <gustavoars@kernel.org>
      277ffd6c
    • Gustavo A. R. Silva's avatar
      dmaengine: ti-cppi5: Replace zero-length array with flexible-array member · a4147d85
      Gustavo A. R. Silva authored
      
      
      There is a regular need in the kernel to provide a way to declare having a
      dynamically sized set of trailing elements in a structure. Kernel code should
      always use “flexible array members”[1] for these cases. The older style of
      one-element or zero-length arrays should no longer be used[2].
      
      [1] https://en.wikipedia.org/wiki/Flexible_array_member
      [2] https://www.kernel.org/doc/html/v5.9-rc1/process/deprecated.html#zero-length-and-one-element-arrays
      
      Signed-off-by: default avatarGustavo A. R. Silva <gustavoars@kernel.org>
      a4147d85
  3. Oct 26, 2020
    • Linus Torvalds's avatar
      Linux 5.10-rc1 · 3650b228
      Linus Torvalds authored
      v5.10-rc1
      3650b228
    • Joe Perches's avatar
      treewide: Convert macro and uses of __section(foo) to __section("foo") · 33def849
      Joe Perches authored
      
      
      Use a more generic form for __section that requires quotes to avoid
      complications with clang and gcc differences.
      
      Remove the quote operator # from compiler_attributes.h __section macro.
      
      Convert all unquoted __section(foo) uses to quoted __section("foo").
      Also convert __attribute__((section("foo"))) uses to __section("foo")
      even if the __attribute__ has multiple list entry forms.
      
      Conversion done using the script at:
      
          https://lore.kernel.org/lkml/75393e5ddc272dc7403de74d645e6c6e0f4e70eb.camel@perches.com/2-convert_section.pl
      
      Signed-off-by: default avatarJoe Perches <joe@perches.com>
      Reviewed-by: default avatarNick Desaulniers <ndesaulniers@gooogle.com>
      Reviewed-by: default avatarMiguel Ojeda <ojeda@kernel.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      33def849
    • Rasmus Villemoes's avatar
      kernel/sys.c: fix prototype of prctl_get_tid_address() · 986b9eac
      Rasmus Villemoes authored
      
      
      tid_addr is not a "pointer to (pointer to int in userspace)"; it is in
      fact a "pointer to (pointer to int in userspace) in userspace".  So
      sparse rightfully complains about passing a kernel pointer to
      put_user().
      
      Reported-by: default avatarkernel test robot <lkp@intel.com>
      Signed-off-by: default avatarRasmus Villemoes <linux@rasmusvillemoes.dk>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      986b9eac
    • Eric Biggers's avatar
      mm: remove kzfree() compatibility definition · 23224e45
      Eric Biggers authored
      Commit 453431a5
      
       ("mm, treewide: rename kzfree() to
      kfree_sensitive()") renamed kzfree() to kfree_sensitive(),
      but it left a compatibility definition of kzfree() to avoid
      being too disruptive.
      
      Since then a few more instances of kzfree() have slipped in.
      
      Just get rid of them and remove the compatibility definition
      once and for all.
      
      Signed-off-by: default avatarEric Biggers <ebiggers@google.com>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      23224e45
    • Joe Perches's avatar
      checkpatch: enable GIT_DIR environment use to set git repository location · 0f7f635b
      Joe Perches authored
      
      
      If set, use the environment variable GIT_DIR to change the default .git
      location of the kernel git tree.
      
      If GIT_DIR is unset, keep using the current ".git" default.
      
      Link: https://lkml.kernel.org/r/c5e23b45562373d632fccb8bc04e563abba4dd1d.camel@perches.com
      Signed-off-by: default avatarJoe Perches <joe@perches.com>
      Tested-by: default avatarGeert Uytterhoeven <geert@linux-m68k.org>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      0f7f635b
    • Linus Torvalds's avatar
      Merge tag 'timers-urgent-2020-10-25' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 672f8871
      Linus Torvalds authored
      Pull timer fixes from Thomas Gleixner:
       "A time namespace fix and a matching selftest. The futex absolute
        timeouts which are based on CLOCK_MONOTONIC require time namespace
        corrected. This was missed in the original time namesapce support"
      
      * tag 'timers-urgent-2020-10-25' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        selftests/timens: Add a test for futex()
        futex: Adjust absolute futex timeouts with per time namespace offset
      672f8871
    • Linus Torvalds's avatar
      Merge tag 'sched-urgent-2020-10-25' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 87702a33
      Linus Torvalds authored
      Pull scheduler fixes from Thomas Gleixner:
       "Two scheduler fixes:
      
         - A trivial build fix for sched_feat() to compile correctly with
           CONFIG_JUMP_LABEL=n
      
         - Replace a zero lenght array with a flexible array"
      
      * tag 'sched-urgent-2020-10-25' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        sched/features: Fix !CONFIG_JUMP_LABEL case
        sched: Replace zero-length array with flexible-array
      87702a33
    • Linus Torvalds's avatar
      Merge tag 'perf-urgent-2020-10-25' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · a3d1b312
      Linus Torvalds authored
      Pull perf fix from Thomas Gleixner:
       "A single fix to compute the field offset of the SNOOPX bit in the data
        source bitmask of perf events correctly"
      
      * tag 'perf-urgent-2020-10-25' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        perf: correct SNOOPX field offset
      a3d1b312
    • Linus Torvalds's avatar
      Merge tag 'locking-urgent-2020-10-25' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 1c84550f
      Linus Torvalds authored
      Pull locking fix from Thomas Gleixner:
       "Just a trivial fix for kernel-doc warnings"
      
      * tag 'locking-urgent-2020-10-25' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        locking/seqlocks: Fix kernel-doc warnings
      1c84550f
    • Linus Torvalds's avatar
      Merge tag 'ntb-5.10' of git://github.com/jonmason/ntb · e5acf0ed
      Linus Torvalds authored
      Pull NTB fixes from Jon Mason.
      
      * tag 'ntb-5.10' of git://github.com/jonmason/ntb:
        NTB: Use struct_size() helper in devm_kzalloc()
        ntb: intel: Fix memleak in intel_ntb_pci_probe
        NTB: hw: amd: fix an issue about leak system resources
      e5acf0ed
    • Linus Torvalds's avatar
      Merge branch 'i2c/for-5.10' of git://git.kernel.org/pub/scm/linux/kernel/git/wsa/linux · 0746c4a9
      Linus Torvalds authored
      Pull i2c fix from Wolfram Sang:
       "Regression fix for rc1 and stable kernels as well"
      
      * 'i2c/for-5.10' of git://git.kernel.org/pub/scm/linux/kernel/git/wsa/linux:
        i2c: core: Restore acpi_walk_dep_device_list() getting called after registering the ACPI i2c devs
      0746c4a9
    • Linus Torvalds's avatar
      Merge tag '5.10-rc-smb3-fixes-part2' of git://git.samba.org/sfrench/cifs-2.6 · c10037f8
      Linus Torvalds authored
      Pull more cifs updates from Steve French:
       "Add support for stat of various special file types (WSL reparse points
        for char, block, fifo)"
      
      * tag '5.10-rc-smb3-fixes-part2' of git://git.samba.org/sfrench/cifs-2.6:
        cifs: update internal module version number
        smb3: add some missing definitions from MS-FSCC
        smb3: remove two unused variables
        smb3: add support for stat of WSL reparse points for special file types
      c10037f8
    • Linus Torvalds's avatar
      Merge branch 'parisc-5.10-2' of git://git.kernel.org/pub/scm/linux/kernel/git/deller/parisc-linux · f9c25d98
      Linus Torvalds authored
      Pull more parisc updates from Helge Deller:
      
       - During this merge window O_NONBLOCK was changed to become 000200000,
         but we missed that the syscalls timerfd_create(), signalfd4(),
         eventfd2(), pipe2(), inotify_init1() and userfaultfd() do a strict
         bit-wise check of the flags parameter.
      
         To provide backward compatibility with existing userspace we
         introduce parisc specific wrappers for those syscalls which filter
         out the old O_NONBLOCK value and replaces it with the new one.
      
       - Prevent HIL bus driver to get stuck when keyboard or mouse isn't
         attached
      
       - Improve error return codes when setting rtc time
      
       - Minor documentation fix in pata_ns87415.c
      
      * 'parisc-5.10-2' of git://git.kernel.org/pub/scm/linux/kernel/git/deller/parisc-linux:
        ata: pata_ns87415.c: Document support on parisc with superio chip
        parisc: Add wrapper syscalls to fix O_NONBLOCK flag usage
        hil/parisc: Disable HIL driver when it gets stuck
        parisc: Improve error return codes when setting rtc time
      f9c25d98
    • Linus Torvalds's avatar
      Merge tag 'for-linus-5.10b-rc1c-tag' of git://git.kernel.org/pub/scm/linux/kernel/git/xen/tip · bd6aabc7
      Linus Torvalds authored
      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
    • Linus Torvalds's avatar
      Merge tag 'safesetid-5.10' of git://github.com/micah-morton/linux · 81ecf91e
      Linus Torvalds authored
      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
    • Linus Torvalds's avatar
      Merge tag '20201024-v4-5.10' of git://git.kernel.org/pub/scm/linux/kernel/git/wtarreau/prandom · 91f28da8
      Linus Torvalds authored
      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
  4. Oct 25, 2020
    • Hans de Goede's avatar
      i2c: core: Restore acpi_walk_dep_device_list() getting called after registering the ACPI i2c devs · 8058d699
      Hans de Goede authored
      Commit 21653a41 ("i2c: core: Call i2c_acpi_install_space_handler()
      before i2c_acpi_register_devices()")'s intention was to only move the
      acpi_install_address_space_handler() call to the point before where
      the ACPI declared i2c-children of the adapter where instantiated by
      i2c_acpi_register_devices().
      
      But i2c_acpi_install_space_handler() had a call to
      acpi_walk_dep_device_list() hidden (that is I missed it) at the end
      of it, so as an unwanted side-effect now acpi_walk_dep_device_list()
      was also being called before i2c_acpi_register_devices().
      
      Move the acpi_walk_dep_device_list() call to the end of
      i2c_acpi_register_devices(), so that it is once again called *after*
      the i2c_client-s hanging of the adapter have been created.
      
      This fixes the Microsoft Surface Go 2 hanging at boot.
      
      Fixes: 21653a41
      
       ("i2c: core: Call i2c_acpi_install_space_handler() before i2c_acpi_register_devices()")
      Link: https://bugzilla.kernel.org/show_bug.cgi?id=209627
      Reported-by: default avatarRainer Finke <rainer@finke.cc>
      Reported-by: default avatarKieran Bingham <kieran.bingham@ideasonboard.com>
      Suggested-by: default avatarMaximilian Luz <luzmaximilian@gmail.com>
      Tested-by: default avatarKieran Bingham <kieran.bingham@ideasonboard.com>
      Signed-off-by: default avatarHans de Goede <hdegoede@redhat.com>
      Signed-off-by: default avatarWolfram Sang <wsa@kernel.org>
      8058d699
    • Linus Torvalds's avatar
      Merge tag 'block-5.10-2020-10-24' of git://git.kernel.dk/linux-block · d7691390
      Linus Torvalds authored
      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
    • Linus Torvalds's avatar
      Merge tag 'io_uring-5.10-2020-10-24' of git://git.kernel.dk/linux-block · af004187
      Linus Torvalds authored
      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
    • Linus Torvalds's avatar
      Merge tag 'libata-5.10-2020-10-24' of git://git.kernel.dk/linux-block · cb6b2897
      Linus Torvalds authored
      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
    • Linus Torvalds's avatar
      Merge branch 'work.misc' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs · 0eac1102
      Linus Torvalds authored
      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
    • Linus Torvalds's avatar
      Merge tag 'dma-mapping-5.10-1' of git://git.infradead.org/users/hch/dma-mapping · 1b307ac8
      Linus Torvalds authored
      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
    • Linus Torvalds's avatar
      Merge tag 'for-linus' of git://git.kernel.org/pub/scm/virt/kvm/kvm · 9bf8d8bc
      Linus Torvalds authored
      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
    • Linus Torvalds's avatar
      Merge tag 'x86_seves_fixes_for_v5.10_rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · c51ae124
      Linus Torvalds authored
      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
    • Willy Tarreau's avatar
      random32: add a selftest for the prandom32 code · c6e169bc
      Willy Tarreau authored
      
      
      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: default avatarWilly Tarreau <w@1wt.eu>
      c6e169bc
    • Willy Tarreau's avatar
      random32: add noise from network and scheduling activity · 3744741a
      Willy Tarreau authored
      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: default avatarSedat Dilek <sedat.dilek@gmail.com>
      Signed-off-by: default avatarWilly Tarreau <w@1wt.eu>
      3744741a
    • George Spelvin's avatar
      random32: make prandom_u32() output unpredictable · c51f8f88
      George Spelvin authored
      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: default avatarAmit 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: default avatarGeorge 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: default avatarWilly Tarreau <w@1wt.eu>
      c51f8f88
    • Linus Torvalds's avatar
      Merge tag 'powerpc-5.10-2' of git://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux · b6f96e75
      Linus Torvalds authored
      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