[PATCH] block: remove blkdev_write_begin() and blkdev_write_end()

Tal Zussman posted 1 patch 2 weeks ago
block/fops.c | 24 ------------------------
1 file changed, 24 deletions(-)
[PATCH] block: remove blkdev_write_begin() and blkdev_write_end()
Posted by Tal Zussman 2 weeks ago
Remove blkdev_write_begin(), blkdev_write_end(), and their entries in
def_blk_aops. These have been unreachable since commit 487c607df790
("block: use iomap for writes to block devices") switched block device
buffered writes from generic_perform_write() to
iomap_file_buffered_write(), which bypasses aops->write_begin/end.

Signed-off-by: Tal Zussman <tz2294@columbia.edu>
---
 block/fops.c | 24 ------------------------
 1 file changed, 24 deletions(-)

diff --git a/block/fops.c b/block/fops.c
index bb6642b45937..ffe7b2042f4e 100644
--- a/block/fops.c
+++ b/block/fops.c
@@ -499,36 +499,12 @@ static void blkdev_readahead(struct readahead_control *rac)
 	mpage_readahead(rac, blkdev_get_block);
 }
 
-static int blkdev_write_begin(const struct kiocb *iocb,
-			      struct address_space *mapping, loff_t pos,
-			      unsigned len, struct folio **foliop,
-			      void **fsdata)
-{
-	return block_write_begin(mapping, pos, len, foliop, blkdev_get_block);
-}
-
-static int blkdev_write_end(const struct kiocb *iocb,
-			    struct address_space *mapping,
-			    loff_t pos, unsigned len, unsigned copied,
-			    struct folio *folio, void *fsdata)
-{
-	int ret;
-	ret = block_write_end(pos, len, copied, folio);
-
-	folio_unlock(folio);
-	folio_put(folio);
-
-	return ret;
-}
-
 const struct address_space_operations def_blk_aops = {
 	.dirty_folio	= block_dirty_folio,
 	.invalidate_folio = block_invalidate_folio,
 	.read_folio	= blkdev_read_folio,
 	.readahead	= blkdev_readahead,
 	.writepages	= blkdev_writepages,
-	.write_begin	= blkdev_write_begin,
-	.write_end	= blkdev_write_end,
 	.migrate_folio	= buffer_migrate_folio_norefs,
 	.is_dirty_writeback = buffer_check_dirty_writeback,
 };

---
base-commit: e7ae89a0c97ce2b68b0983cd01eda67cf373517d
change-id: 20260525-blk-write-cleanup-afedb5d1ab84

Best regards,
-- 
Tal Zussman <tz2294@columbia.edu>
Re: [PATCH] block: remove blkdev_write_begin() and blkdev_write_end()
Posted by Jens Axboe 1 week, 6 days ago
On Mon, 25 May 2026 14:25:55 -0400, Tal Zussman wrote:
> Remove blkdev_write_begin(), blkdev_write_end(), and their entries in
> def_blk_aops. These have been unreachable since commit 487c607df790
> ("block: use iomap for writes to block devices") switched block device
> buffered writes from generic_perform_write() to
> iomap_file_buffered_write(), which bypasses aops->write_begin/end.
> 
> 
> [...]

Applied, thanks!

[1/1] block: remove blkdev_write_begin() and blkdev_write_end()
      (no commit info)

Best regards,
-- 
Jens Axboe
Re: [PATCH] block: remove blkdev_write_begin() and blkdev_write_end()
Posted by Christoph Hellwig 1 week, 6 days ago
Looks good:

Reviewed-by: Christoph Hellwig <hch@lst.de>