aboutsummaryrefslogtreecommitdiffstats
path: root/ipc/mqueue.c
diff options
context:
space:
mode:
authorDavid S. Miller <davem@davemloft.net>2009-03-27 17:19:16 -0700
committerDavid S. Miller <davem@davemloft.net>2009-03-27 17:19:16 -0700
commita83398570e17af6bb81eb94f4f5dd356bd2828d8 (patch)
tree5b5c7c3a56898485479291b7c964a1f3887d469c /ipc/mqueue.c
parentsparc64: Fix MM refcount check in smp_flush_tlb_pending(). (diff)
parenti915: fix wrong 'size_t' format string (diff)
downloadlinux-dev-a83398570e17af6bb81eb94f4f5dd356bd2828d8.tar.xz
linux-dev-a83398570e17af6bb81eb94f4f5dd356bd2828d8.zip
Merge branch 'master' of /home/davem/src/GIT/linux-2.6/
Diffstat (limited to 'ipc/mqueue.c')
-rw-r--r--ipc/mqueue.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/ipc/mqueue.c b/ipc/mqueue.c
index 54b4077fed79..a8ddadbc7459 100644
--- a/ipc/mqueue.c
+++ b/ipc/mqueue.c
@@ -1156,10 +1156,12 @@ SYSCALL_DEFINE3(mq_getsetattr, mqd_t, mqdes,
omqstat.mq_flags = filp->f_flags & O_NONBLOCK;
if (u_mqstat) {
audit_mq_getsetattr(mqdes, &mqstat);
+ spin_lock(&filp->f_lock);
if (mqstat.mq_flags & O_NONBLOCK)
filp->f_flags |= O_NONBLOCK;
else
filp->f_flags &= ~O_NONBLOCK;
+ spin_unlock(&filp->f_lock);
inode->i_atime = inode->i_ctime = CURRENT_TIME;
}