Hi Linus, Here are a set of miscellaneous small fixes to the afs filesystem including: (1) Fix the afs_server_list struct to be cleaned up with RCU. (2) Fix afs to translate a no-data result from a DNS lookup into ENOENT, not EDESTADDRREQ for consistency with OpenAFS. (3) Fix afs to translate a negative DNS lookup result into ENOENT rather than EDESTADDRREQ. (4) Fix file locking on R/O volumes to operate in local mode as the server doesn't handle exclusive locks on such files. (5) Set SB_RDONLY on superblocks for RO and Backup volumes so that the VFS can see that they're read only. Btw, I did want to ask about (5): Does a superblock being marked SB_RDONLY imply immutability to the application? A 'read only' AFS volume is a snapshot of a writable volume and can be updated. It's only read-only in the sense you can't perform normal filesystem modification ops on it. Link: https://lore.kernel.org/r/20231116155312.156593-1-dhowells@xxxxxxxxxx/ # v1 Reviewed-by: Jeffrey Altman <jaltman@xxxxxxxxxxxx> Thanks, David --- The following changes since commit 76df934c6d5f5c93ba7a0112b1818620ddc10b19: MAINTAINERS: Add netdev subsystem profile link (2023-11-17 03:44:21 +0000) are available in the Git repository at: git://git.kernel.org/pub/scm/linux/kernel/git/dhowells/linux-fs.git tags/afs-fixes-20231124 for you to fetch changes up to 68516f60c1d8b0a71e516d630f66b99cb50e0150: afs: Mark a superblock for an R/O or Backup volume as SB_RDONLY (2023-11-24 14:52:24 +0000) ---------------------------------------------------------------- AFS Fixes ---------------------------------------------------------------- David Howells (5): afs: Fix afs_server_list to be cleaned up with RCU afs: Make error on cell lookup failure consistent with OpenAFS afs: Return ENOENT if no cell DNS record can be found afs: Fix file locking on R/O volumes to operate in local mode afs: Mark a superblock for an R/O or Backup volume as SB_RDONLY fs/afs/dynroot.c | 4 ++-- fs/afs/internal.h | 1 + fs/afs/server_list.c | 2 +- fs/afs/super.c | 4 ++++ fs/afs/vl_rotate.c | 10 ++++++++++ 5 files changed, 18 insertions(+), 3 deletions(-)