[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>
This commit is contained in:
Domen Puncer 2005-09-10 00:27:07 -07:00 committed by Linus Torvalds
parent fdadd65fbc
commit 0cdca3f980

View File

@ -337,12 +337,10 @@ struct dentry * d_find_alias(struct inode *inode)
*/ */
void d_prune_aliases(struct inode *inode) void d_prune_aliases(struct inode *inode)
{ {
struct list_head *tmp, *head = &inode->i_dentry; struct dentry *dentry;
restart: restart:
spin_lock(&dcache_lock); spin_lock(&dcache_lock);
tmp = head; list_for_each_entry(dentry, &inode->i_dentry, d_alias) {
while ((tmp = tmp->next) != head) {
struct dentry *dentry = list_entry(tmp, struct dentry, d_alias);
spin_lock(&dentry->d_lock); spin_lock(&dentry->d_lock);
if (!atomic_read(&dentry->d_count)) { if (!atomic_read(&dentry->d_count)) {
__dget_locked(dentry); __dget_locked(dentry);
@ -463,10 +461,7 @@ void shrink_dcache_sb(struct super_block * sb)
* superblock to the most recent end of the unused list. * superblock to the most recent end of the unused list.
*/ */
spin_lock(&dcache_lock); spin_lock(&dcache_lock);
next = dentry_unused.next; list_for_each_safe(tmp, next, &dentry_unused) {
while (next != &dentry_unused) {
tmp = next;
next = tmp->next;
dentry = list_entry(tmp, struct dentry, d_lru); dentry = list_entry(tmp, struct dentry, d_lru);
if (dentry->d_sb != sb) if (dentry->d_sb != sb)
continue; continue;
@ -478,10 +473,7 @@ void shrink_dcache_sb(struct super_block * sb)
* Pass two ... free the dentries for this superblock. * Pass two ... free the dentries for this superblock.
*/ */
repeat: repeat:
next = dentry_unused.next; list_for_each_safe(tmp, next, &dentry_unused) {
while (next != &dentry_unused) {
tmp = next;
next = tmp->next;
dentry = list_entry(tmp, struct dentry, d_lru); dentry = list_entry(tmp, struct dentry, d_lru);
if (dentry->d_sb != sb) if (dentry->d_sb != sb)
continue; continue;