diff options
author | Jiri Slaby <jslaby@suse.cz> | 2011-07-27 01:08:47 +0200 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2011-07-27 01:49:44 +0200 |
commit | d40dcdb0172a1ba853464983a059fb45e0aaf61a (patch) | |
tree | aa785c01ad6763c92191b86ec10f526fa772b808 /ipc/ipc_sysctl.c | |
parent | ipc/mqueue.c: refactor failure handling (diff) | |
download | linux-d40dcdb0172a1ba853464983a059fb45e0aaf61a.tar.xz linux-d40dcdb0172a1ba853464983a059fb45e0aaf61a.zip |
ipc/mqueue.c: fix mq_open() return value
We return ENOMEM from mqueue_get_inode even when we have enough memory.
Namely in case the system rlimit of mqueue was reached. This error
propagates to mq_queue and user sees the error unexpectedly. So fix
this up to properly return EMFILE as described in the manpage:
EMFILE The process already has the maximum number of files and
message queues open.
instead of:
ENOMEM Insufficient memory.
With the previous patch we just switch to ERR_PTR/PTR_ERR/IS_ERR error
handling here.
Signed-off-by: Jiri Slaby <jslaby@suse.cz>
Cc: Manfred Spraul <manfred@colorfullife.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'ipc/ipc_sysctl.c')
0 files changed, 0 insertions, 0 deletions