1. 11 Apr, 2020 3 commits
  2. 10 Apr, 2020 18 commits
    • Sergey Senozhatsky's avatar
      printk: queue wake_up_klogd irq_work only if per-CPU areas are ready · ab6f762f
      Sergey Senozhatsky authored
      printk_deferred(), similarly to printk_safe/printk_nmi, does not
      immediately attempt to print a new message on the consoles, avoiding
      calls into non-reentrant kernel paths, e.g. scheduler or timekeeping,
      which potentially can deadlock the system.
      
      Those printk() flavors, instead, rely on per-CPU flush irq_work to print
      messages from safer contexts.  For same reasons (recursive scheduler or
      timekeeping calls) printk() uses per-CPU irq_work in order to wake up
      user space syslog/kmsg readers.
      
      However, only printk_safe/printk_nmi do make sure that per-CPU areas
      have been initialised and that it's safe to modify per-CPU irq_work.
      This means that, for instance, should printk_deferred() be invoked "too
      early", that is before per-CPU areas are initialised, printk_deferred()
      will perform illegal per-CPU access.
      
      Lech Perczak [0] reports that after commit 1b710b1b ("char/random:
      silence a lockdep splat with printk()") user-space syslog/kmsg readers
      are not able to read new kernel messages.
      
      The reason is printk_deferred() being called too early (as was pointed
      out by Petr and John).
      
      Fix printk_deferred() and do not queue per-CPU irq_work before per-CPU
      areas are initialized.
      
      Link: https://lore.kernel.org/lkml/aa0732c6-5c4e-8a8b-a1c1-75ebe3dca05b@camlintechnologies.com/Reported-by: default avatarLech Perczak <l.perczak@camlintechnologies.com>
      Signed-off-by: default avatarSergey Senozhatsky <sergey.senozhatsky@gmail.com>
      Tested-by: default avatarJann Horn <jannh@google.com>
      Reviewed-by: default avatarPetr Mladek <pmladek@suse.com>
      Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
      Cc: Theodore Ts'o <tytso@mit.edu>
      Cc: John Ogness <john.ogness@linutronix.de>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      ab6f762f
    • Linus Torvalds's avatar
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/ebiederm/user-namespace · 87ad46e6
      Linus Torvalds authored
      Pull proc fix from Eric Biederman:
       "A brown paper bag slipped through my proc changes, and syzcaller
        caught it when the code ended up in your tree.
      
        I have opted to fix it the simplest cleanest way I know how, so there
        is no reasonable chance for the bug to repeat"
      
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/ebiederm/user-namespace:
        proc: Use a dedicated lock in struct pid
      87ad46e6
    • Linus Torvalds's avatar
      Merge tag 'pwm/for-5.7-rc1' of... · 75bdc929
      Linus Torvalds authored
      Merge tag 'pwm/for-5.7-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/thierry.reding/linux-pwm
      
      Pull pwm updates from Thierry Reding:
       "There's quite a few changes this time around.
      
        Most of these are fixes and cleanups, but there's also new chip
        support for some drivers and a bit of rework"
      
      * tag 'pwm/for-5.7-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/thierry.reding/linux-pwm: (33 commits)
        pwm: pca9685: Fix PWM/GPIO inter-operation
        pwm: Make pwm_apply_state_debug() static
        pwm: meson: Remove redundant assignment to variable fin_freq
        pwm: jz4740: Allow selection of PWM channels 0 and 1
        pwm: jz4740: Obtain regmap from parent node
        pwm: jz4740: Improve algorithm of clock calculation
        pwm: jz4740: Use clocks from TCU driver
        pwm: sun4i: Remove redundant needs_delay
        pwm: omap-dmtimer: Implement .apply callback
        pwm: omap-dmtimer: Do not disable PWM before changing period/duty_cycle
        pwm: omap-dmtimer: Fix PWM enabling sequence
        pwm: omap-dmtimer: Update description for PWM OMAP DM timer
        pwm: omap-dmtimer: Drop unused header file
        pwm: renesas-tpu: Drop confusing registered message
        pwm: renesas-tpu: Fix late Runtime PM enablement
        pwm: rcar: Fix late Runtime PM enablement
        dt-bindings: pwm: renesas-tpu: Document more R-Car Gen2 support
        pwm: meson: Fix confusing indentation
        pwm: pca9685: Use gpio core provided macro GPIO_LINE_DIRECTION_OUT
        pwm: pca9685: Replace CONFIG_PM with __maybe_unused
        ...
      75bdc929
    • Linus Torvalds's avatar
      Merge tag 'for-linus-5.7-1' of git://github.com/cminyard/linux-ipmi · 6900433e
      Linus Torvalds authored
      Pull IPMI updates from Corey Minyard:
       "Bug fixes for main IPMI driver, kcs updates
      
        A couple of bug fixes for the main IPMI driver, one functional and two
        annotations.
      
        The kcs driver has some significant updates that have been pending for
        a while, but I forgot to include in next until a week ago. But this
        code is only used by the people who are sending it to me, really, so
        it's not a big deal. I did want it to sit in next for at least a week,
        and it did result in a fix"
      
      * tag 'for-linus-5.7-1' of git://github.com/cminyard/linux-ipmi:
        ipmi: kcs: Fix aspeed_kcs_probe_of_v1()
        ipmi: Add missing annotation for ipmi_ssif_lock_cond() and ipmi_ssif_unlock_cond()
        ipmi: kcs: aspeed: Implement v2 bindings
        ipmi: kcs: Finish configuring ASPEED KCS device before enable
        dt-bindings: ipmi: aspeed: Introduce a v2 binding for KCS
        ipmi: fix hung processes in __get_guid()
        drivers: char: ipmi: ipmi_msghandler: Pass lockdep expression to RCU lists
      6900433e
    • Linus Torvalds's avatar
      Merge tag 'drm-next-2020-04-10' of git://anongit.freedesktop.org/drm/drm · 21c5b3c6
      Linus Torvalds authored
      Pull more drm fixes from Dave Airlie:
       "As expected, more fixes did turn up in the latter part of the week.
      
        The drm_local_map build regression fix is here, along with temporary
        disabling of the hugepage work due to some amdgpu related crashes.
      
        Otherwise it's just a bunch of i915, and amdgpu fixes.
      
        legacy:
         - fix drm_local_map.offset type
      
        ttm:
         - temporarily disable hugepages to debug amdgpu problems.
      
        prime:
         - fix sg extraction
      
        amdgpu:
         - Various Renoir fixes
         - Fix gfx clockgating sequence on gfx10
         - RAS fixes
         - Avoid MST property creation after registration
         - Various cursor/viewport fixes
         - Fix a confusing log message about optional firmwares
      
        i915:
         - Flush all the reloc_gpu batch (Chris)
         - Ignore readonly failures when updating relocs (Chris)
         - Fill all the unused space in the GGTT (Chris)
         - Return the right vswing table (Jose)
         - Don't enable DDI IO power on a TypeC port in TBT mode for ICL+ (Imre)
      
        analogix_dp:
         - probe fix
      
        virtio:
         - oob fix in object create"
      
      * tag 'drm-next-2020-04-10' of git://anongit.freedesktop.org/drm/drm: (34 commits)
        drm/ttm: Temporarily disable the huge_fault() callback
        drm/bridge: analogix_dp: Split bind() into probe() and real bind()
        drm/legacy: Fix type for drm_local_map.offset
        drm/amdgpu/display: fix warning when compiling without debugfs
        drm/amdgpu: unify fw_write_wait for new gfx9 asics
        drm/amd/powerplay: error out on forcing clock setting not supported
        drm/amdgpu: fix gfx hang during suspend with video playback (v2)
        drm/amd/display: Check for null fclk voltage when parsing clock table
        drm/amd/display: Acknowledge wm_optimized_required
        drm/amd/display: Make cursor source translation adjustment optional
        drm/amd/display: Calculate scaling ratios on every medium/full update
        drm/amd/display: Program viewport when source pos changes for DCN20 hw seq
        drm/amd/display: Fix incorrect cursor pos on scaled primary plane
        drm/amd/display: change default pipe_split policy for DCN1
        drm/amd/display: Translate cursor position by source rect
        drm/amd/display: Update stream adjust in dc_stream_adjust_vmin_vmax
        drm/amd/display: Avoid create MST prop after registration
        drm/amdgpu/psp: dont warn on missing optional TA's
        drm/amdgpu: update RAS related dmesg print
        drm/amdgpu: resolve mGPU RAS query instability
        ...
      21c5b3c6
    • Linus Torvalds's avatar
      Merge tag 'sound-fix-5.7-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound · 4aafdf68
      Linus Torvalds authored
      Pull sound fixes from Takashi Iwai:
       "A collection of small fixes gathered since the previous update.
      
        ALSA core:
         - Regression fix for OSS PCM emulation
      
        ASoC:
         - Trivial fixes in reg bit mask ops, DAPM, DPCM and topology
         - Lots of fixes for Intel-based devices
         - Minor fixes for AMD, STM32, Qualcomm, Realtek
      
        Others:
         - Fixes for the bugs in mixer handling in HD-audio and ice1724
           drivers that were caught by the recent kctl validator
         - New quirks for HD-audio and USB-audio
      
        Also this contains a fix for EDD firmware fix, which slipped from
        anyone's hands"
      
      * tag 'sound-fix-5.7-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound: (35 commits)
        ALSA: hda: Add driver blacklist
        ALSA: usb-audio: Add mixer workaround for TRX40 and co
        ALSA: hda/realtek - Add quirk for MSI GL63
        ALSA: ice1724: Fix invalid access for enumerated ctl items
        ALSA: hda: Fix potential access overflow in beep helper
        ASoC: cs4270: pull reset GPIO low then high
        ALSA: hda/realtek - Add HP new mute led supported for ALC236
        ALSA: hda/realtek - Add supported new mute Led for HP
        ASoC: rt5645: Add platform-data for Medion E1239T
        ASoC: Intel: bytcr_rt5640: Add quirk for MPMAN MPWIN895CL tablet
        ASoC: stm32: sai: Add missing cleanup
        ALSA: usb-audio: Add registration quirk for Kingston HyperX Cloud Alpha S
        ASoC: Intel: atom: Fix uninitialized variable compiler warning
        ASoC: Intel: atom: Check drv->lock is locked in sst_fill_and_send_cmd_unlocked
        ASoC: Intel: atom: Take the drv->lock mutex before calling sst_send_slot_map()
        ASoC: SOF: Turn "firmware boot complete" message into a dbg message
        ALSA: usb-audio: Add Pioneer DJ DJM-250MK2 quirk
        ALSA: pcm: oss: Fix regression by buffer overflow fix (again)
        ALSA: pcm: oss: Fix regression by buffer overflow fix
        edd: Use scnprintf() for avoiding potential buffer overflow
        ...
      4aafdf68
    • Linus Torvalds's avatar
      Merge tag 'scsi-misc' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi · 93f3321f
      Linus Torvalds authored
      Pull more SCSI updates from James Bottomley:
       "This is a batch of changes that didn't make it in the initial pull
        request because the lpfc series had to be rebased to redo an incorrect
        split.
      
        It's basically driver updates to lpfc, target, bnx2fc and ufs with the
        rest being minor updates except the sr_block_release one which fixes a
        use after free introduced by the removal of the global mutex in the
        first patch set"
      
      * tag 'scsi-misc' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi: (35 commits)
        scsi: core: Add DID_ALLOC_FAILURE and DID_MEDIUM_ERROR to hostbyte_table
        scsi: ufs: Use ufshcd_config_pwr_mode() when scaling gear
        scsi: bnx2fc: fix boolreturn.cocci warnings
        scsi: zfcp: use fallthrough;
        scsi: aacraid: do not overwrite retval in aac_reset_adapter()
        scsi: sr: Fix sr_block_release()
        scsi: aic7xxx: Remove more FreeBSD-specific code
        scsi: mpt3sas: Fix kernel panic observed on soft HBA unplug
        scsi: ufs: set device as active power mode after resetting device
        scsi: iscsi: Report unbind session event when the target has been removed
        scsi: lpfc: Change default SCSI LUN QD to 64
        scsi: libfc: rport state move to PLOGI if all PRLI retry exhausted
        scsi: libfc: If PRLI rejected, move rport to PLOGI state
        scsi: bnx2fc: Update the driver version to 2.12.13
        scsi: bnx2fc: Fix SCSI command completion after cleanup is posted
        scsi: bnx2fc: Process the RQE with CQE in interrupt context
        scsi: target: use the stack for XCOPY passthrough cmds
        scsi: target: increase XCOPY I/O size
        scsi: target: avoid per-loop XCOPY buffer allocations
        scsi: target: drop xcopy DISK BLOCK LENGTH debug
        ...
      93f3321f
    • Linus Torvalds's avatar
      Merge tag 'libata-5.7-2020-04-09' of git://git.kernel.dk/linux-block · f8693b3e
      Linus Torvalds authored
      Pull libata fixes from Jens Axboe:
       "A few followup changes/fixes for libata:
      
         - PMP removal fix (Kai-Heng)
      
         - Add remapped NVMe device attribute to sysfs (Kai-Heng)
      
         - Remove redundant assignment (Colin)
      
         - Add yet another Comet Lake ID (Jian-Hong)"
      
      * tag 'libata-5.7-2020-04-09' of git://git.kernel.dk/linux-block:
        ahci: Add Intel Comet Lake PCH RAID PCI ID
        ata: ahci: Add sysfs attribute to show remapped NVMe device count
        ata: ahci-imx: remove redundant assignment to ret
        libata: Return correct status in sata_pmp_eh_recover_pm() when ATA_DFLAG_DETACH is set
      f8693b3e
    • Linus Torvalds's avatar
      Merge tag 'block-5.7-2020-04-10' of git://git.kernel.dk/linux-block · 8df2a0a6
      Linus Torvalds authored
      Pull block fixes from Jens Axboe:
       "Here's a set of fixes that should go into this merge window. This
        contains:
      
         - NVMe pull request from Christoph with various fixes
      
         - Better discard support for loop (Evan)
      
         - Only call ->commit_rqs() if we have queued IO (Keith)
      
         - blkcg offlining fixes (Tejun)
      
         - fix (and fix the fix) for busy partitions"
      
      * tag 'block-5.7-2020-04-10' of git://git.kernel.dk/linux-block:
        block: fix busy device checking in blk_drop_partitions again
        block: fix busy device checking in blk_drop_partitions
        nvmet-rdma: fix double free of rdma queue
        blk-mq: don't commit_rqs() if none were queued
        nvme-fc: Revert "add module to ops template to allow module references"
        nvme: fix deadlock caused by ANA update wrong locking
        nvmet-rdma: fix bonding failover possible NULL deref
        loop: Better discard support for block devices
        loop: Report EOPNOTSUPP properly
        nvmet: fix NULL dereference when removing a referral
        nvme: inherit stable pages constraint in the mpath stack device
        blkcg: don't offline parent blkcg first
        blkcg: rename blkcg->cgwb_refcnt to ->online_pin and always use it
        nvme-tcp: fix possible crash in recv error flow
        nvme-tcp: don't poll a non-live queue
        nvme-tcp: fix possible crash in write_zeroes processing
        nvmet-fc: fix typo in comment
        nvme-rdma: Replace comma with a semicolon
        nvme-fcloop: fix deallocation of working context
        nvme: fix compat address handling in several ioctls
      8df2a0a6
    • Linus Torvalds's avatar
      Merge tag 'io_uring-5.7-2020-04-09' of git://git.kernel.dk/linux-block · 172edde9
      Linus Torvalds authored
      Pull io_uring fixes from Jens Axboe:
       "Here's a set of fixes that either weren't quite ready for the first,
        or came about from some intensive testing on memcached with 350K+
        sockets.
      
        Summary:
      
         - Fixes for races or deadlocks around poll handling
      
         - Don't double account fixed files against RLIMIT_NOFILE
      
         - IORING_OP_OPENAT LFS fix
      
         - Poll retry handling (Bijan)
      
         - Missing finish_wait() for SQPOLL (Hillf)
      
         - Cleanup/split of io_kiocb alloc vs ctx references (Pavel)
      
         - Fixed file unregistration and init fixes (Xiaoguang)
      
         - Various little fixes (Xiaoguang, Pavel, Colin)"
      
      * tag 'io_uring-5.7-2020-04-09' of git://git.kernel.dk/linux-block:
        io_uring: punt final io_ring_ctx wait-and-free to workqueue
        io_uring: fix fs cleanup on cqe overflow
        io_uring: don't read user-shared sqe flags twice
        io_uring: remove req init from io_get_req()
        io_uring: alloc req only after getting sqe
        io_uring: simplify io_get_sqring
        io_uring: do not always copy iovec in io_req_map_rw()
        io_uring: ensure openat sets O_LARGEFILE if needed
        io_uring: initialize fixed_file_data lock
        io_uring: remove redundant variable pointer nxt and io_wq_assign_next call
        io_uring: fix ctx refcounting in io_submit_sqes()
        io_uring: process requests completed with -EAGAIN on poll list
        io_uring: remove bogus RLIMIT_NOFILE check in file registration
        io_uring: use io-wq manager as backup task if task is exiting
        io_uring: grab task reference for poll requests
        io_uring: retry poll if we got woken with non-matching mask
        io_uring: add missing finish_wait() in io_sq_thread()
        io_uring: refactor file register/unregister/update handling
      172edde9
    • Linus Torvalds's avatar
      Merge tag 'xfs-5.7-merge-12' of git://git.kernel.org/pub/scm/fs/xfs/xfs-linux · 8c3c0743
      Linus Torvalds authored
      Pull more xfs updates from Darrick Wong:
       "As promised last week, this batch changes how xfs interacts with
        memory reclaim; how the log batches and throttles log items; how hard
        writes near ENOSPC will try to squeeze more space out of the
        filesystem; and hopefully fix the last of the umount hangs after a
        catastrophic failure.
      
        Summary:
      
         - Validate the realtime geometry in the superblock when mounting
      
         - Refactor a bunch of tricky flag handling in the log code
      
         - Flush the CIL more judiciously so that we don't wait until there
           are millions of log items consuming a lot of memory.
      
         - Throttle transaction commits to prevent the xfs frontend from
           flooding the CIL with too many log items.
      
         - Account metadata buffers correctly for memory reclaim.
      
         - Mark slabs properly for memory reclaim. These should help reclaim
           run more effectively when XFS is using a lot of memory.
      
         - Don't write a garbage log record at unmount time if we're trying to
           trigger summary counter recalculation at next mount.
      
         - Don't block the AIL on locked dquot/inode buffers; instead trigger
           its backoff mechanism to give the lock holder a chance to finish
           up.
      
         - Ratelimit writeback flushing when buffered writes encounter ENOSPC.
      
         - Other minor cleanups.
      
         - Make reflink a synchronous operation when the fs is mounted with
           wsync or sync, which means that now we force the log to disk to
           record the changes"
      
      * tag 'xfs-5.7-merge-12' of git://git.kernel.org/pub/scm/fs/xfs/xfs-linux: (26 commits)
        xfs: reflink should force the log out if mounted with wsync
        xfs: factor out a new xfs_log_force_inode helper
        xfs: fix inode number overflow in ifree cluster helper
        xfs: remove redundant variable assignment in xfs_symlink()
        xfs: ratelimit inode flush on buffered write ENOSPC
        xfs: return locked status of inode buffer on xfsaild push
        xfs: trylock underlying buffer on dquot flush
        xfs: remove unnecessary ternary from xfs_create
        xfs: don't write a corrupt unmount record to force summary counter recalc
        xfs: factor inode lookup from xfs_ifree_cluster
        xfs: tail updates only need to occur when LSN changes
        xfs: factor common AIL item deletion code
        xfs: correctly acount for reclaimable slabs
        xfs: Improve metadata buffer reclaim accountability
        xfs: don't allow log IO to be throttled
        xfs: Throttle commits on delayed background CIL push
        xfs: Lower CIL flush limit for large logs
        xfs: remove some stale comments from the log code
        xfs: refactor unmount record writing
        xfs: merge xlog_commit_record with xlog_write_done
        ...
      8c3c0743
    • Linus Torvalds's avatar
      Merge tag 'acpi-5.7-rc1-3' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm · d3e5e977
      Linus Torvalds authored
      Pull more ACPI updates from Rafael Wysocki:
       "These prevent a false-positive static checker warning from triggering
        in the ACPI EC driver (Rafael Wysocki), fix white space in an ACPI
        document (Vilhelm Prytz) and add static annotation to one variable
        (Jason Yan)"
      
      * tag 'acpi-5.7-rc1-3' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm:
        ACPI, x86/boot: make acpi_nobgrt static
        Documentation: firmware-guide: ACPI: fix table alignment in namespace.rst
        ACPI: EC: Fix up fast path check in acpi_ec_add()
      d3e5e977
    • Linus Torvalds's avatar
      Merge tag 'pm-5.7-rc1-3' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm · bbec2a2d
      Linus Torvalds authored
      Pull more power management updates from Rafael Wysocki:
       "Rework compat ioctl handling in the user space hibernation interface
        (Christoph Hellwig) and fix a typo in a function name in the cpuidle
        haltpoll driver (Yihao Wu)"
      
      * tag 'pm-5.7-rc1-3' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm:
        cpuidle-haltpoll: Fix small typo
        PM / sleep: handle the compat case in snapshot_set_swap_area()
        PM / sleep: move SNAPSHOT_SET_SWAP_AREA handling into a helper
      bbec2a2d
    • Linus Torvalds's avatar
      Merge tag 's390-5.7-2' of git://git.kernel.org/pub/scm/linux/kernel/git/s390/linux · 523a05fc
      Linus Torvalds authored
      Pull more s390 updates from Vasily Gorbik:
       "Second round of s390 fixes and features for 5.7:
      
         - The rest of fallthrough; annotations conversion
      
         - Couple of fixes for ADD uevents in the common I/O layer
      
         - Minor refactoring of the queued direct I/O code"
      
      * tag 's390-5.7-2' of git://git.kernel.org/pub/scm/linux/kernel/git/s390/linux:
        s390/cio: generate delayed uevent for vfio-ccw subchannels
        s390/cio: avoid duplicated 'ADD' uevents
        s390/qdio: clear DSCI early for polling drivers
        s390/qdio: inline shared_ind()
        s390/qdio: remove cdev from init_data
        s390/qdio: allow for non-contiguous SBAL array in init_data
        zfcp: inline zfcp_qdio_setup_init_data()
        s390/qdio: cleanly split alloc and establish
        s390/mm: use fallthrough;
      523a05fc
    • Christoph Hellwig's avatar
      block: fix busy device checking in blk_drop_partitions again · cb6b771b
      Christoph Hellwig authored
      The previous fix had an off by one in the bd_openers checking, counting
      the callers blkdev_get.
      
      Fixes: d3ef5536 ("block: fix busy device checking in blk_drop_partitions")
      Reported-by: default avatarQian Cai <cai@lca.pw>
      Signed-off-by: default avatarChristoph Hellwig <hch@lst.de>
      Tested-by: default avatarQian Cai <cai@lca.pw>
      Signed-off-by: default avatarJens Axboe <axboe@kernel.dk>
      cb6b771b
    • Rafael J. Wysocki's avatar
      Merge branch 'pm-cpuidle' · a31434bc
      Rafael J. Wysocki authored
      * pm-cpuidle:
        cpuidle-haltpoll: Fix small typo
      a31434bc
    • Rafael J. Wysocki's avatar
      Merge branches 'acpi-ec' and 'acpi-x86' · 0214da7c
      Rafael J. Wysocki authored
      * acpi-ec:
        ACPI: EC: Fix up fast path check in acpi_ec_add()
      
      * acpi-x86:
        ACPI, x86/boot: make acpi_nobgrt static
      0214da7c
    • Jens Axboe's avatar
      io_uring: punt final io_ring_ctx wait-and-free to workqueue · 85faa7b8
      Jens Axboe authored
      We can't reliably wait in io_ring_ctx_wait_and_kill(), since the
      task_works list isn't ordered (in fact it's LIFO ordered). We could
      either fix this with a separate task_works list for io_uring work, or
      just punt the wait-and-free to async context. This ensures that
      task_work that comes in while we're shutting down is processed
      correctly. If we don't go async, we could have work past the fput()
      work for the ring that depends on work that won't be executed until
      after we're done with the wait-and-free. But as this operation is
      blocking, it'll never get a chance to run.
      
      This was reproduced with hundreds of thousands of sockets running
      memcached, haven't been able to reproduce this synthetically.
      Reported-by: default avatarDan Melnic <dmm@fb.com>
      Signed-off-by: default avatarJens Axboe <axboe@kernel.dk>
      85faa7b8
  3. 09 Apr, 2020 19 commits
    • Dave Airlie's avatar
      Merge tag 'amd-drm-fixes-5.7-2020-04-08' of git://people.freedesktop.org/~agd5f/linux into drm-next · 74bd4f0c
      Dave Airlie authored
      amd-drm-fixes-5.7-2020-04-08:
      
      amdgpu:
      - Various Renoir fixes
      - Fix gfx clockgating sequence on gfx10
      - RAS fixes
      - Avoid MST property creation after registration
      - Various cursor/viewport fixes
      - Fix a confusing log message about optional firmwares
      Signed-off-by: default avatarDave Airlie <airlied@redhat.com>
      From: Alex Deucher <alexdeucher@gmail.com>
      Link: https://patchwork.freedesktop.org/patch/msgid/20200408222240.3942-1-alexander.deucher@amd.com
      74bd4f0c
    • Dave Airlie's avatar
      Merge tag 'drm-intel-next-fixes-2020-04-08' of... · 1287c880
      Dave Airlie authored
      Merge tag 'drm-intel-next-fixes-2020-04-08' of git://anongit.freedesktop.org/drm/drm-intel into drm-next
      
      - Flush all the reloc_gpu batch (Chris)
      - Ignore readonly failures when updating relocs (Chris)
      - Fill all the unused space in the GGTT (Chris)
      - Return the right vswing table (Jose)
      - Don't enable DDI IO power on a TypeC port in TBT mode for ICL+ (Imre)
      Signed-off-by: default avatarDave Airlie <airlied@redhat.com>
      
      From: Rodrigo Vivi <rodrigo.vivi@intel.com>
      Link: https://patchwork.freedesktop.org/patch/msgid/20200408215952.GA1623934@intel.com
      1287c880
    • Thomas Hellstrom (VMware)'s avatar
      drm/ttm: Temporarily disable the huge_fault() callback · c445c166
      Thomas Hellstrom (VMware) authored
      With amdgpu and CONFIG_TRANSPARENT_HUGEPAGE_ALWAYS=y, there are
      errors like:
      BUG: non-zero pgtables_bytes on freeing mm
      and:
      BUG: Bad rss-counter state
      with TTM transparent huge-pages.
      Until we've figured out what other TTM drivers do differently compared to
      vmwgfx, disable the huge_fault() callback, eliminating transhuge
      page-table entries.
      
      Cc: Christian König <christian.koenig@amd.com>
      Signed-off-by: default avatarThomas Hellstrom (VMware) <thomas_os@shipmail.org>
      Reported-by: default avatarAlex Xu (Hello71) <alex_y_xu@yahoo.ca>
      Tested-by: default avatarAlex Xu (Hello71) <alex_y_xu@yahoo.ca>
      Acked-by: default avatarChristian König <christian.koenig@amd.com>
      Signed-off-by: default avatarDave Airlie <airlied@redhat.com>
      Link: https://patchwork.freedesktop.org/patch/msgid/20200409164925.11912-1-thomas_os@shipmail.org
      c445c166
    • Dave Airlie's avatar
      Merge tag 'drm-misc-next-fixes-2020-04-09' of... · cb6d4066
      Dave Airlie authored
      Merge tag 'drm-misc-next-fixes-2020-04-09' of git://anongit.freedesktop.org/drm/drm-misc into drm-next
      
      A few DMA-related fixes, an OOB fix for virtio and a probe-related fix for
      analogix_dp
      Signed-off-by: default avatarDave Airlie <airlied@redhat.com>
      
      From: Maxime Ripard <maxime@cerno.tech>
      Link: https://patchwork.freedesktop.org/patch/msgid/20200409091424.cfpqqbqjxtkgnfme@gilmour.lan
      cb6d4066
    • Linus Torvalds's avatar
      Merge tag 'modules-for-v5.7' of git://git.kernel.org/pub/scm/linux/kernel/git/jeyu/linux · c0cc2711
      Linus Torvalds authored
      Pull module updates from Jessica Yu:
       "Only a small cleanup this time around: a trivial conversion of
        zero-length arrays to flexible arrays"
      
      * tag 'modules-for-v5.7' of git://git.kernel.org/pub/scm/linux/kernel/git/jeyu/linux:
        kernel: module: Replace zero-length array with flexible-array member
      c0cc2711
    • Linus Torvalds's avatar
      Merge tag 'arm64-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux · 87ebc45d
      Linus Torvalds authored
      Pull arm64 fixes from Catalin Marinas:
      
       - Ensure that the compiler and linker versions are aligned so that ld
         doesn't complain about not understanding a .note.gnu.property section
         (emitted when pointer authentication is enabled).
      
       - Force -mbranch-protection=none when the feature is not enabled, in
         case a compiler may choose a different default value.
      
       - Remove CONFIG_DEBUG_ALIGN_RODATA. It was never in defconfig and
         rarely enabled.
      
       - Fix checking 16-bit Thumb-2 instructions checking mask in the
         emulation of the SETEND instruction (it could match the bottom half
         of a 32-bit Thumb-2 instruction).
      
      * tag 'arm64-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux:
        arm64: armv8_deprecated: Fix undef_hook mask for thumb setend
        arm64: remove CONFIG_DEBUG_ALIGN_RODATA feature
        arm64: Always force a branch protection mode when the compiler has one
        arm64: Kconfig: ptrauth: Add binutils version check to fix mismatch
        init/kconfig: Add LD_VERSION Kconfig
      87ebc45d
    • Linus Torvalds's avatar
      Merge tag 'powerpc-5.7-2' of git://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux · e4da01d8
      Linus Torvalds authored
      Pull more powerpc updates from Michael Ellerman:
       "The bulk of this is the series to make CONFIG_COMPAT user-selectable,
        it's been around for a long time but was blocked behind the
        syscall-in-C series.
      
        Plus there's also a few fixes and other minor things.
      
        Summary:
      
         - A fix for a crash in machine check handling on pseries (ie. guests)
      
         - A small series to make it possible to disable CONFIG_COMPAT, and
           turn it off by default for ppc64le where it's not used.
      
         - A few other miscellaneous fixes and small improvements.
      
        Thanks to: Alexey Kardashevskiy, Anju T Sudhakar, Arnd Bergmann,
        Christophe Leroy, Dan Carpenter, Ganesh Goudar, Geert Uytterhoeven,
        Geoff Levand, Mahesh Salgaonkar, Markus Elfring, Michal Suchanek,
        Nicholas Piggin, Stephen Boyd, Wen Xiong"
      
      * tag 'powerpc-5.7-2' of git://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux:
        selftests/powerpc: Always build the tm-poison test 64-bit
        powerpc: Improve ppc_save_regs()
        Revert "powerpc/64: irq_work avoid interrupt when called with hardware irqs enabled"
        powerpc/time: Replace <linux/clk-provider.h> by <linux/of_clk.h>
        powerpc/pseries/ddw: Extend upper limit for huge DMA window for persistent memory
        powerpc/perf: split callchain.c by bitness
        powerpc/64: Make COMPAT user-selectable disabled on littleendian by default.
        powerpc/64: make buildable without CONFIG_COMPAT
        powerpc/perf: consolidate valid_user_sp -> invalid_user_sp
        powerpc/perf: consolidate read_user_stack_32
        powerpc: move common register copy functions from signal_32.c to signal.c
        powerpc: Add back __ARCH_WANT_SYS_LLSEEK macro
        powerpc/ps3: Set CONFIG_UEVENT_HELPER=y in ps3_defconfig
        powerpc/ps3: Remove an unneeded NULL check
        powerpc/ps3: Remove duplicate error message
        powerpc/powernv: Re-enable imc trace-mode in kernel
        powerpc/perf: Implement a global lock to avoid races between trace, core and thread imc events.
        powerpc/pseries: Fix MCE handling on pseries
        selftests/eeh: Skip ahci adapters
        powerpc/64s: Fix doorbell wakeup msgclr optimisation
      e4da01d8
    • Linus Torvalds's avatar
      Merge branch 'for-next' of git://git.kernel.org/pub/scm/linux/kernel/git/gerg/m68knommu · 6cff4821
      Linus Torvalds authored
      Pull m68knommu update from Greg Ungerer:
       "Only a single commit, to remove all use of the obsolete setup_irq()
        calls within the m68knommu architecture code"
      
      * 'for-next' of git://git.kernel.org/pub/scm/linux/kernel/git/gerg/m68knommu:
        m68k: Replace setup_irq() by request_irq()
      6cff4821
    • Linus Torvalds's avatar
      Merge tag 'riscv-for-linus-5.7' of git://git.kernel.org/pub/scm/linux/kernel/git/riscv/linux · eab40026
      Linus Torvalds authored
      Pull RISC-V updates from Palmer Dabbelt:
       "This contains a handful of new features:
      
         - Partial support for the Kendryte K210.
      
           There are still a few outstanding issues that I have patches for,
           but I don't actually have a board to test them so they're not
           included yet.
      
         - SBI v0.2 support.
      
         - Fixes to support for building with LLVM-based toolchains. The
           resulting images are known not to boot yet.
      
        I don't anticipate a part two, but I'll probably have something early
        in the RCs to finish up the K210 support"
      
      * tag 'riscv-for-linus-5.7' of git://git.kernel.org/pub/scm/linux/kernel/git/riscv/linux: (38 commits)
        riscv: create a loader.bin boot image for Kendryte SoC
        riscv: Kendryte K210 default config
        riscv: Add Kendryte K210 device tree
        riscv: Select required drivers for Kendryte SOC
        riscv: Add Kendryte K210 SoC support
        riscv: Add SOC early init support
        riscv: Unaligned load/store handling for M_MODE
        RISC-V: Support cpu hotplug
        RISC-V: Add supported for ordered booting method using HSM
        RISC-V: Add SBI HSM extension definitions
        RISC-V: Export SBI error to linux error mapping function
        RISC-V: Add cpu_ops and modify default booting method
        RISC-V: Move relocate and few other functions out of __init
        RISC-V: Implement new SBI v0.2 extensions
        RISC-V: Introduce a new config for SBI v0.1
        RISC-V: Add SBI v0.2 extension definitions
        RISC-V: Add basic support for SBI v0.2
        RISC-V: Mark existing SBI as 0.1 SBI.
        riscv: Use macro definition instead of magic number
        riscv: Add support to dump the kernel page tables
        ...
      eab40026
    • Eric W. Biederman's avatar
      proc: Use a dedicated lock in struct pid · 63f818f4
      Eric W. Biederman authored
      syzbot wrote:
      > ========================================================
      > WARNING: possible irq lock inversion dependency detected
      > 5.6.0-syzkaller #0 Not tainted
      > --------------------------------------------------------
      > swapper/1/0 just changed the state of lock:
      > ffffffff898090d8 (tasklist_lock){.+.?}-{2:2}, at: send_sigurg+0x9f/0x320 fs/fcntl.c:840
      > but this lock took another, SOFTIRQ-unsafe lock in the past:
      >  (&pid->wait_pidfd){+.+.}-{2:2}
      >
      >
      > and interrupts could create inverse lock ordering between them.
      >
      >
      > other info that might help us debug this:
      >  Possible interrupt unsafe locking scenario:
      >
      >        CPU0                    CPU1
      >        ----                    ----
      >   lock(&pid->wait_pidfd);
      >                                local_irq_disable();
      >                                lock(tasklist_lock);
      >                                lock(&pid->wait_pidfd);
      >   <Interrupt>
      >     lock(tasklist_lock);
      >
      >  *** DEADLOCK ***
      >
      > 4 locks held by swapper/1/0:
      
      The problem is that because wait_pidfd.lock is taken under the tasklist
      lock.  It must always be taken with irqs disabled as tasklist_lock can be
      taken from interrupt context and if wait_pidfd.lock was already taken this
      would create a lock order inversion.
      
      Oleg suggested just disabling irqs where I have added extra calls to
      wait_pidfd.lock.  That should be safe and I think the code will eventually
      do that.  It was rightly pointed out by Christian that sharing the
      wait_pidfd.lock was a premature optimization.
      
      It is also true that my pre-merge window testing was insufficient.  So
      remove the premature optimization and give struct pid a dedicated lock of
      it's own for struct pid things.  I have verified that lockdep sees all 3
      paths where we take the new pid->lock and lockdep does not complain.
      
      It is my current day dream that one day pid->lock can be used to guard the
      task lists as well and then the tasklist_lock won't need to be held to
      deliver signals.  That will require taking pid->lock with irqs disabled.
      Acked-by: default avatarChristian Brauner <christian.brauner@ubuntu.com>
      Link: https://lore.kernel.org/lkml/00000000000011d66805a25cd73f@google.com/
      Cc: Oleg Nesterov <oleg@redhat.com>
      Cc: Christian Brauner <christian.brauner@ubuntu.com>
      Reported-by: syzbot+343f75cdeea091340956@syzkaller.appspotmail.com
      Reported-by: syzbot+832aabf700bc3ec920b9@syzkaller.appspotmail.com
      Reported-by: syzbot+f675f964019f884dbd0f@syzkaller.appspotmail.com
      Reported-by: syzbot+a9fb1457d720a55d6dc5@syzkaller.appspotmail.com
      Fixes: 7bc3e6e5 ("proc: Use a list of inodes to flush from proc")
      Signed-off-by: default avatar"Eric W. Biederman" <ebiederm@xmission.com>
      63f818f4
    • Pavel Begunkov's avatar
      io_uring: fix fs cleanup on cqe overflow · c398ecb3
      Pavel Begunkov authored
      If completion queue overflow occurs, __io_cqring_fill_event() will
      update req->cflags, which is in a union with req->work and happens to
      be aliased to req->work.fs. Following io_free_req() ->
      io_req_work_drop_env() may get a bunch of different problems (miscount
      fs->users, segfault, etc) on cleaning @fs.
      Signed-off-by: default avatarPavel Begunkov <asml.silence@gmail.com>
      Signed-off-by: default avatarJens Axboe <axboe@kernel.dk>
      c398ecb3
    • Jian-Hong Pan's avatar
      ahci: Add Intel Comet Lake PCH RAID PCI ID · 7667e63c
      Jian-Hong Pan authored
      Intel Comet Lake should use the default LPM policy for mobile chipsets.
      So, add the PCI ID to the driver list of supported devices.
      Signed-off-by: default avatarJian-Hong Pan <jian-hong@endlessm.com>
      Signed-off-by: default avatarJens Axboe <axboe@kernel.dk>
      7667e63c
    • Juergen Gross's avatar
      x86/xen: fix booting 32-bit pv guest · d6f34f4c
      Juergen Gross authored
      Commit 2f62f36e ("x86/xen: Make the boot CPU idle task reliable")
      introduced a regression for booting 32 bit Xen PV guests: the address
      of the initial stack needs to be a virtual one.
      
      Fixes: 2f62f36e ("x86/xen: Make the boot CPU idle task reliable")
      Signed-off-by: default avatarJuergen Gross <jgross@suse.com>
      Reviewed-by: default avatarBoris Ostrovsky <boris.ostrovsky@oracle.com>
      Link: https://lore.kernel.org/r/20200409070001.16675-1-jgross@suse.comSigned-off-by: default avatarJuergen Gross <jgross@suse.com>
      d6f34f4c
    • Marek Szyprowski's avatar
      drm/bridge: analogix_dp: Split bind() into probe() and real bind() · 152cce00
      Marek Szyprowski authored
      Analogix_dp driver acquires all its resources in the ->bind() callback,
      what is a bit against the component driver based approach, where the
      driver initialization is split into a probe(), where all resources are
      gathered, and a bind(), where all objects are created and a compound
      driver is initialized.
      
      Extract all the resource related operations to analogix_dp_probe() and
      analogix_dp_remove(), then call them before/after registration of the
      device components from the main Exynos DP and Rockchip DP drivers. Also
      move the plat_data initialization to the probe() to make it available for
      the analogix_dp_probe() function.
      
      This fixes the multiple calls to the bind() of the DRM compound driver
      when the DP PHY driver is not yet loaded/probed:
      
      [drm] Exynos DRM: using 14400000.fimd device for DMA mapping operations
      exynos-drm exynos-drm: bound 14400000.fimd (ops fimd_component_ops [exynosdrm])
      exynos-drm exynos-drm: bound 14450000.mixer (ops mixer_component_ops [exynosdrm])
      exynos-dp 145b0000.dp-controller: no DP phy configured
      exynos-drm exynos-drm: failed to bind 145b0000.dp-controller (ops exynos_dp_ops [exynosdrm]): -517
      exynos-drm exynos-drm: master bind failed: -517
      ...
      [drm] Exynos DRM: using 14400000.fimd device for DMA mapping operations
      exynos-drm exynos-drm: bound 14400000.fimd (ops hdmi_enable [exynosdrm])
      exynos-drm exynos-drm: bound 14450000.mixer (ops hdmi_enable [exynosdrm])
      exynos-drm exynos-drm: bound 145b0000.dp-controller (ops hdmi_enable [exynosdrm])
      exynos-drm exynos-drm: bound 14530000.hdmi (ops hdmi_enable [exynosdrm])
      [drm] Supports vblank timestamp caching Rev 2 (21.10.2013).
      Console: switching to colour frame buffer device 170x48
      exynos-drm exynos-drm: fb0: exynosdrmfb frame buffer device
      [drm] Initialized exynos 1.1.0 20180330 for exynos-drm on minor 1
      ...
      Signed-off-by: default avatarMarek Szyprowski <m.szyprowski@samsung.com>
      Acked-by: default avatarAndy Yan <andy.yan@rock-chips.com>
      Reviewed-by: default avatarAndrzej Hajda <a.hajda@samsung.com>
      Signed-off-by: default avatarAndrzej Hajda <a.hajda@samsung.com>
      Link: https://patchwork.freedesktop.org/patch/msgid/20200310103427.26048-1-m.szyprowski@samsung.com
      (cherry picked from commit 83a19677)
      Signed-off-by: default avatarMaxime Ripard <maxime@cerno.tech>
      152cce00
    • Chris Wilson's avatar
      drm/legacy: Fix type for drm_local_map.offset · b2ecb89c
      Chris Wilson authored
      drm_local_map.offset is not only used for resource_size_t but also
      dma_addr_t which may be of different sizes.
      Reported-by: default avatarNathan Chancellor <natechancellor@gmail.com>
      Fixes: 8e4ff9b5 ("drm: Remove the dma_alloc_coherent wrapper for internal usage")
      Tested-by: Nathan Chancellor <natechancellor@gmail.com> # build
      Signed-off-by: default avatarChris Wilson <chris@chris-wilson.co.uk>
      Cc: Dave Airlie <airlied@gmail.com>
      Cc: Nathan Chancellor <natechancellor@gmail.com>
      Cc: Linus Torvalds <torvalds@linux-foundation.org>
      Signed-off-by: default avatarDaniel Vetter <daniel.vetter@ffwll.ch>
      Link: https://patchwork.freedesktop.org/patch/msgid/20200402215926.30714-1-chris@chris-wilson.co.uk
      b2ecb89c
    • Linus Torvalds's avatar
      Merge tag '9p-for-5.7-2' of git://github.com/martinetd/linux · 5d30bcac
      Linus Torvalds authored
      Pull 9p documentation update from Dominique Martinet:
       "Document the new O_NONBLOCK short read behavior"
      
      * tag '9p-for-5.7-2' of git://github.com/martinetd/linux:
        9p: document short read behaviour with O_NONBLOCK
      5d30bcac
    • Linus Torvalds's avatar
      Merge tag 'ceph-for-5.7-rc1' of git://github.com/ceph/ceph-client · fcc95f06
      Linus Torvalds authored
      Pull ceph updates from Ilya Dryomov:
       "The main items are:
      
         - support for asynchronous create and unlink (Jeff Layton).
      
           Creates and unlinks are satisfied locally, without waiting for a
           reply from the MDS, provided the client has been granted
           appropriate caps (new in v15.y.z ("Octopus") release). This can be
           a big help for metadata heavy workloads such as tar and rsync.
           Opt-in with the new nowsync mount option.
      
         - multiple blk-mq queues for rbd (Hannes Reinecke and myself).
      
           When the driver was converted to blk-mq, we settled on a single
           blk-mq queue because of a global lock in libceph and some other
           technical debt. These have since been addressed, so allocate a
           queue per CPU to enhance parallelism.
      
         - don't hold onto caps that aren't actually needed (Zheng Yan).
      
           This has been our long-standing behavior, but it causes issues with
           some active/standby applications (synchronous I/O, stalls if the
           standby goes down, etc).
      
         - .snap directory timestamps consistent with ceph-fuse (Luis
           Henriques)"
      
      * tag 'ceph-for-5.7-rc1' of git://github.com/ceph/ceph-client: (49 commits)
        ceph: fix snapshot directory timestamps
        ceph: wait for async creating inode before requesting new max size
        ceph: don't skip updating wanted caps when cap is stale
        ceph: request new max size only when there is auth cap
        ceph: cleanup return error of try_get_cap_refs()
        ceph: return ceph_mdsc_do_request() errors from __get_parent()
        ceph: check all mds' caps after page writeback
        ceph: update i_requested_max_size only when sending cap msg to auth mds
        ceph: simplify calling of ceph_get_fmode()
        ceph: remove delay check logic from ceph_check_caps()
        ceph: consider inode's last read/write when calculating wanted caps
        ceph: always renew caps if mds_wanted is insufficient
        ceph: update dentry lease for async create
        ceph: attempt to do async create when possible
        ceph: cache layout in parent dir on first sync create
        ceph: add new MDS req field to hold delegated inode number
        ceph: decode interval_sets for delegated inos
        ceph: make ceph_fill_inode non-static
        ceph: perform asynchronous unlink if we have sufficient caps
        ceph: don't take refs to want mask unless we have all bits
        ...
      fcc95f06
    • Linus Torvalds's avatar
      Merge tag 'ovl-update-5.7' of git://git.kernel.org/pub/scm/linux/kernel/git/mszeredi/vfs · c6b80eb8
      Linus Torvalds authored
      Pull overlayfs update from Miklos Szeredi:
      
       - Fix failure to copy-up files from certain NFSv4 mounts
      
       - Sort out inconsistencies between st_ino and i_ino (used in /proc/locks)
      
       - Allow consistent (POSIX-y) inode numbering in more cases
      
       - Allow virtiofs to be used as upper layer
      
       - Miscellaneous cleanups and fixes
      
      * tag 'ovl-update-5.7' of git://git.kernel.org/pub/scm/linux/kernel/git/mszeredi/vfs:
        ovl: document xino expected behavior
        ovl: enable xino automatically in more cases
        ovl: avoid possible inode number collisions with xino=on
        ovl: use a private non-persistent ino pool
        ovl: fix WARN_ON nlink drop to zero
        ovl: fix a typo in comment
        ovl: replace zero-length array with flexible-array member
        ovl: ovl_obtain_alias(): don't call d_instantiate_anon() for old
        ovl: strict upper fs requirements for remote upper fs
        ovl: check if upper fs supports RENAME_WHITEOUT
        ovl: allow remote upper
        ovl: decide if revalidate needed on a per-dentry basis
        ovl: separate detection of remote upper layer from stacked overlay
        ovl: restructure dentry revalidation
        ovl: ignore failure to copy up unknown xattrs
        ovl: document permission model
        ovl: simplify i_ino initialization
        ovl: factor out helper ovl_get_root()
        ovl: fix out of date comment and unreachable code
        ovl: fix value of i_ino for lower hardlink corner case
      c6b80eb8
    • Linus Torvalds's avatar
      Merge tag 'iomap-5.7-merge-3' of git://git.kernel.org/pub/scm/fs/xfs/xfs-linux · 9744b923
      Linus Torvalds authored
      Pull iomap fix from Darrick Wong:
       "Fix a problem in readahead where we can crash if we can't allocate a
        full bio due to GFP_NORETRY"
      
      * tag 'iomap-5.7-merge-3' of git://git.kernel.org/pub/scm/fs/xfs/xfs-linux:
        iomap: Handle memory allocation failure in readahead
      9744b923