This commit was manufactured by cvs2svn to create tag
[linux-2.6.git] / fs / seq_file.c
index 5a73e08..8bd7097 100644 (file)
@@ -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;
-
-       /* SEQ files support lseek, but not pread/pwrite */
-       file->f_mode &= ~(FMODE_PREAD | FMODE_PWRITE);
        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;
 
+       if (ppos != &file->f_pos)
+               return -EPIPE;
+
        down(&m->sem);
        /* grab buffer if we didn't have one */
        if (!m->buf) {