Release Team Whiteboard

This page is maintained by the OpenAFS Release Team for OpenAFS release and development discussions. The OpenAFS Release Team meetings are held on IRC.

  • Thursday at 12:00pm EDT, 9:00pm PDT
  • Libera.Chat #openafs-releaseteam channel

See https://gerrit.openafs.org for proposed changes.

Platform notes

Linux 6.17

Linux 6.17 is in development.

Changes for OpenAFS to support 6.17 are being worked on.

Linux 6.16

Patches for Linux 6.15 have been merged into master. The following gerrits have been merged and will be in the next stable 1.8.x release:

  • 16502 linux: convert aops->writepage to writepages
  • 16501 Linux: Rename page->index to page->__folio_index
  • 16500 Linux: Use __readahead_folio
  • 16499 linux: refactor afs_linux_writepage
  • 16498 linux: change lookup_one_len to lookup_noperm

Linux 6.15

Patches for Linux 6.15 have been merged into master. The following gerrits have been merged and will be in the next stable 1.8.x release:

  • 16432 LINUX: Remove test for DCACHE_NFSFS_RENAMED
  • 16431 LINUX: Use folio_page() to convert folio to page
  • 16430 Linux: Use __filemap_get_folio()
  • 16429 Linux: Refactor afs_linux_write_end()/begin()
  • 16428 Linux: Use folio_wait_locked()
  • 16427 cf: check for dentry flag macros/enums
  • 16419 linux: Make iops mkdir return a struct dentry *
  • 16418 Linux: Add required MODULE_DESCRIPTION

Open Stable commits for review (next stable release)

Notes and the list of commits needing review for the next stable release.

Next openafs-1_8_x

The use of a minor point releases (e.g. 1.8.12.x) has been adopted to handle changes to support kernel / compiler changes or to to handle a quick bug fix. Major point releases (1.8.{x}) will be used to handle other types of changes.

The following have been submitted to gerrit for the next 1.8.x release and need reviewed:

Note: There has been some discussion on a smaller list of commits for the next release. A proposed reordering of the current pending 1.8.x commits is being investigated.

Current open openafs-stable-1_8_x gerrits for review:

  • 16514 Make OpenAFS 1.8.14pre1
  • 16298 Update NEWS for OpenAFS 1.8.14pre1
  • 16520 DARWIN: Handle ',' and '/' openssl x509 delims
  • 16519 Linux: only allow one-page folios for writepages

