From: Christian Brauner Date: Mon, 22 Jun 2026 14:36:00 +0000 (+0200) Subject: Merge patch series "afs: Miscellaneous fixes" X-Git-Tag: v7.2-rc2~14^2~10 X-Git-Url: http://git.ipfire.org/index.cgi?a=commitdiff_plain;h=b2117f2a795da80d3e6dd6b12774e824ef717eef;p=thirdparty%2Flinux.git Merge patch series "afs: Miscellaneous fixes" David Howells says: (1) Fix the CB.InitCallBackState3 service handler to handle an unknown server (server pointer is NULL). (2) Fix the clobbering of the default error code in afs_extract_vl_addrs(). (3) Fix a NULL pointer in a trace point in afs_get_tree(). (4) Fix double netfs_inode initialisation in afs_root_iget(). (5) Fix setting of AS_RELEASE_ALWAYS for symlinks (and mountpoints) as there's no release_folio function provided. The pagecache isn't used by afs for symlinks and directories. (6) Fix the order of inode init to avoid clobbering NETFS_ICTX_SINGLE_NO_UPLOAD set on directories. (7) Fix the release of op->more_files to Use kvfree(). (8) Fix erroneous seq |= 1 in volume lookup loop. (9) Drop for duplicate server records when parsing DNS reply into the VL server list (this is not strictly a bug fix, so could be punted to the merge window). (10) Fix malfunction in bulk lookup due to change in dir_emit() API added to mask off DT_* flags for overlayfs on fuse. (11) Fix misplaced inc of net->cells_outstanding causing netns destruction hang. (12) Fix reinitialisation of afs_vnode::lock_work. Not reinitialising it after allocation seems to upset DEBUG_OBJECTS despite there being an slab init-once handler provided. (13) Fix callback service message parsers to pass through -EAGAIN when insufficient data yet received. (14) Switch to using scoped_seqlock_read() in volume lookup loop as a follow up to (6). (15) Fix leak of a volume we failed to get because its refcount had hit 0. (16) Fix missing NULL pointer check in afs_break_some_callbacks(). (17) Fix leak of empty new vllist in afs_update_cell(). (18) Fix modifications of net->cells_dyn_ino to use locking; this requires the use of preallocation as the allocation has to be done under spinlock. (19) Fix insertion into net->cells_dyn_ino to only add a new cell into the IDR only after we've checked it's not a duplicate. (20) Fix afs_insert_volume_into_cell() to set AFS_VOLUME_RM_TREE on the old volume, not the new. (21) Fix afs_extract_vlserver_list() to limit the string displayed in the debug statement. * patches from https://patch.msgid.link/20260622090856.2746629-1-dhowells@redhat.com: (23 commits) afs: Fix unchecked-length string display in debug statement afs: Fix the volume AFS_VOLUME_RM_TREE is set on afs: Fix premature cell exposure through /afs afs: Fix lack of locking around modifications of net->cells_dyn_ino afs: Fix vllist leak afs: Fix leak of ungot volume afs: Fix missing NULL pointer check in afs_break_some_callbacks() afs: Use scoped_seqlock_read() rather than manually doing seqlock stuff afs: Fix callback service message parsers to pass through -EAGAIN afs: Fix reinitialisation of the inode, in particular ->lock_work afs: Fix misplaced inc of net->cells_outstanding afs: Fix bulk lookup malfunction due to change in dir_emit() API afs: check for duplicate servers in VL server list afs: Remove erroneous seq |= 1 in volume lookup loop afs: use kvfree() to free memory allocated by kvcalloc() afs: Fix directory inode initialisation order afs: Remove setting of AS_RELEASE_ALWAYS for symlinks and mountpoints afs: Fix double netfs initialisation in afs_root_iget() afs: fix NULL pointer dereference in afs_get_tree() afs: Fix error code in afs_extract_vl_addrs() ... Link: https://patch.msgid.link/20260622090856.2746629-1-dhowells@redhat.com Signed-off-by: Christian Brauner (Amutable) --- b2117f2a795da80d3e6dd6b12774e824ef717eef