[PATCH v2 0/7] fuse: {io-uring} Ensure fuse requests are set/read with locks

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



The timeout optimization patch Joanne had set ent->fuse_req to NULL
while holding a lock and that made me to realize we might have
a problem there.

And based on that, I believe we also need to set/read pdu->ent
with write,read_once.

Cc: Luis Henriques <luis@xxxxxxxxxx>
Cc: Joanne Koong <joannelkoong@xxxxxxxxx>

Signed-off-by: Bernd Schubert <bschubert@xxxxxxx>
---
Changes in v2:
- Further patch split to simplify review
- Fix order of reading and setting ent->fuse_req in fuse_uring_entry_teardown
- Fix compilation of individual patches (Joanne)
- Included v2 of the timeout optimization patch
- Link to v1: https://lore.kernel.org/r/20250124-optimize-fuse-uring-req-timeouts-v1-0-b834b5f32e85@xxxxxxx

---
Bernd Schubert (7):
      fuse: Access fuse_req under lock in fuse_uring_req_end
      fuse: Use the existing fuse_req in fuse_uring_commit
      fuse: {uring} Add struct fuse_req parameter to several functions
      fuse: Use READ_ONCE in fuse_uring_send_in_task
      fuse: use locked req consistently in fuse_uring_next_fuse_req()
      fuse: Access entries with queue lock in fuse_uring_entry_teardown
      fuse: {io-uring} Use {WRITE,READ}_ONCE for pdu->ent

 fs/fuse/dev_uring.c | 88 +++++++++++++++++++++++++++--------------------------
 1 file changed, 45 insertions(+), 43 deletions(-)
---
base-commit: 9859b70e784b07f92196d1cef7cda4ace101fd33
change-id: 20250124-optimize-fuse-uring-req-timeouts-55190797c641

Best regards,
-- 
Bernd Schubert <bschubert@xxxxxxx>





[Index of Archives]     [Linux Ext4 Filesystem]     [Union Filesystem]     [Filesystem Testing]     [Ceph Users]     [Ecryptfs]     [NTFS 3]     [AutoFS]     [Kernel Newbies]     [Share Photos]     [Security]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux Cachefs]     [Reiser Filesystem]     [Linux RAID]     [NTFS 3]     [Samba]     [Device Mapper]     [CEPH Development]

  Powered by Linux