aboutsummaryrefslogtreecommitdiff
path: root/lib/kunit/executor.c
diff options
context:
space:
mode:
authorMikulas Patocka <mpatocka@redhat.com>2024-02-19 21:27:39 +0100
committerMike Snitzer <snitzer@kernel.org>2024-02-20 13:34:31 -0500
commitc88f5e553fe38b2ffc4c33d08654e5281b297677 (patch)
tree08c2bdc9a16cf656b64f29a2dcb6a63ce18ffaac /lib/kunit/executor.c
parent54be6c6c5ae8e0d93a6c4641cb7528eb0b6ba478 (diff)
dm-integrity: recheck the integrity tag after a failure
If a userspace process reads (with O_DIRECT) multiple blocks into the same buffer, dm-integrity reports an error [1]. The error is reported in a log and it may cause RAID leg being kicked out of the array. This commit fixes dm-integrity, so that if integrity verification fails, the data is read again into a kernel buffer (where userspace can't modify it) and the integrity tag is rechecked. If the recheck succeeds, the content of the kernel buffer is copied into the user buffer; if the recheck fails, an integrity error is reported. [1] https://people.redhat.com/~mpatocka/testcases/blk-auth-modify/read2.c Signed-off-by: Mikulas Patocka <mpatocka@redhat.com> Cc: stable@vger.kernel.org Signed-off-by: Mike Snitzer <snitzer@kernel.org>
Diffstat (limited to 'lib/kunit/executor.c')
0 files changed, 0 insertions, 0 deletions