diff options
author | Domen Puncer <domen@coderock.org> | 2005-09-10 03:27:07 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@g5.osdl.org> | 2005-09-10 13:06:32 -0400 |
commit | 0cdca3f9806a3dbaa07b5e8175000cd513ba92d4 (patch) | |
tree | 2235a2065509b74eff9d94ffcdbc8d9371f5b5ab /fs/dcache.c | |
parent | fdadd65fbce0ff966cb8e74247d9636f52a7fc7a (diff) |
[PATCH] janitor: fs/dcache.c: list_for_each*
First one is list_for_each_entry (thanks maks), second 2 list_for_each_safe.
Signed-off-by: Maximilian Attems <janitor@sternwelten.at>
Signed-off-by: Domen Puncer <domen@coderock.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Diffstat (limited to 'fs/dcache.c')
-rw-r--r-- | fs/dcache.c | 16 |
1 files changed, 4 insertions, 12 deletions
diff --git a/fs/dcache.c b/fs/dcache.c index a15a2e1f5520..7376b61269fb 100644 --- a/fs/dcache.c +++ b/fs/dcache.c | |||
@@ -337,12 +337,10 @@ struct dentry * d_find_alias(struct inode *inode) | |||
337 | */ | 337 | */ |
338 | void d_prune_aliases(struct inode *inode) | 338 | void d_prune_aliases(struct inode *inode) |
339 | { | 339 | { |
340 | struct list_head *tmp, *head = &inode->i_dentry; | 340 | struct dentry *dentry; |
341 | restart: | 341 | restart: |
342 | spin_lock(&dcache_lock); | 342 | spin_lock(&dcache_lock); |
343 | tmp = head; | 343 | list_for_each_entry(dentry, &inode->i_dentry, d_alias) { |
344 | while ((tmp = tmp->next) != head) { | ||
345 | struct dentry *dentry = list_entry(tmp, struct dentry, d_alias); | ||
346 | spin_lock(&dentry->d_lock); | 344 | spin_lock(&dentry->d_lock); |
347 | if (!atomic_read(&dentry->d_count)) { | 345 | if (!atomic_read(&dentry->d_count)) { |
348 | __dget_locked(dentry); | 346 | __dget_locked(dentry); |
@@ -463,10 +461,7 @@ void shrink_dcache_sb(struct super_block * sb) | |||
463 | * superblock to the most recent end of the unused list. | 461 | * superblock to the most recent end of the unused list. |
464 | */ | 462 | */ |
465 | spin_lock(&dcache_lock); | 463 | spin_lock(&dcache_lock); |
466 | next = dentry_unused.next; | 464 | list_for_each_safe(tmp, next, &dentry_unused) { |
467 | while (next != &dentry_unused) { | ||
468 | tmp = next; | ||
469 | next = tmp->next; | ||
470 | dentry = list_entry(tmp, struct dentry, d_lru); | 465 | dentry = list_entry(tmp, struct dentry, d_lru); |
471 | if (dentry->d_sb != sb) | 466 | if (dentry->d_sb != sb) |
472 | continue; | 467 | continue; |
@@ -478,10 +473,7 @@ void shrink_dcache_sb(struct super_block * sb) | |||
478 | * Pass two ... free the dentries for this superblock. | 473 | * Pass two ... free the dentries for this superblock. |
479 | */ | 474 | */ |
480 | repeat: | 475 | repeat: |
481 | next = dentry_unused.next; | 476 | list_for_each_safe(tmp, next, &dentry_unused) { |
482 | while (next != &dentry_unused) { | ||
483 | tmp = next; | ||
484 | next = tmp->next; | ||
485 | dentry = list_entry(tmp, struct dentry, d_lru); | 477 | dentry = list_entry(tmp, struct dentry, d_lru); |
486 | if (dentry->d_sb != sb) | 478 | if (dentry->d_sb != sb) |
487 | continue; | 479 | continue; |