From f230eda87f33c31a3f69fc6c83cf2e77bbecaed2 Mon Sep 17 00:00:00 2001 From: Derrick Brashear Date: Thu, 6 Sep 2012 14:28:04 -0400 Subject: [PATCH] rx: initialize mutexes from globals in order to work around stupidity from macos linker. same fix as was needed in 0559a23d38f98280e2eb1c1e2fc91ae7a1798537 Change-Id: Idb78abd74eef45cb3c9b212647dd6722c98e0cd5 Reviewed-on: http://gerrit.openafs.org/8051 Reviewed-by: Derrick Brashear Tested-by: Derrick Brashear --- src/rx/rx_globals.c | 6 ++++++ src/rx/rx_globals.h | 11 ++++++----- 2 files changed, 12 insertions(+), 5 deletions(-) diff --git a/src/rx/rx_globals.c b/src/rx/rx_globals.c index baecede1e..4902d282a 100644 --- a/src/rx/rx_globals.c +++ b/src/rx/rx_globals.c @@ -26,9 +26,15 @@ #if defined(AFS_NT40_ENV) && defined(AFS_PTHREAD_ENV) #define EXT __declspec(dllexport) #define EXT2 __declspec(dllexport) +#define POSTAMBLE #else #define EXT #define EXT2 +#ifdef AFS_PTHREAD_ENV +#define POSTAMBLE =PTHREAD_MUTEX_INITIALIZER +#else +#define POSTAMBLE +#endif #endif #ifdef KERNEL diff --git a/src/rx/rx_globals.h b/src/rx/rx_globals.h index 025e6765a..16d6fce23 100644 --- a/src/rx/rx_globals.h +++ b/src/rx/rx_globals.h @@ -21,6 +21,7 @@ #ifndef GLOBALSINIT #define GLOBALSINIT(x) +#define POSTAMBLE #if defined(AFS_NT40_ENV) #define RX_STATS_INTERLOCKED 1 #if defined(AFS_PTHREAD_ENV) @@ -602,11 +603,11 @@ EXT pthread_key_t rx_thread_id_key; #endif #if defined(RX_ENABLE_LOCKS) -EXT afs_kmutex_t rx_waiting_mutex; /* used to protect waiting counters */ -EXT afs_kmutex_t rx_quota_mutex; /* used to protect quota counters */ -EXT afs_kmutex_t rx_pthread_mutex; /* used to protect pthread counters */ -EXT afs_kmutex_t rx_packets_mutex; /* used to protect packet counters */ -EXT afs_kmutex_t rx_refcnt_mutex; /* used to protect conn/call ref counts */ +EXT afs_kmutex_t rx_waiting_mutex POSTAMBLE; /* used to protect waiting counters */ +EXT afs_kmutex_t rx_quota_mutex POSTAMBLE; /* used to protect quota counters */ +EXT afs_kmutex_t rx_pthread_mutex POSTAMBLE; /* used to protect pthread counters */ +EXT afs_kmutex_t rx_packets_mutex POSTAMBLE; /* used to protect packet counters */ +EXT afs_kmutex_t rx_refcnt_mutex POSTAMBLE; /* used to protect conn/call ref counts */ #endif EXT int rx_enable_stats GLOBALSINIT(0); -- 2.39.5