diff options
| author | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2020-12-07 10:20:51 +0100 |
|---|---|---|
| committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2020-12-07 10:20:51 +0100 |
| commit | 93837812a5dcde17224ad20cf2ad7be1e94482bb (patch) | |
| tree | e4755fac9912bbff19f2df21a89600dbdfe71870 /include/linux/blkdev.h | |
| parent | e3541d5de544da54a1770e9c82c55f2a6f6b3b67 (diff) | |
| parent | 0477e92881850d44910a7e94fc2c46f96faa131f (diff) | |
Merge 5.10-rc7 into usb-next
We want the USB fixes in here as well.
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'include/linux/blkdev.h')
| -rw-r--r-- | include/linux/blkdev.h | 17 |
1 files changed, 10 insertions, 7 deletions
diff --git a/include/linux/blkdev.h b/include/linux/blkdev.h index 639cae2c158b..033eb5f73b65 100644 --- a/include/linux/blkdev.h +++ b/include/linux/blkdev.h @@ -1073,12 +1073,15 @@ static inline unsigned int blk_queue_get_max_sectors(struct request_queue *q, * file system requests. */ static inline unsigned int blk_max_size_offset(struct request_queue *q, - sector_t offset) -{ - unsigned int chunk_sectors = q->limits.chunk_sectors; - - if (!chunk_sectors) - return q->limits.max_sectors; + sector_t offset, + unsigned int chunk_sectors) +{ + if (!chunk_sectors) { + if (q->limits.chunk_sectors) + chunk_sectors = q->limits.chunk_sectors; + else + return q->limits.max_sectors; + } if (likely(is_power_of_2(chunk_sectors))) chunk_sectors -= offset & (chunk_sectors - 1); @@ -1101,7 +1104,7 @@ static inline unsigned int blk_rq_get_max_sectors(struct request *rq, req_op(rq) == REQ_OP_SECURE_ERASE) return blk_queue_get_max_sectors(q, req_op(rq)); - return min(blk_max_size_offset(q, offset), + return min(blk_max_size_offset(q, offset, 0), blk_queue_get_max_sectors(q, req_op(rq))); } |
