User-Visible OpenAFS Changes OpenAFS 1.8.17pre2 All platforms * The Rx RPC call statistics code now checks that a call's function number fits within the statistics storage allocated for its RPC package before recording it. Previously, if two RPC packages were tracked under the same statistics slot but declared different numbers of functions, a call could write past the end of that storage and corrupt unrelated memory. The RPC packages shipped in OpenAFS do not currently collide this way; this is a safety check for adding new Rx services in the future (16229). * A change from OpenAFS 1.8.10 has been reverted, which previously made "vos convertROtoRW" take the RO volume offline from the client side. The reverted change is obviated by a server side implementation (in change 14433) previously introduced in OpenAFS 1.8.8 (16895). All UNIX clients * The "unlog -cell" command no longer discards tokens for cells other than the one given on the command line. Previously, on UNIX clients, it removed all tokens and then re-registered tokens for the other cells (16896, 16897, 16898, 16910, 16988, 17006). * A potential bug (with no known path to trigger it) has been fixed where various code paths did not properly obtain references to unixuser structs when traversing over all unixusers in the system, potentially leading to memory corruption (17007, 17008). * A deadlock has been fixed in the user-space client (libuafs, as used by afsd.fuse and the AFS::ukernel Perl bindings). Since OpenAFS 1.8.11, these clients hung on the first callback RPC received from a fileserver (17048). Linux client * Support for Linux 7.2 has been added (16928). * Support for Linux 7.3 has been added (17049). * A configure failure has been fixed when building the kernel module against some Linux kernels, such as the Arch Linux 7.0 kernels built with GCC 16, where the kernel build fails while generating BTF type information for the configure tests (17051). * The OpenAFS directory name lookup cache (DNLC) is now disabled by default on Linux, since the Linux kernel's own dentry cache already serves this purpose. This avoids the overhead and possible issues of maintaining a redundant cache. The DNLC can be re-enabled with the `afs.afs_usednlc` sysctl (16927). MacOS client * Support for macOS 27 has been added (Golden Gate) (16953, 16954, 16955). * The installer ReadMe now documents a bug in the macOS Installer app, and a workaround. The bug, present in some recent versions of macOS 27, 26, and 15, prevents the OpenAFS cell configuration plugin from running. When affected, the installer does not prompt for the local cell, and the client is configured with the default cell (grand.central.org) (17050). * Universal (x86_64 and arm64) builds and packages are now supported on macOS 27. To build Universal binaries, set the ARCHFLAGS environment variable to "-arch x86_64 -arch arm64". Note: The x86_64 binaries require Rosetta 2 on macOS 27, which is not installed by default (17074). * MD5 and SHA-512 checksum files are now generated for the .dmg file created by "make packages" (17041, 17042). * A bug has been fixed where several commands (bos, cmdebug, fs, xstat_cm_test, xstat_fs_test, and backup) could experience segfaults or bus errors in LWP code on arm64 with macOS 27 (17126, 17127).