diff --git a/[refs] b/[refs] index 8681e4c77191..18d295d34d6e 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: ad776537cc6b4b936cfd11893e7b698dfa072666 +refs/heads/master: da78451190bdaae0e67d6c96b1ec3366abc45474 diff --git a/trunk/fs/readdir.c b/trunk/fs/readdir.c index efe52e676577..4e026e5407fb 100644 --- a/trunk/fs/readdir.c +++ b/trunk/fs/readdir.c @@ -30,7 +30,10 @@ int vfs_readdir(struct file *file, filldir_t filler, void *buf) if (res) goto out; - mutex_lock(&inode->i_mutex); + res = mutex_lock_killable(&inode->i_mutex); + if (res) + goto out; + res = -ENOENT; if (!IS_DEADDIR(inode)) { res = file->f_op->readdir(file, buf, filler);