mirror of
https://github.com/BobTheBlinker/android_kernel_motorola_sm6375.git
synced 2026-10-28 10:41:38 -04:00
Merge branch 'akpm' (patches from Andrew)
Merge third set of updates from Andrew Morton:
- the rest of MM
[ This includes getting rid of the numa hinting bits, in favor of
just generic protnone logic. Yay. - Linus ]
- core kernel
- procfs
- some of lib/ (lots of lib/ material this time)
* emailed patches from Andrew Morton <[email protected]>: (104 commits)
lib/lcm.c: replace include
lib/percpu_ida.c: remove redundant includes
lib/strncpy_from_user.c: replace module.h include
lib/stmp_device.c: replace module.h include
lib/sort.c: move include inside #if 0
lib/show_mem.c: remove redundant include
lib/radix-tree.c: change to simpler include
lib/plist.c: remove redundant include
lib/nlattr.c: remove redundant include
lib/kobject_uevent.c: remove redundant include
lib/llist.c: remove redundant include
lib/md5.c: simplify include
lib/list_sort.c: rearrange includes
lib/genalloc.c: remove redundant include
lib/idr.c: remove redundant include
lib/halfmd4.c: simplify includes
lib/dynamic_queue_limits.c: simplify includes
lib/sort.c: use simpler includes
lib/interval_tree.c: simplify includes
hexdump: make it return number of bytes placed in buffer
...
This commit is contained in:
commit
818099574b
207 changed files with 2214 additions and 1420 deletions
15
fs/inode.c
15
fs/inode.c
|
|
@ -672,8 +672,8 @@ int invalidate_inodes(struct super_block *sb, bool kill_dirty)
|
|||
* LRU does not have strict ordering. Hence we don't want to reclaim inodes
|
||||
* with this flag set because they are the inodes that are out of order.
|
||||
*/
|
||||
static enum lru_status
|
||||
inode_lru_isolate(struct list_head *item, spinlock_t *lru_lock, void *arg)
|
||||
static enum lru_status inode_lru_isolate(struct list_head *item,
|
||||
struct list_lru_one *lru, spinlock_t *lru_lock, void *arg)
|
||||
{
|
||||
struct list_head *freeable = arg;
|
||||
struct inode *inode = container_of(item, struct inode, i_lru);
|
||||
|
|
@ -691,7 +691,7 @@ inode_lru_isolate(struct list_head *item, spinlock_t *lru_lock, void *arg)
|
|||
*/
|
||||
if (atomic_read(&inode->i_count) ||
|
||||
(inode->i_state & ~I_REFERENCED)) {
|
||||
list_del_init(&inode->i_lru);
|
||||
list_lru_isolate(lru, &inode->i_lru);
|
||||
spin_unlock(&inode->i_lock);
|
||||
this_cpu_dec(nr_unused);
|
||||
return LRU_REMOVED;
|
||||
|
|
@ -725,7 +725,7 @@ inode_lru_isolate(struct list_head *item, spinlock_t *lru_lock, void *arg)
|
|||
|
||||
WARN_ON(inode->i_state & I_NEW);
|
||||
inode->i_state |= I_FREEING;
|
||||
list_move(&inode->i_lru, freeable);
|
||||
list_lru_isolate_move(lru, &inode->i_lru, freeable);
|
||||
spin_unlock(&inode->i_lock);
|
||||
|
||||
this_cpu_dec(nr_unused);
|
||||
|
|
@ -738,14 +738,13 @@ inode_lru_isolate(struct list_head *item, spinlock_t *lru_lock, void *arg)
|
|||
* to trim from the LRU. Inodes to be freed are moved to a temporary list and
|
||||
* then are freed outside inode_lock by dispose_list().
|
||||
*/
|
||||
long prune_icache_sb(struct super_block *sb, unsigned long nr_to_scan,
|
||||
int nid)
|
||||
long prune_icache_sb(struct super_block *sb, struct shrink_control *sc)
|
||||
{
|
||||
LIST_HEAD(freeable);
|
||||
long freed;
|
||||
|
||||
freed = list_lru_walk_node(&sb->s_inode_lru, nid, inode_lru_isolate,
|
||||
&freeable, &nr_to_scan);
|
||||
freed = list_lru_shrink_walk(&sb->s_inode_lru, sc,
|
||||
inode_lru_isolate, &freeable);
|
||||
dispose_list(&freeable);
|
||||
return freed;
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in a new issue