]> rtime.felk.cvut.cz Git - zynq/linux.git/blobdiff - mm/truncate.c
Apply preempt_rt patch-4.9-rt1.patch.xz
[zynq/linux.git] / mm / truncate.c
index 8d8c62d89e6d101bce9373c20258d1bbc9df7fa2..5bf1bd25d07791b59d4c6a03acc77a96f70e4a0a 100644 (file)
@@ -62,9 +62,12 @@ static void clear_exceptional_entry(struct address_space *mapping,
         * protected by mapping->tree_lock.
         */
        if (!workingset_node_shadows(node) &&
-           !list_empty(&node->private_list))
-               list_lru_del(&workingset_shadow_nodes,
+           !list_empty(&node->private_list)) {
+               local_lock(workingset_shadow_lock);
+               list_lru_del(&__workingset_shadow_nodes,
                                &node->private_list);
+               local_unlock(workingset_shadow_lock);
+       }
        __radix_tree_delete_node(&mapping->page_tree, node);
 unlock:
        spin_unlock_irq(&mapping->tree_lock);