diff options
| author | Christoph Hellwig <[email protected]> | 2025-01-13 14:12:05 +0000 |
|---|---|---|
| committer | Carlos Maiolino <[email protected]> | 2025-01-14 10:38:14 +0000 |
| commit | cbd6883ed8662073031a32f1294cdf53c8ec24a4 (patch) | |
| tree | 524209935279021dbef02efc9bf581e7e5781f97 /fs/xfs/xfs_exchrange.c | |
| parent | xfs/libxfs: replace kmalloc() and memcpy() with kmemdup() (diff) | |
| download | kernel-cbd6883ed8662073031a32f1294cdf53c8ec24a4.tar.gz kernel-cbd6883ed8662073031a32f1294cdf53c8ec24a4.zip | |
xfs: fix a double completion for buffers on in-memory targets
__xfs_buf_submit calls xfs_buf_ioend when b_io_remaining hits zero. For
in-memory buftargs b_io_remaining is never incremented from it's initial
value of 1, so this always happens. Thus the extra call to xfs_buf_ioend
in _xfs_buf_ioapply causes a double completion. Fortunately
__xfs_buf_submit is only used for synchronous reads on in-memory buftargs
due to the peculiarities of how they work, so this is mostly harmless and
just causes a little extra work to be done.
Fixes: 5076a6040ca1 ("xfs: support in-memory buffer cache targets")
Signed-off-by: Christoph Hellwig <[email protected]>
Reviewed-by: Darrick J. Wong <[email protected]>
Acked-by: Dave Chinner <[email protected]>
Signed-off-by: Carlos Maiolino <[email protected]>
Diffstat (limited to 'fs/xfs/xfs_exchrange.c')
0 files changed, 0 insertions, 0 deletions