The following have been merged into openafs-stable-1_8_x, but are not yet in a release:

  • 16512 DARWIN: Ensure -arch arm64e for MODLD on arm64
  • 16505 DARWIN: Remove logging AFS mount status in checkAfsStatus()
  • 16502 linux: convert aops->writepage to writepages
  • 16501 Linux: Rename page->index to page->__folio_index
  • 16500 Linux: Use __readahead_folio
  • 16499 linux: refactor afs_linux_writepage
  • 16498 linux: change lookup_one_len to lookup_noperm
  • 16124 rx: Use add_and_fetch for rx_atomic_add_and_read
  • 16123 volser: Add simple shutdown signal handler
  • 16103 afsd: Correctly detect invalid cache dirs
  • 16102 fs: Avoid unnecessary lstat() for -literal
  • 16433 macos: Add support for macOS 26 (Tahoe)
  • 16260 macos: Set 'ret' in AFSBackgrounder's renewTicket
  • 16190 macos: Support building solely with Xcode headers
  • 16189 macos: Add support for MacOS 15.X (Sequoia)
  • 16188 macos: Autodetect kernel headers path for afs.kext
  • 16187 macos: Stop passing -sdk to xcodebuild
  • 16186 macos: Remove SDKROOT from AklogAuthPlugin project
  • 16185 DARWIN: Allow use of CAST_USER_ADDR_T again
  • 16184 DARWIN: Cast arguments to afs_syscall_pioctl()
  • 16183 DARWIN: Correct function signature of afs_mount
  • 16182 DARWIN: Specify 'int' return type for PFI
  • 16181 DARWIN: Skip NULL func ptrs in osi_vnodeops.c
  • 16180 DARWIN: Define return type for getinode()
  • 16179 DARWIN: Set parent of volume root vnodes
  • 16251 afs: Remove 'retry' arg from afs_FindVCache
  • 16250 afs: Remove useless afs_GetVCache arguments
  • 16444 DARWIN: Use 'cp -n' for privhelper 'backup' task
  • 16432 LINUX: Remove test for DCACHE_NFSFS_RENAMED
  • 16431 LINUX: Use folio_page() to convert folio to page
  • 16430 Linux: Use __filemap_get_folio()
  • 16429 Linux: Refactor afs_linux_write_end()/begin()
  • 16428 Linux: Use folio_wait_locked()
  • 16427 cf: check for dentry flag macros/enums
  • 16419 linux: Make iops mkdir return a struct dentry *
  • 16418 Linux: Add required MODULE_DESCRIPTION
  • 16422 Update kmodtool to accommodate two-digit EL major releases
  • 16426 Redhat: Disable using lto when building rpms
  • 16423 Linux: dkms set dkms.conf CLEAN parameter to true
  • 16420 Linux: Useyesfor dkms's NO_WEAK_MODULES parm
  • 16417 redhat: add make to the build requirements
  • 16416 redhat: fix rpmbuild warnings
  • 16442 ktime: Add day validation to ktime_DisplayString()
  • 16122 rx: add missing CLEAR_CALL_QUEUE_LOCK to LWP rx_GetCall
  • 16096 rx: clear call_queue_lock after removing call from queue
  • 16093 tests: skip vos tests when a vlserver is already running
  • 16082 doc: Update example output for 'fs getfid'
  • 16078 packaging: Check for nonzero $? for command failure
  • 16077 DARWIN: Add --with-macos-* packaging options
  • 16076 DARWIN: Use notarytool for notarization
  • 16075 DARWIN: Ignore more build artifacts
  • 16074 DARWIN: Convert prefpane write ops to privhelper
  • 16073 DARWIN: Convert prefpane backup ops to privhelper
  • 16072 macos: AFSBackgrounder: improve detection of afs mount status
  • 16071 DARWIN: Convert prefpane start/stop to privhelper
  • 16070 DARWIN: Convert prefpane startup ops to privhelper
  • 16069 DARWIN: Add 'privhelper' tool for PrefPane
  • 16095 Log binding ip address and port during startup
  • 16094 Call rx_InitHost once during daemon startup
  • 16380 ubik: Use typedef for ubik_call function parameter
  • 16395 Inhibit -Wstrict-prototypes warnings via CFLAGS
  • 16379 lwp: Replace the typedefed bool datatype with int
  • 16378 afs: Set 0555 perms on /afs dynroot directory
  • 16081 fs: Report errors more consistently from GetCell()
  • 16080 fs: Still print fid for 'getfid' if GetCell fails
  • 16079 fs: Get parent dir cell for 'fs getfid -literal'
  • 16107 RedHat: Retry umount /afs on systemd shutdown
  • 16106 RedHat: Make client unit start/stop more robust
  • 16105 RedHat: Introduce client systemd helper script
  • 16104 RedHat: Use KillMode=process for systemd client
  • 16383 afs: Init structures via designated initializers
  • 16382 Convert HAVE_STRUCT_LABEL_SUPPORT to AFS_STRUCT_INIT
  • 16277 Linux-6.14: Handle dops.d_revalidate with parent
  • 16276 LINUX: Refactor afs_linux_dentry_revalidate()
  • 16166 FBSD: Fallback to $CC for assembler
  • 16131 cf: Invoke AC_PROG_RANLIB with AC_REQUIRE
  • 16130 autoconf: use AC_CHECK_TOOL for as and ld
  • 16101 cf: Fix typo in test for enable-shared/with-swig
  • 16100 cf: Disable swig if shared libraries are disabled
  • 16097 cf: Run AFS_LT_INIT after setting CC
  • 16230 fsint: Move RXAFS_StoreACL function declaration
  • 16228 CVE-2018-7168 RXAFS_StoreACL deprecate 134 introduce 164
  • 16023 viced: Set HashTable size at startup
  • 16068 DARWIN: Use -Werror=objc-method-access for objc
  • 16067 DARWIN: Use NSUInteger for indexGreaterThanIndex return value
  • 16066 DARWIN: Set workIPArray to nil in commitModify
  • 16022 viced: Ignore on-disk fsstate HashTable data
  • 16021 viced: Log some basic fs_stateRestore stats
  • 16020 viced: Log more state restore errors
  • 16019 viced: Raise fsstate loop detection limits
  • 16018 viced: Set FS_STATE_DUMP_MODE earlier
  • 16017 viced: Use calloc for fsstate data
  • 16016 viced: Fix minor log message mistakes
  • 16012 rx: Add rxi_GetLocalAddr() prototype
  • 16011 rx: Don't send packets to localhost if -rxbind set
  • 16065 rx: Introduce 'rx_host' internal global
  • 16010 Avoid rxi_tracename overflow
  • 16008 LINUX: Block non-fatal signals when sleeping
  • 16007 LINUX: Refactor afs_osi_Sleep
  • 15817 volinfo: Refuse zero and non-numeric -volumeid
  • 15812 AIX: Don't specify -qlanglvl=stdc99 for libuafs
  • 15811 AIX: Declare syscall()
  • 15810 AIX: Avoid COMPAT_43 for clang
  • 15809 macos: Remove vestigial AFS_MOUNT_AFS references
  • 15808 LINUX: Test for rcu_read_unlock with rcu_read_lock
  • 15807 Remove almost all bcopy/bzero/bcmp calls
  • 15806 make-release: create SHA256 checksums too
  • 15805 make-release: Run git describe once
  • 15804 make-release: Create output directory if needed
  • 15803 make-release: Remove unused optional version argument
  • 15802 make-release: Clean up whitespace and spelling
  • 15801 rx: Print free and allocated counters as unsigned values
  • 15855 rx: Remove includes for MIN/MAX in rx_packet.h
  • 15850 rx: Use atomics for rx_securityClass refcounts
  • 15851 rxkad: Consolidate refCount decrement
  • 16099 Do not build shared-only libs for --disable-shared
  • 16117 libtool: Serialize building libfoo.la and libfoo.a
  • 16092 tests: Fix manpage tests for objdir builds
  • 16091 tests: Fix most tests for objdir builds
  • 16098 Pass -shared when linking some shared libraries
  • 16026 doc: Add section 3 man pages to AdminRef
  • 16118 doc: Add AdminRef .gitignore file
  • 16027 doc: Fix doc/xml for objdir builds
  • 16025 doc: Sort man page entries in AdminRef
  • 16115 doc: Look in $srcdir for documentation sources

