Merge tag 'for-6.9/dm-changes' of git://git.kernel.org/pub/scm/linux/kernel/git/devic...
authorLinus Torvalds <torvalds@linux-foundation.org>
Wed, 13 Mar 2024 16:38:10 +0000 (09:38 -0700)
committerLinus Torvalds <torvalds@linux-foundation.org>
Wed, 13 Mar 2024 16:38:10 +0000 (09:38 -0700)
Pull device mapper updates from Mike Snitzer:

 - Fix DM core's IO submission (which include dm-io and dm-bufio) such
   that a bio's IO priority is propagated. Work focused on enabling both
   DM crypt and verity targets to retain the appropriate IO priority

 - Fix DM raid reshape logic to not allow an empty flush bio to be
   requeued due to false concern about the bio, which doesn't have a
   data payload, accessing beyond the end of the device

 - Fix DM core's internal resume so that it properly calls both presume
   and resume methods, which fixes the potential for a postsuspend and
   resume imbalance

 - Update DM verity target to set DM_TARGET_SINGLETON flag because it
   doesn't make sense to have a DM table with a mix of targets that
   include dm-verity

 - Small cleanups in DM crypt, thin, and integrity targets

 - Fix references to dm-devel mailing list to use latest list address

* tag 'for-6.9/dm-changes' of git://git.kernel.org/pub/scm/linux/kernel/git/device-mapper/linux-dm:
  dm: call the resume method on internal suspend
  dm raid: fix false positive for requeue needed during reshape
  dm-integrity: set max_integrity_segments in dm_integrity_io_hints
  dm: update relevant MODULE_AUTHOR entries to latest dm-devel mailing list
  dm ioctl: update DM_DRIVER_EMAIL to new dm-devel mailing list
  dm verity: set DM_TARGET_SINGLETON feature flag
  dm crypt: Fix IO priority lost when queuing write bios
  dm verity: Fix IO priority lost when reading FEC and hash
  dm bufio: Support IO priority
  dm io: Support IO priority
  dm crypt: remove redundant state settings after waking up
  dm thin: add braces around conditional code that spans lines

1  2 
drivers/md/dm-integrity.c
drivers/md/dm-raid.c
drivers/md/dm-verity-target.c
drivers/md/dm.c

Simple merge
index 17e9af60bbf7f07a7b4a567c1cb7672d7d6deb67,b3c8920fe723134824393c90a3a7840fca83dc2d..abe88d1e6735824488623ad3263c2de891e160a1
@@@ -3338,11 -3336,10 +3338,11 @@@ static int raid_map(struct dm_target *t
         * there will occur accesses past EOD of the component
         * data images thus erroring the raid set.
         */
-       if (unlikely(bio_end_sector(bio) > mddev->array_sectors))
+       if (unlikely(bio_has_data(bio) && bio_end_sector(bio) > mddev->array_sectors))
                return DM_MAPIO_REQUEUE;
  
 -      md_handle_request(mddev, bio);
 +      if (unlikely(!md_handle_request(mddev, bio)))
 +              return DM_MAPIO_REQUEUE;
  
        return DM_MAPIO_SUBMITTED;
  }
Simple merge
diff --cc drivers/md/dm.c
Simple merge