1. Dec 28, 2023
    • David Howells's avatar
      netfs: Prep to use folio->private for write grouping and streaming write · 9ebff83e
      David Howells authored
      
      
      Prepare to use folio->private to hold information write grouping and
      streaming write.  These are implemented in the same commit as they both
      make use of folio->private and will be both checked at the same time in
      several places.
      
      "Write grouping" involves ordering the writeback of groups of writes, such
      as is needed for ceph snaps.  A group is represented by a
      filesystem-supplied object which must contain a netfs_group struct.  This
      contains just a refcount and a pointer to a destructor.
      
      "Streaming write" is the storage of data in folios that are marked dirty,
      but not uptodate, to avoid unnecessary reads of data.  This is represented
      by a netfs_folio struct.  This contains the offset and length of the
      modified region plus the otherwise displaced write grouping pointer.
      
      The way folio->private is multiplexed is:
      
       (1) If private is NULL then neither is in operation on a dirty folio.
      
       (2) If private is set, with bit 0 clear, then this points to a group.
      
       (3) If private is set, with bit 0 set, then this points to a netfs_folio
           struct (with bit 0 AND'ed out).
      
      Signed-off-by: default avatarDavid Howells <dhowells@redhat.com>
      Reviewed-by: default avatarJeff Layton <jlayton@kernel.org>
      cc: linux-cachefs@redhat.com
      cc: linux-fsdevel@vger.kernel.org
      cc: linux-mm@kvack.org
      9ebff83e
    • David Howells's avatar
      netfs: Make the refcounting of netfs_begin_read() easier to use · 4fcccc38
      David Howells authored
      
      
      Make the refcounting of netfs_begin_read() easier to use by not eating the
      caller's ref on the netfs_io_request it's given.  This makes it easier to
      use when we need to look in the request struct after.
      
      Signed-off-by: default avatarDavid Howells <dhowells@redhat.com>
      Reviewed-by: default avatarJeff Layton <jlayton@kernel.org>
      cc: linux-cachefs@redhat.com
      cc: linux-fsdevel@vger.kernel.org
      cc: linux-mm@kvack.org
      4fcccc38
    • David Howells's avatar
      netfs: Make netfs_put_request() handle a NULL pointer · 6ba22d8d
      David Howells authored
      
      
      Make netfs_put_request() just return if given a NULL request pointer.
      
      Signed-off-by: default avatarDavid Howells <dhowells@redhat.com>
      Reviewed-by: default avatarJeff Layton <jlayton@kernel.org>
      cc: linux-cachefs@redhat.com
      cc: linux-fsdevel@vger.kernel.org
      cc: linux-mm@kvack.org
      6ba22d8d
    • David Howells's avatar
      netfs: Add a hook to allow tell the netfs to update its i_size · c6dc54dd
      David Howells authored
      
      
      Add a hook for netfslib's write helpers to call to tell the network
      filesystem that it should update its i_size.
      
      Signed-off-by: default avatarDavid Howells <dhowells@redhat.com>
      Reviewed-by: default avatarJeff Layton <jlayton@kernel.org>
      cc: linux-cachefs@redhat.com
      cc: linux-fsdevel@vger.kernel.org
      cc: linux-mm@kvack.org
      c6dc54dd
    • David Howells's avatar
      netfs: Extend the netfs_io_*request structs to handle writes · 16af134c
      David Howells authored
      
      
      Modify the netfs_io_request struct to act as a point around which writes
      can be coordinated.  It represents and pins a range of pages that need
      writing and a list of regions of dirty data in that range of pages.
      
      If RMW is required, the original data can be downloaded into the bounce
      buffer, decrypted if necessary, the modifications made, then the modified
      data can be reencrypted/recompressed and sent back to the server.
      
      Signed-off-by: default avatarDavid Howells <dhowells@redhat.com>
      Reviewed-by: default avatarJeff Layton <jlayton@kernel.org>
      cc: linux-cachefs@redhat.com
      cc: linux-fsdevel@vger.kernel.org
      cc: linux-mm@kvack.org
      16af134c
    • David Howells's avatar
      netfs: Limit subrequest by size or number of segments · 768ddb1e
      David Howells authored
      
      
      Limit a subrequest to a maximum size and/or a maximum number of contiguous
      physical regions.  This permits, for instance, an subreq's iterator to be
      limited to the number of DMA'able segments that a large RDMA request can
      handle.
      
      Signed-off-by: default avatarDavid Howells <dhowells@redhat.com>
      Reviewed-by: default avatarJeff Layton <jlayton@kernel.org>
      cc: linux-cachefs@redhat.com
      cc: linux-fsdevel@vger.kernel.org
      cc: linux-mm@kvack.org
      768ddb1e
    • David Howells's avatar
      netfs: Add func to calculate pagecount/size-limited span of an iterator · cae932d3
      David Howells authored
      
      
      Add a function to work out how much of an ITER_BVEC or ITER_XARRAY iterator
      we can use in a pagecount-limited and size-limited span.  This will be
      used, for example, to limit the number of segments in a subrequest to the
      maximum number of elements that an RDMA transfer can handle.
      
      Signed-off-by: default avatarDavid Howells <dhowells@redhat.com>
      Reviewed-by: default avatarJeff Layton <jlayton@kernel.org>
      cc: linux-cachefs@redhat.com
      cc: linux-fsdevel@vger.kernel.org
      cc: linux-mm@kvack.org
      cae932d3
    • David Howells's avatar
      netfs: Provide tools to create a buffer in an xarray · 7d828a06
      David Howells authored
      
      
      Provide tools to create a buffer in an xarray, with a function to add new
      folios with a mark.  This will be used to create bounce buffer and can be
      used more easily to create a list of folios the span of which would require
      more than a page's worth of bio_vec structs.
      
      Signed-off-by: default avatarDavid Howells <dhowells@redhat.com>
      Reviewed-by: default avatarJeff Layton <jlayton@kernel.org>
      cc: linux-cachefs@redhat.com
      cc: linux-fsdevel@vger.kernel.org
      cc: linux-mm@kvack.org
      7d828a06
    • David Howells's avatar
      netfs: Add support for DIO buffering · 21d706d5
      David Howells authored
      
      
      Add a bvec array pointer and an iterator to netfs_io_request for either
      holding a copy of a DIO iterator or a list of all the bits of buffer
      pointed to by a DIO iterator.
      
      There are two problems:  Firstly, if an iovec-class iov_iter is passed to
      ->read_iter() or ->write_iter(), this cannot be passed directly to
      kernel_sendmsg() or kernel_recvmsg() as that may cause locking recursion if
      a fault is generated, so we need to keep track of the pages involved
      separately.
      
      Secondly, if the I/O is asynchronous, we must copy the iov_iter describing
      the buffer before returning to the caller as it may be immediately
      deallocated.
      
      Signed-off-by: default avatarDavid Howells <dhowells@redhat.com>
      Reviewed-by: default avatarJeff Layton <jlayton@kernel.org>
      cc: linux-cachefs@redhat.com
      cc: linux-fsdevel@vger.kernel.org
      cc: linux-mm@kvack.org
      21d706d5
  2. Dec 24, 2023
    • David Howells's avatar
      netfs: Add iov_iters to (sub)requests to describe various buffers · 92b6cc5d
      David Howells authored
      
      
      Add three iov_iter structs:
      
       (1) Add an iov_iter (->iter) to the I/O request to describe the
           unencrypted-side buffer.
      
       (2) Add an iov_iter (->io_iter) to the I/O request to describe the
           encrypted-side I/O buffer.  This may be a different size to the buffer
           in (1).
      
       (3) Add an iov_iter (->io_iter) to the I/O subrequest to describe the part
           of the I/O buffer for that subrequest.
      
      This will allow future patches to point to a bounce buffer instead for
      purposes of handling oversize writes, decryption (where we want to save the
      encrypted data to the cache) and decompression.
      
      These iov_iters persist for the lifetime of the (sub)request, and so can be
      accessed multiple times without worrying about them being deallocated upon
      return to the caller.
      
      The network filesystem must appropriately advance the iterator before
      terminating the request.
      
      Signed-off-by: default avatarDavid Howells <dhowells@redhat.com>
      cc: Jeff Layton <jlayton@kernel.org>
      cc: linux-cachefs@redhat.com
      cc: linux-fsdevel@vger.kernel.org
      cc: linux-mm@kvack.org
      92b6cc5d
    • David Howells's avatar
      netfs: Implement unbuffered/DIO vs buffered I/O locking · 46ed60dc
      David Howells authored
      
      
      Borrow NFS's direct-vs-buffered I/O locking into netfslib.  Similar code is
      also used in ceph.
      
      Modify it to have the correct checker annotations for i_rwsem lock
      acquisition/release and to return -ERESTARTSYS if waits are interrupted.
      
      Signed-off-by: default avatarDavid Howells <dhowells@redhat.com>
      Reviewed-by: default avatarJeff Layton <jlayton@kernel.org>
      cc: linux-cachefs@redhat.com
      cc: linux-fsdevel@vger.kernel.org
      cc: linux-mm@kvack.org
      46ed60dc
    • David Howells's avatar
      netfs: Provide invalidate_folio and release_folio calls · c1ec4d7c
      David Howells authored
      
      
      Provide default invalidate_folio and release_folio calls.  These will need
      to interact with invalidation correctly at some point.  They will be needed
      if netfslib is to make use of folio->private for its own purposes.
      
      Signed-off-by: default avatarDavid Howells <dhowells@redhat.com>
      Reviewed-by: default avatarJeff Layton <jlayton@kernel.org>
      cc: linux-cachefs@redhat.com
      cc: linux-fsdevel@vger.kernel.org
      cc: linux-mm@kvack.org
      c1ec4d7c
    • David Howells's avatar
      afs: Don't use folio->private to record partial modification · a34847d4
      David Howells authored
      
      
      AFS currently uses folio->private to store the range of bytes within a
      folio that have been modified - the idea being that if we have, say, a 2MiB
      folio and someone writes a single byte, we only have to write back that
      single page and not the whole 2MiB folio - thereby saving on network
      bandwidth.
      
      Remove this, at least for now, and accept the extra network load (which
      doesn't matter in the common case of writing a whole file at a time from
      beginning to end).
      
      This makes folio->private available for netfslib to use.
      
      Signed-off-by: default avatarDavid Howells <dhowells@redhat.com>
      Reviewed-by: default avatarJeff Layton <jlayton@kernel.org>
      cc: Marc Dionne <marc.dionne@auristor.com>
      cc: linux-afs@lists.infradead.org
      cc: linux-cachefs@redhat.com
      cc: linux-fsdevel@vger.kernel.org
      cc: linux-mm@kvack.org
      a34847d4
    • David Howells's avatar
      netfs: Add a ->free_subrequest() op · 5f5ce7ba
      David Howells authored
      
      
      Add a ->free_subrequest() op so that the netfs can clean up data attached
      to a subrequest.
      
      Signed-off-by: default avatarDavid Howells <dhowells@redhat.com>
      Reviewed-by: default avatarJeff Layton <jlayton@kernel.org>
      cc: linux-cachefs@redhat.com
      cc: linux-fsdevel@vger.kernel.org
      cc: linux-mm@kvack.org
      5f5ce7ba
    • David Howells's avatar
      netfs: Allow the netfs to make the io (sub)request alloc larger · cc3cb0a1
      David Howells authored
      
      
      Allow the network filesystem to specify extra space to be allocated on the
      end of the io (sub)request.  This allows cifs, for example, to use this
      space rather than allocating its own cifs_readdata struct.
      
      Signed-off-by: default avatarDavid Howells <dhowells@redhat.com>
      Reviewed-by: default avatarJeff Layton <jlayton@kernel.org>
      cc: linux-cachefs@redhat.com
      cc: linux-fsdevel@vger.kernel.org
      cc: linux-mm@kvack.org
      cc3cb0a1
    • David Howells's avatar
      netfs: Add a procfile to list in-progress requests · 87b57a04
      David Howells authored
      
      
      Add a procfile, /proc/fs/netfs/requests, to list in-progress netfslib I/O
      requests.
      
      Signed-off-by: default avatarDavid Howells <dhowells@redhat.com>
      cc: Jeff Layton <jlayton@kernel.org>
      cc: linux-cachefs@redhat.com
      cc: linux-fsdevel@vger.kernel.org
      cc: linux-mm@kvack.org
      87b57a04
    • David Howells's avatar
      netfs: Move pinning-for-writeback from fscache to netfs · c9c4ff12
      David Howells authored
      
      
      Move the resource pinning-for-writeback from fscache code to netfslib code.
      This is used to keep a cache backing object pinned whilst we have dirty
      pages on the netfs inode in the pagecache such that VM writeback will be
      able to reach it.
      
      Whilst we're at it, switch the parameters of netfs_unpin_writeback() to
      match ->write_inode() so that it can be used for that directly.
      
      Note that this mechanism could be more generically useful than that for
      network filesystems.  Quite often they have to keep around other resources
      (e.g. authentication tokens or network connections) until the writeback is
      complete.
      
      Signed-off-by: default avatarDavid Howells <dhowells@redhat.com>
      Reviewed-by: default avatarJeff Layton <jlayton@kernel.org>
      cc: linux-cachefs@redhat.com
      cc: linux-fsdevel@vger.kernel.org
      cc: linux-mm@kvack.org
      c9c4ff12
    • David Howells's avatar
      netfs, fscache: Move /proc/fs/fscache to /proc/fs/netfs and put in a symlink · 7eb5b3e3
      David Howells authored
      
      
      Rename /proc/fs/fscache to "netfs" and make a symlink from fscache to that.
      
      Signed-off-by: default avatarDavid Howells <dhowells@redhat.com>
      Reviewed-by: default avatarJeff Layton <jlayton@kernel.org>
      cc: Christian Brauner <christian@brauner.io>
      cc: linux-fsdevel@vger.kernel.org
      cc: linux-cachefs@redhat.com
      7eb5b3e3
    • David Howells's avatar
      netfs, fscache: Remove ->begin_cache_operation · 4498a8ec
      David Howells authored
      
      
      Remove ->begin_cache_operation() in favour of just calling fscache directly.
      
      Signed-off-by: default avatarDavid Howells <dhowells@redhat.com>
      Reviewed-by: default avatarJeff Layton <jlayton@kernel.org>
      cc: Christian Brauner <christian@brauner.io>
      cc: linux-fsdevel@vger.kernel.org
      cc: linux-cachefs@redhat.com
      4498a8ec
    • David Howells's avatar
      netfs, fscache: Combine fscache with netfs · 915cd30c
      David Howells authored
      
      
      Now that the fscache code is moved to be colocated with the netfslib code
      so that they combined into one module, do the combining.
      
      Signed-off-by: default avatarDavid Howells <dhowells@redhat.com>
      Reviewed-by: default avatarJeff Layton <jlayton@kernel.org>
      cc: Christian Brauner <christian@brauner.io>
      cc: linux-fsdevel@vger.kernel.org
      cc: linux-cachefs@redhat.com
      cc: linux-nfs@vger.kernel.org,
      cc: linux-erofs@lists.ozlabs.org
      915cd30c
    • David Howells's avatar
      netfs, fscache: Move fs/fscache/* into fs/netfs/ · 47757ea8
      David Howells authored
      
      
      There's a problem with dependencies between netfslib and fscache as each
      wants to access some functions of the other.  Deal with this by moving
      fs/fscache/* into fs/netfs/ and renaming those files to begin with
      "fscache-".
      
      For the moment, the moved files are changed as little as possible and an
      fscache module is still built.  A subsequent patch will integrate them.
      
      Signed-off-by: default avatarDavid Howells <dhowells@redhat.com>
      Reviewed-by: default avatarJeff Layton <jlayton@kernel.org>
      cc: Christian Brauner <christian@brauner.io>
      cc: linux-fsdevel@vger.kernel.org
      cc: linux-cachefs@redhat.com
      47757ea8
    • David Howells's avatar
      afs: Automatically generate trace tag enums · 2daa6404
      David Howells authored
      
      
      Automatically generate trace tag enums from the symbol -> string mapping
      tables rather than having the enums as well, thereby reducing duplicated
      data.
      
      Signed-off-by: default avatarDavid Howells <dhowells@redhat.com>
      cc: Marc Dionne <marc.dionne@auristor.com>
      cc: Jeff Layton <jlayton@kernel.org>
      cc: linux-afs@lists.infradead.org
      cc: linux-fsdevel@vger.kernel.org
      2daa6404
    • David Howells's avatar
      afs: Remove whitespace before most ')' from the trace header · a790c258
      David Howells authored
      
      
      checkpatch objects to whitespace before ')', so remove most of it from the
      afs trace header.
      
      Signed-off-by: default avatarDavid Howells <dhowells@redhat.com>
      cc: Marc Dionne <marc.dionne@auristor.com>
      cc: Jeff Layton <jlayton@kernel.org>
      cc: linux-afs@lists.infradead.org
      cc: linux-fsdevel@vger.kernel.org
      a790c258
    • Linus Torvalds's avatar
      Linux 6.7-rc7 · 861deac3
      Linus Torvalds authored
      861deac3
    • Linus Torvalds's avatar
      Merge tag 'x86-urgent-2023-12-23' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 3f82f1c3
      Linus Torvalds authored
      Pull x86 fixes from Ingo Molnar:
      
       - Fix a secondary CPUs enumeration regression caused by creative MADT
         APIC table entries on certain systems.
      
       - Fix a race in the NOP-patcher that can spuriously trigger crashes on
         bootup.
      
       - Fix a bootup failure regression caused by the parallel bringup code,
         caused by firmware inconsistency between the APIC initialization
         states of the boot and secondary CPUs, on certain systems.
      
      * tag 'x86-urgent-2023-12-23' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86/acpi: Handle bogus MADT APIC tables gracefully
        x86/alternatives: Disable interrupts and sync when optimizing NOPs in place
        x86/alternatives: Sync core before enabling interrupts
        x86/smpboot/64: Handle X2APIC BIOS inconsistency gracefully
      3f82f1c3
    • Linus Torvalds's avatar
      Merge tag 'scsi-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi · f969c914
      Linus Torvalds authored
      Pull SCSI fixes from James Bottomley:
       "Four small fixes, three in drivers with the core one adding a batch
        indicator (for drivers which use it) to the error handler"
      
      * tag 'scsi-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi:
        scsi: ufs: core: Let the sq_lock protect sq_tail_slot access
        scsi: ufs: qcom: Return ufs_qcom_clk_scale_*() errors in ufs_qcom_clk_scale_notify()
        scsi: core: Always send batch on reset or error handling command
        scsi: bnx2fc: Fix skb double free in bnx2fc_rcv()
      f969c914
    • Linus Torvalds's avatar
      Merge tag 'usb-6.7-rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb · 4b2ee6d2
      Linus Torvalds authored
      Pull USB / Thunderbolt fixes from Greg KH:
       "Here are some small bugfixes and new device ids for USB and
        Thunderbolt drivers for 6.7-rc7. Included in here are:
      
         - new usb-serial device ids
      
         - thunderbolt driver fixes
      
         - typec driver fix
      
         - usb-storage driver quirk added
      
         - fotg210 driver fix
      
        All of these have been in linux-next with no reported issues"
      
      * tag 'usb-6.7-rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb:
        USB: serial: option: add Quectel EG912Y module support
        USB: serial: ftdi_sio: update Actisense PIDs constant names
        usb: fotg210-hcd: delete an incorrect bounds test
        usb-storage: Add quirk for incorrect WP on Kingston DT Ultimate 3.0 G3
        usb: typec: ucsi: fix gpio-based orientation detection
        net: usb: ax88179_178a: avoid failed operations when device is disconnected
        USB: serial: option: add Quectel RM500Q R13 firmware support
        USB: serial: option: add Foxconn T99W265 with new baseline
        thunderbolt: Fix minimum allocated USB 3.x and PCIe bandwidth
        thunderbolt: Fix memory leak in margining_port_remove()
      4b2ee6d2
    • Linus Torvalds's avatar
      Merge tag 'char-misc-6.7-rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/char-misc · a0652eb2
      Linus Torvalds authored
      Pull char / misc driver fixes from Greg KH:
       "Here are a small number of various driver fixes for 6.7-rc7 that
        normally come through the char-misc tree, and one debugfs fix as well.
      
        Included in here are:
      
         - iio and hid sensor driver fixes for a number of small things
      
         - interconnect driver fixes
      
         - brcm_nvmem driver fixes
      
         - debugfs fix for previous fix
      
         - guard() definition in device.h so that many subsystems can start
           using it for 6.8-rc1 (requested by Dan Williams to make future
           merges easier)
      
        All of these have been in linux-next for a while with no reported
        issues"
      
      * tag 'char-misc-6.7-rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/char-misc: (21 commits)
        debugfs: initialize cancellations earlier
        Revert "iio: hid-sensor-als: Add light color temperature support"
        Revert "iio: hid-sensor-als: Add light chromaticity support"
        nvmem: brcm_nvram: store a co...
      a0652eb2
    • Linus Torvalds's avatar
      Merge tag 'input-for-v6.7-rc6' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input · fa655abe
      Linus Torvalds authored
      Pull input updates from Dmitry Torokhov:
      
       - a quirk to AT keyboard driver to skip issuing "GET ID" command when
         8042 is in translated mode and the device is a laptop/portable,
         because the "GET ID" command makes a bunch of recent laptops unhappy
      
       - a quirk to i8042 to disable multiplexed mode on Acer P459-G2-M which
         causes issues on resume
      
       - psmouse will activate native RMI4 protocol support for touchpad on
         ThinkPad L14 G1
      
       - addition of Razer Wolverine V2 ID to xpad gamepad driver
      
       - mapping for airplane mode button in soc_button_array driver for
         TUXEDO laptops
      
       - improved error handling in ipaq-micro-keys driver
      
       - amimouse being prepared for platform remove callback returning void
      
      * tag 'input-for-v6.7-rc6' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input:
        Input: soc_button_array - add mapping for airplane mode button
        Input: xpad - add Razer Wolverine V2 support
        Input: ipaq-micro-keys - add error handling for devm_kmemdup
        Input: amimouse - convert to platform remove callback returning void
        Input: i8042 - add nomux quirk for Acer P459-G2-M
        Input: atkbd - skip ATKBD_CMD_GETID in translated mode
        Input: psmouse - enable Synaptics InterTouch for ThinkPad L14 G1
      fa655abe
  3. Dec 23, 2023
  4. Dec 22, 2023
    • Linus Torvalds's avatar
      Merge tag 'drm-fixes-2023-12-22' of git://anongit.freedesktop.org/drm/drm · 8afe6f0e
      Linus Torvalds authored
      Pull drm fixes from Dave Airlie:
       "Pretty quiet for this week, just i915 and amdgpu fixes,
      
        I think the misc tree got lost this week, but didn't seem to have too
        much in it, so it can wait. I've also got a bunch of nouveau GSP fixes
        sailing around that'll probably land next time as well.
      
        amdgpu:
         - DCN 3.5 fixes
         - DCN 3.2 SubVP fix
         - GPUVM fix
      
        amdkfd:
         - SVM fix for APUs
      
        i915:
         - Fix state readout and check for DSC and bigjoiner combo
         - Fix a potential integer overflow
         - Reject async flips with bigjoiner
         - Fix MTL HDMI/DP PLL clock selection
         - Fix various issues by disabling pipe DMC events"
      
      * tag 'drm-fixes-2023-12-22' of git://anongit.freedesktop.org/drm/drm:
        drm/amdgpu: re-create idle bo's PTE during VM state machine reset
        drm/amd/display: dereference variable before checking for zero
        drm/amd/display: get dprefclk ss info from integration info table
        drm/amd/display: Add case for dcn35 to support usb4 dmub hpd event
        drm/amd/display: disable FPO and SubVP for older DMUB versions on DCN32x
        drm/amdkfd: svm range always mapped flag not working on APU
        drm/amd/display: Revert " drm/amd/display: Use channel_width = 2 for vram table 3.0"
        drm/i915/dmc: Don't enable any pipe DMC events
        drm/i915/mtl: Fix HDMI/DP PLL clock selection
        drm/i915: Reject async flips with bigjoiner
        drm/i915/hwmon: Fix static analysis tool reported issues
        drm/i915/display: Get bigjoiner config before dsc config during readout
      8afe6f0e