[PATCH 0/8] netfs/cachefiles: Some bugfixes

From: Zizhi Wo
Date: Tue Aug 20 2024 - 22:47:53 EST


Hi!

We recently discovered some bugs through self-discovery and testing in
erofs ondemand loading mode, and this patchset is mainly used to fix
them. These patches are relatively simple changes, and I would be excited
to discuss them together with everyone. Below is a brief introduction to
each patch:

Patch 1: Fix for wrong block_number calculated in ondemand write.

Patch 2: Fix for wrong length return value in ondemand write.

Patch 3: Fix missing position update in ondemand write, for scenarios
involving read-ahead, invoking the write syscall.

Patch 4: Previously, the last redundant data was cleared during the umount
phase. This patch remove unnecessary data in advance.

Patch 5: Code clean up for cachefiles_commit_tmpfile().

Patch 6: Modify error return value in cachefiles_daemon_secctx().

Patch 7: Fix object->file Null-pointer-dereference problem.

Patch 8: Fix for memory out of order in fscache_create_volume().


Zizhi Wo (8):
cachefiles: Fix incorrect block calculations in
__cachefiles_prepare_write()
cachefiles: Fix incorrect length return value in
cachefiles_ondemand_fd_write_iter()
cachefiles: Fix missing pos updates in
cachefiles_ondemand_fd_write_iter()
cachefiles: Clear invalid cache data in advance
cachefiles: Clean up in cachefiles_commit_tmpfile()
cachefiles: Modify inappropriate error return value in
cachefiles_daemon_secctx()
cachefiles: Fix NULL pointer dereference in object->file
netfs/fscache: Add a memory barrier for FSCACHE_VOLUME_CREATING

fs/cachefiles/daemon.c | 2 +-
fs/cachefiles/interface.c | 3 +++
fs/cachefiles/io.c | 10 +++++-----
fs/cachefiles/namei.c | 23 +++++++++++++----------
fs/cachefiles/ondemand.c | 38 +++++++++++++++++++++++++++++---------
fs/netfs/fscache_volume.c | 3 +--
6 files changed, 52 insertions(+), 27 deletions(-)

--
2.39.2