diff options
author | Valentine Barshak <vbarshak@ru.mvista.com> | 2006-01-08 04:03:44 -0500 |
---|---|---|
committer | Linus Torvalds <torvalds@g5.osdl.org> | 2006-01-08 23:14:00 -0500 |
commit | 87ba81dba431232548ce29d5d224115d0c2355ac (patch) | |
tree | d836d85ff9bfe404adf3975d4a2c8ee135f9392e /mm/fadvise.c | |
parent | 99aef427e206f4ae7dcf0b18f66416145fea5d20 (diff) |
[PATCH] fadvise: return ESPIPE on FIFO/pipe
The patch makes posix_fadvise return ESPIPE on FIFO/pipe in order to be
fully POSIX-compliant.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Diffstat (limited to 'mm/fadvise.c')
-rw-r--r-- | mm/fadvise.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/mm/fadvise.c b/mm/fadvise.c index 5f19e87bc5af..d257c89e7704 100644 --- a/mm/fadvise.c +++ b/mm/fadvise.c | |||
@@ -37,6 +37,11 @@ asmlinkage long sys_fadvise64_64(int fd, loff_t offset, loff_t len, int advice) | |||
37 | if (!file) | 37 | if (!file) |
38 | return -EBADF; | 38 | return -EBADF; |
39 | 39 | ||
40 | if (S_ISFIFO(file->f_dentry->d_inode->i_mode)) { | ||
41 | ret = -ESPIPE; | ||
42 | goto out; | ||
43 | } | ||
44 | |||
40 | mapping = file->f_mapping; | 45 | mapping = file->f_mapping; |
41 | if (!mapping || len < 0) { | 46 | if (!mapping || len < 0) { |
42 | ret = -EINVAL; | 47 | ret = -EINVAL; |