Commit 551c643f authored by Pedro Falcato's avatar Pedro Falcato Committed by Andrew Morton
Browse files

mm: workingset: simplify lockdep check in update_node

container_of(node->array, ..., i_pages) just to access i_pages again is an
incredibly roundabout way of accessing node->array itself.  Simplify it.

Link: https://lkml.kernel.org/r/20250421-workingset-simplify-v1-1-de5c40051e0e@suse.de


Signed-off-by: default avatarPedro Falcato <pfalcato@suse.de>
Reviewed-by: default avatarMatthew Wilcox (Oracle) <willy@infradead.org>
Acked-by: default avatarJohannes Weiner <hannes@cmpxchg.org>
Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
parent 31cf0dd9
Loading
Loading
Loading
Loading
+1 −3
Original line number Diff line number Diff line
@@ -612,7 +612,6 @@ struct list_lru shadow_nodes;

void workingset_update_node(struct xa_node *node)
{
	struct address_space *mapping;
	struct page *page = virt_to_page(node);

	/*
@@ -623,8 +622,7 @@ void workingset_update_node(struct xa_node *node)
	 * already where they should be. The list_empty() test is safe
	 * as node->private_list is protected by the i_pages lock.
	 */
	mapping = container_of(node->array, struct address_space, i_pages);
	lockdep_assert_held(&mapping->i_pages.xa_lock);
	lockdep_assert_held(&node->array->xa_lock);

	if (node->count && node->count == node->nr_values) {
		if (list_empty(&node->private_list)) {