projects
/
linux-block.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
0e8acff
)
brd: fix aligned_sector from brd_do_discard()
author
Yu Kuai
<yukuai3@huawei.com>
Tue, 6 May 2025 06:17:55 +0000
(14:17 +0800)
committer
Jens Axboe
<axboe@kernel.dk>
Tue, 6 May 2025 13:42:27 +0000
(07:42 -0600)
The calculation is just wrong, fix it by round_up().
Fixes:
9ead7efc6f3f
("brd: implement discard support")
Signed-off-by: Yu Kuai <yukuai3@huawei.com>
Reviewed-by: Christoph Hellwig <hch@lst.de>
Link:
https://lore.kernel.org/r/20250506061756.2970934-3-yukuai1@huaweicloud.com
Signed-off-by: Jens Axboe <axboe@kernel.dk>
drivers/block/brd.c
patch
|
blob
|
blame
|
history
diff --git
a/drivers/block/brd.c
b/drivers/block/brd.c
index fc793d48a9c633910871bb390ebf2fd393643038..2753fb21410b350c473ea2f21e2bf0af0847255e 100644
(file)
--- a/
drivers/block/brd.c
+++ b/
drivers/block/brd.c
@@
-166,7
+166,7
@@
static void brd_free_one_page(struct rcu_head *head)
static void brd_do_discard(struct brd_device *brd, sector_t sector, u32 size)
{
- sector_t aligned_sector =
(sector + PAGE_SECTORS) & ~PAGE_SECTORS
;
+ sector_t aligned_sector =
round_up(sector, PAGE_SECTORS)
;
struct page *page;
size -= (aligned_sector - sector) * SECTOR_SIZE;