diff options
Diffstat (limited to 'kernel/dir.c')
-rw-r--r-- | kernel/dir.c | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/kernel/dir.c b/kernel/dir.c index 3258d42..8c161b6 100644 --- a/kernel/dir.c +++ b/kernel/dir.c @@ -837,7 +837,12 @@ static int fuse_readdir(struct file *file, void *dstbuf, filldir_t filldir) struct page *page; struct inode *inode = file->f_dentry->d_inode; struct fuse_conn *fc = get_fuse_conn(inode); - struct fuse_req *req = fuse_get_request(fc); + struct fuse_req *req; + + if (is_bad_inode(inode)) + return -EIO; + + req = fuse_get_request(fc); if (!req) return -EINTR; |