summaryrefslogtreecommitdiff
path: root/fs/readdir.c
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@athlon.transmeta.com>2002-02-04 23:58:06 -0800
committerLinus Torvalds <torvalds@athlon.transmeta.com>2002-02-04 23:58:06 -0800
commite1e2cfc3fb42dbe54dd94fe97ba17a62cd7a265b (patch)
tree2cd3cb5d9f2c43fb7939bd95bdef808d113bc042 /fs/readdir.c
parent3735375e3fd2f2286c1dc2f0131f39d438ae9a5c (diff)
v2.5.0.1 -> v2.5.0.2
- Greg KH: USB update - Richard Gooch: refcounting for devfs - Jens Axboe: start of new block IO layer
Diffstat (limited to 'fs/readdir.c')
-rw-r--r--fs/readdir.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/fs/readdir.c b/fs/readdir.c
index e233d5e41943..7ec20be60a41 100644
--- a/fs/readdir.c
+++ b/fs/readdir.c
@@ -79,6 +79,10 @@ int dcache_readdir(struct file * filp, void * dirent, filldir_t filldir)
while(1) {
struct dentry *de = list_entry(list, struct dentry, d_child);
+ /*
+ * See comment on top of function on why we
+ * can just drop the lock here..
+ */
if (!list_empty(&de->d_hash) && de->d_inode) {
spin_unlock(&dcache_lock);
if (filldir(dirent, de->d_name.name, de->d_name.len, filp->f_pos, de->d_inode->i_ino, DT_UNKNOWN) < 0)