diff --git a/ipc/sem.c b/ipc/sem.c index 5af1943ad782b415a3dd331161e9b2ecccf89210..76e95e4f3aa284f6ded3962b3055233ea533add8 100644 --- a/ipc/sem.c +++ b/ipc/sem.c @@ -2118,7 +2118,7 @@ static long do_semtimedop(int semid, struct sembuf __user *tsops, } do { - queue.status = -EINTR; + WRITE_ONCE(queue.status, -EINTR); queue.sleeper = current; __set_current_state(TASK_INTERRUPTIBLE);