summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDavidlohr Bueso <dbueso@suse.de>2018-09-04 15:46:02 -0700
committerLinus Torvalds <torvalds@linux-foundation.org>2018-09-04 16:45:02 -0700
commit9c21dae291d1b7763b749dfaef3fb911286c0d98 (patch)
tree4170de0dc2efb45b40def8efe4d1543bf0678d87
parent464c7ffbcb164b2e5cebfa406b7fc6cdb7945344 (diff)
downloadop-kernel-dev-9c21dae291d1b7763b749dfaef3fb911286c0d98.zip
op-kernel-dev-9c21dae291d1b7763b749dfaef3fb911286c0d98.tar.gz
ipc/shm: properly return EIDRM in shm_lock()
When getting rid of the general ipc_lock(), this was missed furthermore, making the comment around the ipc object validity check bogus. Under EIDRM conditions, callers will in turn not see the error and continue with the operation. Link: http://lkml.kernel.org/r/20180824030920.GD3677@linux-r8p5 Link: http://lkml.kernel.org/r/20180823024051.GC13343@shao2-debian Fixes: 82061c57ce9 ("ipc: drop ipc_lock()") Signed-off-by: Davidlohr Bueso <dbueso@suse.de> Reported-by: kernel test robot <rong.a.chen@intel.com> Cc: Manfred Spraul <manfred@colorfullife.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
-rw-r--r--ipc/shm.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/ipc/shm.c b/ipc/shm.c
index b0eb375..4cd402e 100644
--- a/ipc/shm.c
+++ b/ipc/shm.c
@@ -199,6 +199,7 @@ static inline struct shmid_kernel *shm_lock(struct ipc_namespace *ns, int id)
}
ipc_unlock_object(ipcp);
+ ipcp = ERR_PTR(-EIDRM);
err:
rcu_read_unlock();
/*
OpenPOWER on IntegriCloud