diff options
author | 2025-04-29 02:37:08 +0900 | |
---|---|---|
committer | 2025-05-11 17:54:12 -0700 | |
commit | 8e39fbb1edbb4ec9d7c1124f403877fc167fcecd (patch) | |
tree | d00c2b7b51db673e36b95b2ce03d52babca0d8af /tools/perf/scripts/python/export-to-postgresql.py | |
parent | nilfs2: add pointer check for nilfs_direct_propagate() (diff) | |
download | linux-rng-8e39fbb1edbb4ec9d7c1124f403877fc167fcecd.tar.xz linux-rng-8e39fbb1edbb4ec9d7c1124f403877fc167fcecd.zip |
nilfs2: do not propagate ENOENT error from nilfs_btree_propagate()
In preparation for writing logs, in nilfs_btree_propagate(), which makes
parent and ancestor node blocks dirty starting from a modified data block
or b-tree node block, if the starting block does not belong to the b-tree,
i.e. is isolated, nilfs_btree_do_lookup() called within the function
fails with -ENOENT.
In this case, even though -ENOENT is an internal code, it is propagated to
the log writer via nilfs_bmap_propagate() and may be erroneously returned
to system calls such as fsync().
Fix this issue by changing the error code to -EINVAL in this case, and
having the bmap layer detect metadata corruption and convert the error
code appropriately.
Link: https://lkml.kernel.org/r/20250428173808.6452-3-konishi.ryusuke@gmail.com
Fixes: 1f5abe7e7dbc ("nilfs2: replace BUG_ON and BUG calls triggerable from ioctl")
Signed-off-by: Ryusuke Konishi <konishi.ryusuke@gmail.com>
Cc: Wentao Liang <vulab@iscas.ac.cn>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Diffstat (limited to 'tools/perf/scripts/python/export-to-postgresql.py')
0 files changed, 0 insertions, 0 deletions