summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMatthias Kaehlcke <matthias.kaehlcke@gmail.com>2007-10-18 23:39:57 -0700
committerLinus Torvalds <torvalds@woody.linux-foundation.org>2007-10-19 11:53:38 -0700
commitd473012710b815741043942bc41945d444abab40 (patch)
tree2659d02d710659a30f8244aeaf7dc70fd3d259ed
parentb70c394099851c1398e9fd0fd64cf13ef2d093a1 (diff)
fs/super.c: use list_for_each_entry() instead of list_for_each()
fs/super.c: use list_for_each_entry() instead of list_for_each() in sget() [akpm@linux-foundation.org: clean up some crap while we're there] Signed-off-by: Matthias Kaehlcke <matthias.kaehlcke@gmail.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
-rw-r--r--fs/super.c22
1 files changed, 11 insertions, 11 deletions
diff --git a/fs/super.c b/fs/super.c
index d62629c6c0cb..feaae7eeaffd 100644
--- a/fs/super.c
+++ b/fs/super.c
@@ -332,21 +332,21 @@ struct super_block *sget(struct file_system_type *type,
void *data)
{
struct super_block *s = NULL;
- struct list_head *p;
+ struct super_block *old;
int err;
retry:
spin_lock(&sb_lock);
- if (test) list_for_each(p, &type->fs_supers) {
- struct super_block *old;
- old = list_entry(p, struct super_block, s_instances);
- if (!test(old, data))
- continue;
- if (!grab_super(old))
- goto retry;
- if (s)
- destroy_super(s);
- return old;
+ if (test) {
+ list_for_each_entry(old, &type->fs_supers, s_instances) {
+ if (!test(old, data))
+ continue;
+ if (!grab_super(old))
+ goto retry;
+ if (s)
+ destroy_super(s);
+ return old;
+ }
}
if (!s) {
spin_unlock(&sb_lock);