diff options
Diffstat (limited to 'fs/seq_file.c')
| -rw-r--r-- | fs/seq_file.c | 8 | 
1 files changed, 6 insertions, 2 deletions
diff --git a/fs/seq_file.c b/fs/seq_file.c index 14cf9de1dbe..9d863fb501f 100644 --- a/fs/seq_file.c +++ b/fs/seq_file.c @@ -9,6 +9,7 @@  #include <linux/export.h>  #include <linux/seq_file.h>  #include <linux/slab.h> +#include <linux/cred.h>  #include <asm/uaccess.h>  #include <asm/page.h> @@ -56,6 +57,9 @@ int seq_open(struct file *file, const struct seq_operations *op)  	memset(p, 0, sizeof(*p));  	mutex_init(&p->lock);  	p->op = op; +#ifdef CONFIG_USER_NS +	p->user_ns = file->f_cred->user_ns; +#endif  	/*  	 * Wrappers around seq_open(e.g. swaps_open) need to be @@ -296,14 +300,14 @@ EXPORT_SYMBOL(seq_read);   *   *	Ready-made ->f_op->llseek()   */ -loff_t seq_lseek(struct file *file, loff_t offset, int origin) +loff_t seq_lseek(struct file *file, loff_t offset, int whence)  {  	struct seq_file *m = file->private_data;  	loff_t retval = -EINVAL;  	mutex_lock(&m->lock);  	m->version = file->f_version; -	switch (origin) { +	switch (whence) {  		case 1:  			offset += file->f_pos;  		case 0:  |