diff options
Diffstat (limited to 'fs/9p/vfs_dir.c')
| -rw-r--r-- | fs/9p/vfs_dir.c | 3 | 
1 files changed, 3 insertions, 0 deletions
| diff --git a/fs/9p/vfs_dir.c b/fs/9p/vfs_dir.c index d8a3afe4ff72..0adfd64dfcee 100644 --- a/fs/9p/vfs_dir.c +++ b/fs/9p/vfs_dir.c | |||
| @@ -32,6 +32,7 @@ | |||
| 32 | #include <linux/sched.h> | 32 | #include <linux/sched.h> | 
| 33 | #include <linux/inet.h> | 33 | #include <linux/inet.h> | 
| 34 | #include <linux/idr.h> | 34 | #include <linux/idr.h> | 
| 35 | #include <linux/slab.h> | ||
| 35 | #include <net/9p/9p.h> | 36 | #include <net/9p/9p.h> | 
| 36 | #include <net/9p/client.h> | 37 | #include <net/9p/client.h> | 
| 37 | 38 | ||
| @@ -130,6 +131,8 @@ static int v9fs_dir_readdir(struct file *filp, void *dirent, filldir_t filldir) | |||
| 130 | rdir = (struct p9_rdir *) fid->rdir; | 131 | rdir = (struct p9_rdir *) fid->rdir; | 
| 131 | 132 | ||
| 132 | err = mutex_lock_interruptible(&rdir->mutex); | 133 | err = mutex_lock_interruptible(&rdir->mutex); | 
| 134 | if (err) | ||
| 135 | return err; | ||
| 133 | while (err == 0) { | 136 | while (err == 0) { | 
| 134 | if (rdir->tail == rdir->head) { | 137 | if (rdir->tail == rdir->head) { | 
| 135 | err = v9fs_file_readn(filp, rdir->buf, NULL, | 138 | err = v9fs_file_readn(filp, rdir->buf, NULL, | 
