summaryrefslogtreecommitdiff
path: root/libgps_shm.c
diff options
context:
space:
mode:
authorBeat Bolli <bbolli@ewanet.ch>2011-03-27 15:29:20 +0200
committerEric S. Raymond <esr@thyrsus.com>2011-03-27 11:13:52 -0400
commit8118ed642d8d2d046684d5ce596206698127dc4b (patch)
tree1ecbbb0312cce095f3904901b9f82f697b277c72 /libgps_shm.c
parenteb790f2bc68723811d1a6b0e4095c9fc1e0f75e5 (diff)
downloadgpsd-8118ed642d8d2d046684d5ce596206698127dc4b.tar.gz
Move the memory barrier instructions into the header file
This allows adding other compilers and/or architectures later as needed. Signed-off-by: Eric S. Raymond <esr@thyrsus.com>
Diffstat (limited to 'libgps_shm.c')
-rw-r--r--libgps_shm.c8
1 files changed, 2 insertions, 6 deletions
diff --git a/libgps_shm.c b/libgps_shm.c
index 56fe5e5a..8c90f524 100644
--- a/libgps_shm.c
+++ b/libgps_shm.c
@@ -66,15 +66,11 @@ int gps_shm_read(struct gps_data_t *gpsdata)
* get clobbered first and the data can be detected as bad.
*/
before = shared->bookend1;
-#ifndef S_SPLINT_S
- asm volatile("sfence");
-#endif /* S_SPLINT_S */
+ barrier();
(void)memcpy((void *)gpsdata,
(void *)&shared->gpsdata,
sizeof(struct gps_data_t));
-#ifndef S_SPLINT_S
- asm volatile("sfence");
-#endif /* S_SPLINT_S */
+ barrier();
after = shared->bookend2;
/*@i1@*/gpsdata->privdata = shared;