[SCSI] qla2xxx: Pass in optional extended-initialization control block.
[firefly-linux-kernel-4.4.55.git] / fs / drop_caches.c
index 50f9087635d81e3ddd040d27af494b52540a0506..b6a719a909f8eee1829764ea770e879c1c9c73fe 100644 (file)
@@ -18,7 +18,9 @@ static void drop_pagecache_sb(struct super_block *sb)
 
        spin_lock(&inode_lock);
        list_for_each_entry(inode, &sb->s_inodes, i_sb_list) {
-               if (inode->i_state & (I_FREEING|I_WILL_FREE))
+               if (inode->i_state & (I_FREEING|I_CLEAR|I_WILL_FREE|I_NEW))
+                       continue;
+               if (inode->i_mapping->nrpages == 0)
                        continue;
                __iget(inode);
                spin_unlock(&inode_lock);