OpenAFS Master Repository branch, master, updated. openafs-devel-1_9_2-64-g18b4243
Gerrit Code Review
gerrit@openafs.org
Wed, 8 Jan 2025 11:33:10 -0500
The following commit has been merged in the master branch:
commit 18b4243772c361c460ee255f7ddabbecbee5071c
Author: Andrew Deason <adeason@sinenomine.net>
Date: Tue Jan 7 16:25:35 2025 -0600
rx: Include rx_lwp.h et al in fallback rx_atomic.h
In rx_atomic.h, our "fallback" implementation of atomics uses a global
lock, using our afs_kmutex_t/MUTEX_ENTER() abstractions, but rx_atomic.h
doesn't include any headers to define afs_kmutex_t et al. Most callers
include rx_lwp.h or an equivalent before rx_atomic.h, but this is not
guaranteed, and tests/rx/atomic-t.c (for example) does not do this.
If someone tries to build OpenAFS on a platform that doesn't have a more
specific rx atomic implementation, this means that building atomic-t
fails:
In file included from /.../tests/rx/atomic-t.c:34:
/.../include/rx/rx_atomic.h: In function ‘rx_atomic_set’:
/.../include/rx/rx_atomic.h:402:5: error: implicit declaration of function ‘MUTEX_ENTER’ [-Werror=implicit-function-declaration]
MUTEX_ENTER(&rx_atomic_mutex);
^~~~~~~~~~~
/.../include/rx/rx_atomic.h:402:18: error: ‘rx_atomic_mutex’ undeclared (first use in this function); did you mean ‘rx_atomic_set’?
MUTEX_ENTER(&rx_atomic_mutex);
^~~~~~~~~~~~~~~
rx_atomic_set
To fix this, include rx_lwp.h in the "fallback" branch of rx_atomic.h
(or rx_kmutex.h for the kernel, or rx_pthread.h for pthreads). This
should ensure that our locking abstractions are defined appropriately so
we can use the rx_atomic_mutex global lock.
Change-Id: Ie281161f4920a5b6b5b23acd77f7677806245673
Reviewed-on: https://gerrit.openafs.org/16062
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Ben Huntsman <ben@huntsmans.net>
Tested-by: Ben Huntsman <ben@huntsmans.net>
Reviewed-by: Marcio Brito Barbosa <mbarbosa@sinenomine.net>
Reviewed-by: Mark Vitale <mvitale@sinenomine.net>
Reviewed-by: Cheyenne Wills <cwills@sinenomine.net>
Reviewed-by: Michael Meffie <mmeffie@sinenomine.net>
Reviewed-by: Andrew Deason <adeason@sinenomine.net>
src/rx/rx_atomic.h | 8 ++++++++
1 file changed, 8 insertions(+)
--
OpenAFS Master Repository