diff options
| author | Christoph Hellwig <[email protected]> | 2025-08-19 08:25:01 +0000 |
|---|---|---|
| committer | Christian Brauner <[email protected]> | 2025-08-20 09:13:01 +0000 |
| commit | 2729a60bbfb9215997f25372ebe9b7964f038296 (patch) | |
| tree | 16051bba1c512df574b0f52b9c8a538b1d365faa /drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c | |
| parent | fs: add a FMODE_ flag to indicate IOCB_HAS_METADATA availability (diff) | |
| download | kernel-2729a60bbfb9215997f25372ebe9b7964f038296.tar.gz kernel-2729a60bbfb9215997f25372ebe9b7964f038296.zip | |
block: don't silently ignore metadata for sync read/write
The block fops don't try to handle metadata for synchronous requests,
probably because the completion handler looks at dio->iocb which is not
valid for synchronous requests.
But silently ignoring metadata (or warning in case of
__blkdev_direct_IO_simple) is a really bad idea as that can cause
silent data corruption if a user ever shows up.
Instead simply handle metadata for synchronous requests as the completion
handler can simply check for bio_integrity() as the block layer default
integrity will already be freed at this point, and thus bio_integrity()
will only return true for user mapped integrity.
Fixes: 3d8b5a22d404 ("block: add support to pass user meta buffer")
Signed-off-by: Christoph Hellwig <[email protected]>
Link: https://lore.kernel.org/[email protected]
Reviewed-by: Martin K. Petersen <[email protected]>
Signed-off-by: Christian Brauner <[email protected]>
Diffstat (limited to 'drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c')
0 files changed, 0 insertions, 0 deletions
