summaryrefslogtreecommitdiff
path: root/block
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@linux-foundation.org>2024-05-10 20:24:16 +0300
committerLinus Torvalds <torvalds@linux-foundation.org>2024-05-10 20:24:16 +0300
commitf4345f05c0dfc73c617e66f3b809edb8ddd41075 (patch)
treea1e5e15796acbc31c8e1dbb0d7ddadcdae1f9733 /block
parented44935c330a2633440e8d2660db3c7538eeaf10 (diff)
parenta772178456f56e20778e41c19987f6744e20f2ee (diff)
downloadlinux-f4345f05c0dfc73c617e66f3b809edb8ddd41075.tar.xz
Merge tag 'block-6.9-20240510' of git://git.kernel.dk/linux
Pull block fixes from Jens Axboe: - NVMe pull request via Keith: - nvme target fixes (Sagi, Dan, Maurizo) - new vendor quirk for broken MSI (Sean) - Virtual boundary fix for a regression in this merge window (Ming) * tag 'block-6.9-20240510' of git://git.kernel.dk/linux: nvmet-rdma: fix possible bad dereference when freeing rsps nvmet: prevent sprintf() overflow in nvmet_subsys_nsid_exists() nvmet: make nvmet_wq unbound nvmet-auth: return the error code to the nvmet_auth_ctrl_hash() callers nvme-pci: Add quirk for broken MSIs block: set default max segment size in case of virt_boundary
Diffstat (limited to 'block')
-rw-r--r--block/blk-settings.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/block/blk-settings.c b/block/blk-settings.c
index d2731843f2fc..9d6033e01f2e 100644
--- a/block/blk-settings.c
+++ b/block/blk-settings.c
@@ -188,7 +188,10 @@ static int blk_validate_limits(struct queue_limits *lim)
* bvec and lower layer bio splitting is supposed to handle the two
* correctly.
*/
- if (!lim->virt_boundary_mask) {
+ if (lim->virt_boundary_mask) {
+ if (!lim->max_segment_size)
+ lim->max_segment_size = UINT_MAX;
+ } else {
/*
* The maximum segment size has an odd historic 64k default that
* drivers probably should override. Just like the I/O size we