Explorar el Código

fs: use list_for_each_entry_reverse and kill sb_entry

Use list_for_each_entry_reverse for super_blocks list and remove
unused sb_entry macro.

Signed-off-by: Akinobu Mita <akinobu.mita@gmail.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Akinobu Mita hace 17 años
padre
commit
797074e44d
Se han modificado 2 ficheros con 2 adiciones y 6 borrados
  1. 2 5
      fs/fs-writeback.c
  2. 0 1
      include/linux/fs.h

+ 2 - 5
fs/fs-writeback.c

@@ -515,8 +515,7 @@ writeback_inodes(struct writeback_control *wbc)
 	might_sleep();
 	might_sleep();
 	spin_lock(&sb_lock);
 	spin_lock(&sb_lock);
 restart:
 restart:
-	sb = sb_entry(super_blocks.prev);
-	for (; sb != sb_entry(&super_blocks); sb = sb_entry(sb->s_list.prev)) {
+	list_for_each_entry_reverse(sb, &super_blocks, s_list) {
 		if (sb_has_dirty_inodes(sb)) {
 		if (sb_has_dirty_inodes(sb)) {
 			/* we're making our own get_super here */
 			/* we're making our own get_super here */
 			sb->s_count++;
 			sb->s_count++;
@@ -581,10 +580,8 @@ static void set_sb_syncing(int val)
 {
 {
 	struct super_block *sb;
 	struct super_block *sb;
 	spin_lock(&sb_lock);
 	spin_lock(&sb_lock);
-	sb = sb_entry(super_blocks.prev);
-	for (; sb != sb_entry(&super_blocks); sb = sb_entry(sb->s_list.prev)) {
+	list_for_each_entry_reverse(sb, &super_blocks, s_list)
 		sb->s_syncing = val;
 		sb->s_syncing = val;
-	}
 	spin_unlock(&sb_lock);
 	spin_unlock(&sb_lock);
 }
 }
 
 

+ 0 - 1
include/linux/fs.h

@@ -977,7 +977,6 @@ extern int send_sigurg(struct fown_struct *fown);
 extern struct list_head super_blocks;
 extern struct list_head super_blocks;
 extern spinlock_t sb_lock;
 extern spinlock_t sb_lock;
 
 
-#define sb_entry(list)	list_entry((list), struct super_block, s_list)
 #define S_BIAS (1<<30)
 #define S_BIAS (1<<30)
 struct super_block {
 struct super_block {
 	struct list_head	s_list;		/* Keep this first */
 	struct list_head	s_list;		/* Keep this first */