]> www.infradead.org Git - nvme.git/commit
block: integrity: Do not call set_page_dirty_lock()
authorMartin K. Petersen <martin.petersen@oracle.com>
Wed, 16 Apr 2025 20:04:10 +0000 (16:04 -0400)
committerJens Axboe <axboe@kernel.dk>
Wed, 16 Apr 2025 20:16:48 +0000 (14:16 -0600)
commit39e160505198ff8c158f11bce2ba19809a756e8b
treef5fc45ce64633b9bdd05de3ada61f08d951cae54
parent0b7a4817756c7906d0a8112c953ce88d7cd8d4c6
block: integrity: Do not call set_page_dirty_lock()

Placing multiple protection information buffers inside the same page
can lead to oopses because set_page_dirty_lock() can't be called from
interrupt context.

Since a protection information buffer is not backed by a file there is
no point in setting its page dirty, there is nothing to synchronize.
Drop the call to set_page_dirty_lock() and remove the last argument to
bio_integrity_unpin_bvec().

Cc: stable@vger.kernel.org
Fixes: 492c5d455969 ("block: bio-integrity: directly map user buffers")
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
Reviewed-by: Keith Busch <kbusch@kernel.org>
Link: https://lore.kernel.org/r/yq1v7r3ev9g.fsf@ca-mkp.ca.oracle.com
Signed-off-by: Jens Axboe <axboe@kernel.dk>
block/bio-integrity.c