Stable Wish List

The following have been submitted to openafs-stable-1_8_x for inclusion in a future release:

  • FreeBSD
    • 16178 Remove osi_GetTime from param.i386_dfbsd_23.h
    • 16177 FBSD: Ignore src/libafs/kconf-GENERIC
    • 16176 FBSD: Build support for FreeBSD 14.0 and 14.1
    • 16175 FBSD: Fix typo in .gitignore for FreeBSD built products directory
    • 16174 FBSD: Handle missing vnode.v_tag
    • 16173 FBSD: Cast afs_symlink target to char*
    • 16172 FBSD: Avoid if_addr_rlock() when needed
    • 16171 FBSD: Handle 1-arg NET_EPOCH_ENTER
    • 16170 FBSD: Avoid requiring VI_FREE
    • 16169 FBSD: Use UMA allocations instead of getpbuf()
    • 16168 FBSD: Handle 1-argument VOP_UNLOCK
    • 16167 FBSD: Use VN_IS_DOOMED when available
    • 16165 FBSD: Use VFS_VOP_VECTOR_REGISTER
    • 16164 FBSD: Handle 2-arg vget()
    • 16163 FBSD: Set IN_HISTORICAL_NETS before netinet/in.h
    • 16161 FBSD: Build support for FreeBSD 13
    • 16160 FBSD: Avoid extra vcache puts in afs_root
    • 16159 FBSD: Use vrefl() when available
    • 16158 FBSD: Handle amd64 in host triplet
    • 16157 FBSD: Check VOP_ISLOCKED for LK_EXCLUSIVE
  • Vol-update-locking (bug fixes)
    • 16202 volser: Lock entry properly in UV_RestoreVolume2
    • 16201 volser: remove check for VL_ENTDELETED
    • 16200 volser: Always fetch locked entry in CheckVolume
    • 16388 volser: Avoid uninitialized 'code' in CheckVolume
    • 16199 volser: Split CheckVolume into RW/RO/BK functions
    • 16208 volser: Blank all 'struct nvldbentry's before use
    • 16198 volser: clean up and clarify storeEntry usage
    • 16197 volser: Use GetLockedEntry in UV_ReleaseVolume
    • 16196 volser: Introduce GetLockedEntry
    • 16194 volser: document 'vos restore -readonly' restriction
    • 16193 volser: improve error checking for 'vos restore'
    • 16192 volser: fix 'cant' typos
  • 16285 viced: Remove RXAFS_GetVolumeInfo implementation
  • 16268 xdr: Blank non-preallocated OUT arguments
  • 16267 xdr: Set 0 _len with NULL _val
  • 16266 Always free XDR-allocated buffers
  • 16265 afs: Properly free afs_nfsclient_getcreds xdr bufs
  • 16264 afs: Use constants for vrequest.volumeError
  • 16263 pts: Use pr_NameToId in pr_SNameToId
  • 16262 afs: Always "goto out" in PGetVolumeStatus
  • 16261 afs: Avoid creating unused conns
  • 16229 rx: Check rxi_AddRpcStat currentFunc bounds
  • 16207 viced: Give an actual 'prname' to hpr_NameToId
  • 16206 viced: Protect vlConn in TryLocalVLServer
  • 16205 viced: calloc stats in SRXAFS_GetStatistics64
  • 16195 vos: avoid double release of a volume lock
  • 16129 export: Call execerror as /usr/sbin/execerror
  • 16128 export: Modernize code
  • 16127 rx: Include rx_lwp.h et al in fallback rx_atomic.h
  • 16126 rx: Use sys/atomic_op.h on AIX 4.1+
  • 16125 rx: Fix rx_atomic.h style nits

The following changes are wish list for a stable back-port. They have been merged into master and are pending back-ports to stable

Development

Next Stable Version - 1.10.x

Proposed gerrits for creating the next stable version:

Development Wish List

rxgk

Topics for discussion

  • Not requiring root access for running the openAFS servers
  • Cleanup of AFS_component_version_number

Other development wish list