rx: Statically check rx_statisticsAtomic size
[openafs.git] / src / rx / rx_stats.c
index a51a972..2daa548 100644 (file)
 #include <afsconfig.h>
 #include <afs/param.h>
 
-#include <string.h>
+#if !defined(KERNEL)
+#include <roken.h>
+#endif
+#include <afs/opr.h>
 
+#ifdef KERNEL
+/* no kmutex, no atomic emulation...*/
+#include "rx/rx_kcommon.h"
+#else
 #include "rx.h"
+#endif
 #include "rx_atomic.h"
 #include "rx_stats.h"
 
@@ -59,7 +67,9 @@ struct rx_statisticsAtomic rx_stats;
 struct rx_statistics *
 rx_GetStatistics(void) {
     struct rx_statistics *stats = rxi_Alloc(sizeof(struct rx_statistics));
+
     MUTEX_ENTER(&rx_stats_mutex);
+    opr_StaticAssert(sizeof(*stats) == sizeof(rx_stats));
     memcpy(stats, &rx_stats, sizeof(struct rx_statistics));
     MUTEX_EXIT(&rx_stats_mutex);