diff --git a/LibOS/shim/test/regression/mmap-file.c b/LibOS/shim/test/regression/mmap-file.c index 2fdb8823..125c81f4 100644 --- a/LibOS/shim/test/regression/mmap-file.c +++ b/LibOS/shim/test/regression/mmap-file.c @@ -6,7 +6,7 @@ #include #include -const char* message; +static const char* message; void SIGBUS_handler(int sig) { puts(message); @@ -79,6 +79,8 @@ int main(int argc, const char** argv) { } message = pid == 0 ? "mmap test 5 passed\n" : "mmap test 8 passed\n"; + /* need a barrier to assign message before SIGBUS due to a[4096] */ + asm volatile ("nop" ::: "memory"); a[4096] = 0xff; if (signal(SIGBUS, SIG_DFL) == SIG_ERR) {