X-Git-Url: https://git.proxmox.com/?a=blobdiff_plain;f=mm%2Fworkingset.c;h=ac839fca0e76ae3cc5a025684cb1516301922d92;hb=8557b8e43a1de99b12b0d61384742e0d5d0adf84;hp=79ed5364375d3385824091b7a0d944e2f22539f7;hpb=7067739df23ffd641ca99c967830e0ed2ba39eab;p=mirror_ubuntu-bionic-kernel.git diff --git a/mm/workingset.c b/mm/workingset.c index 79ed5364375d..ac839fca0e76 100644 --- a/mm/workingset.c +++ b/mm/workingset.c @@ -355,10 +355,8 @@ void workingset_update_node(struct radix_tree_node *node, void *private) * as node->private_list is protected by &mapping->tree_lock. */ if (node->count && node->count == node->exceptional) { - if (list_empty(&node->private_list)) { - node->private_data = mapping; + if (list_empty(&node->private_list)) list_lru_add(&shadow_nodes, &node->private_list); - } } else { if (!list_empty(&node->private_list)) list_lru_del(&shadow_nodes, &node->private_list); @@ -436,7 +434,7 @@ static enum lru_status shadow_lru_isolate(struct list_head *item, */ node = container_of(item, struct radix_tree_node, private_list); - mapping = node->private_data; + mapping = container_of(node->root, struct address_space, page_tree); /* Coming from the list, invert the lock order */ if (!spin_trylock(&mapping->tree_lock)) {