git://git.onelab.eu
/
linux-2.6.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
This commit was manufactured by cvs2svn to create tag
[linux-2.6.git]
/
fs
/
seq_file.c
diff --git
a/fs/seq_file.c
b/fs/seq_file.c
index
5a73e08
..
8bd7097
100644
(file)
--- a/
fs/seq_file.c
+++ b/
fs/seq_file.c
@@
-35,9
+35,6
@@
int seq_open(struct file *file, struct seq_operations *op)
sema_init(&p->sem, 1);
p->op = op;
file->private_data = p;
sema_init(&p->sem, 1);
p->op = op;
file->private_data = p;
-
- /* SEQ files support lseek, but not pread/pwrite */
- file->f_mode &= ~(FMODE_PREAD | FMODE_PWRITE);
return 0;
}
EXPORT_SYMBOL(seq_open);
return 0;
}
EXPORT_SYMBOL(seq_open);
@@
-57,6
+54,9
@@
ssize_t seq_read(struct file *file, char __user *buf, size_t size, loff_t *ppos)
void *p;
int err = 0;
void *p;
int err = 0;
+ if (ppos != &file->f_pos)
+ return -EPIPE;
+
down(&m->sem);
/* grab buffer if we didn't have one */
if (!m->buf) {
down(&m->sem);
/* grab buffer if we didn't have one */
if (!m->buf) {