diff options
Diffstat (limited to 'fs/inode.c')
| -rw-r--r-- | fs/inode.c | 15 | 
1 files changed, 3 insertions, 12 deletions
diff --git a/fs/inode.c b/fs/inode.c index 0cd47fe0dbe5..e9d97add2b36 100644 --- a/fs/inode.c +++ b/fs/inode.c @@ -730,11 +730,8 @@ static enum lru_status inode_lru_isolate(struct list_head *item,  		return LRU_REMOVED;  	} -	/* -	 * Recently referenced inodes and inodes with many attached pages -	 * get one more pass. -	 */ -	if (inode->i_state & I_REFERENCED || inode->i_data.nrpages > 1) { +	/* recently referenced inodes get one more pass */ +	if (inode->i_state & I_REFERENCED) {  		inode->i_state &= ~I_REFERENCED;  		spin_unlock(&inode->i_lock);  		return LRU_ROTATE; @@ -2096,14 +2093,8 @@ EXPORT_SYMBOL(inode_dio_wait);  void inode_set_flags(struct inode *inode, unsigned int flags,  		     unsigned int mask)  { -	unsigned int old_flags, new_flags; -  	WARN_ON_ONCE(flags & ~mask); -	do { -		old_flags = READ_ONCE(inode->i_flags); -		new_flags = (old_flags & ~mask) | flags; -	} while (unlikely(cmpxchg(&inode->i_flags, old_flags, -				  new_flags) != old_flags)); +	set_mask_bits(&inode->i_flags, mask, flags);  }  EXPORT_SYMBOL(inode_set_flags);  |