Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > linux.kernel > #1419623
| From | Peter Zijlstra <peterz@infradead.org> |
|---|---|
| Newsgroups | linux.kernel |
| Subject | Re: [PATCH 02/27] mm, vmscan: Move lru_lock to the node |
| Date | 2016-06-10 19:50 +0200 |
| Message-ID | <rIyJc-7Ck-23@gated-at.bofh.it> (permalink) |
| References | <rIcyZ-1vR-3@gated-at.bofh.it> <rIcyZ-1vR-13@gated-at.bofh.it> <rIxDs-6XO-25@gated-at.bofh.it> |
| Organization | linux.* mail to news gateway |
On Fri, Jun 10, 2016 at 06:39:26PM +0200, Vlastimil Babka wrote: > On 06/09/2016 08:04 PM, Mel Gorman wrote: > > Node-based reclaim requires node-based LRUs and locking. This is a > > preparation patch that just moves the lru_lock to the node so later patches > > are easier to review. It is a mechanical change but note this patch makes > > contention worse because the LRU lock is hotter and direct reclaim and kswapd > > can contend on the same lock even when reclaiming from different zones. > > > > Signed-off-by: Mel Gorman <mgorman@techsingularity.net> > > Acked-by: Johannes Weiner <hannes@cmpxchg.org> > > Acked-by: Vlastimil Babka <vbabka@suse.cz> > > One thing... > > > diff --git a/mm/page_alloc.c b/mm/page_alloc.c > > index 9d71af25acf9..1e0ad06c33bd 100644 > > --- a/mm/page_alloc.c > > +++ b/mm/page_alloc.c > > @@ -5944,10 +5944,10 @@ static void __paginginit free_area_init_core(struct pglist_data *pgdat) > > zone->min_slab_pages = (freesize * sysctl_min_slab_ratio) / 100; > > #endif > > zone->name = zone_names[j]; > > + zone->zone_pgdat = pgdat; > > spin_lock_init(&zone->lock); > > - spin_lock_init(&zone->lru_lock); > > + spin_lock_init(zone_lru_lock(zone)); > > This means the same lock will be inited MAX_NR_ZONES times. Peterz told > me it's valid but weird. Probably better to do it just once, in case > lockdep/lock debugging gains some checks for that? Ah, I thought you meant using spin_lock_init() after the lock has already been used. This is fine.
Back to linux.kernel | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread
[PATCH 00/27] Move LRU page reclaim from zones to nodes v6 Mel Gorman <mgorman@techsingularity.net> - 2016-06-09 20:10 +0200
[PATCH 25/27] mm: page_alloc: Cache the last node whose dirty limit is reached Mel Gorman <mgorman@techsingularity.net> - 2016-06-09 20:10 +0200
[PATCH 07/27] mm, vmscan: Remove balance gap Mel Gorman <mgorman@techsingularity.net> - 2016-06-09 20:10 +0200
Re: [PATCH 07/27] mm, vmscan: Remove balance gap Vlastimil Babka <vbabka@suse.cz> - 2016-06-15 16:30 +0200
[PATCH 02/27] mm, vmscan: Move lru_lock to the node Mel Gorman <mgorman@techsingularity.net> - 2016-06-09 20:10 +0200
Re: [PATCH 02/27] mm, vmscan: Move lru_lock to the node Vlastimil Babka <vbabka@suse.cz> - 2016-06-10 18:40 +0200
Re: [PATCH 02/27] mm, vmscan: Move lru_lock to the node Peter Zijlstra <peterz@infradead.org> - 2016-06-10 19:50 +0200
Re: [PATCH 02/27] mm, vmscan: Move lru_lock to the node Mel Gorman <mgorman@techsingularity.net> - 2016-06-14 16:50 +0200
[PATCH 21/27] mm, vmscan: Only wakeup kswapd once per node for the requested classzone Mel Gorman <mgorman@techsingularity.net> - 2016-06-09 20:10 +0200
Re: [PATCH 21/27] mm, vmscan: Only wakeup kswapd once per node for the requested classzone Vlastimil Babka <vbabka@suse.cz> - 2016-06-17 12:50 +0200
Re: [PATCH 21/27] mm, vmscan: Only wakeup kswapd once per node for the requested classzone Mel Gorman <mgorman@techsingularity.net> - 2016-06-17 14:10 +0200
[PATCH 18/27] mm: Move most file-based accounting to the node Mel Gorman <mgorman@techsingularity.net> - 2016-06-09 20:10 +0200
Re: [PATCH 18/27] mm: Move most file-based accounting to the node Vlastimil Babka <vbabka@suse.cz> - 2016-06-17 10:40 +0200
[PATCH 17/27] mm: Rename NR_ANON_PAGES to NR_ANON_MAPPED Mel Gorman <mgorman@techsingularity.net> - 2016-06-09 20:10 +0200
Re: [PATCH 17/27] mm: Rename NR_ANON_PAGES to NR_ANON_MAPPED Vlastimil Babka <vbabka@suse.cz> - 2016-06-17 10:30 +0200
[PATCH 23/27] mm, vmscan: Add classzone information to tracepoints Mel Gorman <mgorman@techsingularity.net> - 2016-06-09 20:10 +0200
[PATCH 10/27] mm, vmscan: Clear congestion, dirty and need for compaction on a per-node basis Mel Gorman <mgorman@techsingularity.net> - 2016-06-09 20:10 +0200
Re: [PATCH 10/27] mm, vmscan: Clear congestion, dirty and need for compaction on a per-node basis Vlastimil Babka <vbabka@suse.cz> - 2016-06-16 11:30 +0200
Re: [PATCH 10/27] mm, vmscan: Clear congestion, dirty and need for compaction on a per-node basis Mel Gorman <mgorman@techsingularity.net> - 2016-06-16 12:30 +0200
[PATCH 08/27] mm, vmscan: Simplify the logic deciding whether kswapd sleeps Mel Gorman <mgorman@techsingularity.net> - 2016-06-09 20:10 +0200
Re: [PATCH 08/27] mm, vmscan: Simplify the logic deciding whether kswapd sleeps Vlastimil Babka <vbabka@suse.cz> - 2016-06-15 17:20 +0200
Re: [PATCH 08/27] mm, vmscan: Simplify the logic deciding whether kswapd sleeps Mel Gorman <mgorman@techsingularity.net> - 2016-06-16 10:40 +0200
Re: [PATCH 08/27] mm, vmscan: Simplify the logic deciding whether kswapd sleeps Mel Gorman <mgorman@techsingularity.net> - 2016-06-16 11:20 +0200
[PATCH 20/27] mm, vmscan: Update classzone_idx if buffer_heads_over_limit Mel Gorman <mgorman@techsingularity.net> - 2016-06-09 20:10 +0200
[PATCH 27/27] mm: vmstat: Account per-zone stalls and pages skipped during reclaim Mel Gorman <mgorman@techsingularity.net> - 2016-06-09 20:10 +0200
Re: [PATCH 27/27] mm: vmstat: Account per-zone stalls and pages skipped during reclaim Vlastimil Babka <vbabka@suse.cz> - 2016-06-17 14:40 +0200
[PATCH 01/27] mm, vmstat: Add infrastructure for per-node vmstats Mel Gorman <mgorman@techsingularity.net> - 2016-06-09 20:10 +0200
Re: [PATCH 01/27] mm, vmstat: Add infrastructure for per-node vmstats Vlastimil Babka <vbabka@suse.cz> - 2016-06-10 15:40 +0200
Re: [PATCH 01/27] mm, vmstat: Add infrastructure for per-node vmstats Mel Gorman <mgorman@techsingularity.net> - 2016-06-10 15:50 +0200
Re: [PATCH 01/27] mm, vmstat: Add infrastructure for per-node vmstats Christoph Lameter <cl@linux.com> - 2016-06-13 19:30 +0200
Re: [PATCH 01/27] mm, vmstat: Add infrastructure for per-node vmstats Mel Gorman <mgorman@techsingularity.net> - 2016-06-14 16:30 +0200
[PATCH 15/27] mm, page_alloc: Consider dirtyable memory in terms of nodes Mel Gorman <mgorman@techsingularity.net> - 2016-06-09 20:10 +0200
Re: [PATCH 15/27] mm, page_alloc: Consider dirtyable memory in terms of nodes Vlastimil Babka <vbabka@suse.cz> - 2016-06-16 17:50 +0200
[PATCH 04/27] mm, vmscan: Begin reclaiming pages on a per-node basis Mel Gorman <mgorman@techsingularity.net> - 2016-06-09 20:10 +0200
Re: [PATCH 04/27] mm, vmscan: Begin reclaiming pages on a per-node basis Vlastimil Babka <vbabka@suse.cz> - 2016-06-15 15:00 +0200
[PATCH 06/27] mm, vmscan: Make kswapd reclaim in terms of nodes Mel Gorman <mgorman@techsingularity.net> - 2016-06-09 20:10 +0200
Re: [PATCH 06/27] mm, vmscan: Make kswapd reclaim in terms of nodes Vlastimil Babka <vbabka@suse.cz> - 2016-06-15 16:30 +0200
[PATCH 19/27] mm: Move vmscan writes and file write accounting to the node Mel Gorman <mgorman@techsingularity.net> - 2016-06-09 20:10 +0200
[PATCH 12/27] mm, vmscan: Make shrink_node decisions more node-centric Mel Gorman <mgorman@techsingularity.net> - 2016-06-09 20:10 +0200
Re: [PATCH 12/27] mm, vmscan: Make shrink_node decisions more node-centric Vlastimil Babka <vbabka@suse.cz> - 2016-06-16 15:40 +0200
Re: [PATCH 12/27] mm, vmscan: Make shrink_node decisions more node-centric Mel Gorman <mgorman@techsingularity.net> - 2016-06-16 16:50 +0200
[PATCH 16/27] mm: Move page mapped accounting to the node Mel Gorman <mgorman@techsingularity.net> - 2016-06-09 20:20 +0200
Re: [PATCH 16/27] mm: Move page mapped accounting to the node Vlastimil Babka <vbabka@suse.cz> - 2016-06-16 18:00 +0200
Re: [PATCH 16/27] mm: Move page mapped accounting to the node Mel Gorman <mgorman@techsingularity.net> - 2016-06-16 18:10 +0200
[PATCH 22/27] mm: Convert zone_reclaim to node_reclaim Mel Gorman <mgorman@techsingularity.net> - 2016-06-09 20:20 +0200
Re: [PATCH 22/27] mm: Convert zone_reclaim to node_reclaim Vlastimil Babka <vbabka@suse.cz> - 2016-06-17 13:00 +0200
[PATCH 09/27] mm, vmscan: By default have direct reclaim only shrink once per node Mel Gorman <mgorman@techsingularity.net> - 2016-06-09 20:20 +0200
Re: [PATCH 09/27] mm, vmscan: By default have direct reclaim only shrink once per node Vlastimil Babka <vbabka@suse.cz> - 2016-06-16 11:00 +0200
[PATCH 14/27] mm, workingset: Make working set detection node-aware Mel Gorman <mgorman@techsingularity.net> - 2016-06-09 20:20 +0200
Re: [PATCH 14/27] mm, workingset: Make working set detection node-aware Vlastimil Babka <vbabka@suse.cz> - 2016-06-16 17:20 +0200
Re: [PATCH 14/27] mm, workingset: Make working set detection node-aware Mel Gorman <mgorman@techsingularity.net> - 2016-06-16 18:00 +0200
[PATCH 24/27] mm, page_alloc: Remove fair zone allocation policy Mel Gorman <mgorman@techsingularity.net> - 2016-06-09 20:20 +0200
Re: [PATCH 24/27] mm, page_alloc: Remove fair zone allocation policy Vlastimil Babka <vbabka@suse.cz> - 2016-06-17 13:30 +0200
Re: [PATCH 24/27] mm, page_alloc: Remove fair zone allocation policy Mel Gorman <mgorman@techsingularity.net> - 2016-06-17 14:10 +0200
[PATCH 13/27] mm, memcg: Move memcg limit enforcement from zones to nodes Mel Gorman <mgorman@techsingularity.net> - 2016-06-09 20:20 +0200
Re: [PATCH 13/27] mm, memcg: Move memcg limit enforcement from zones to nodes Vlastimil Babka <vbabka@suse.cz> - 2016-06-16 17:10 +0200
Re: [PATCH 13/27] mm, memcg: Move memcg limit enforcement from zones to nodes Mel Gorman <mgorman@techsingularity.net> - 2016-06-16 18:00 +0200
[PATCH 26/27] mm: vmstat: Replace __count_zone_vm_events with a zone id equivalent Mel Gorman <mgorman@techsingularity.net> - 2016-06-09 20:30 +0200
Re: [PATCH 03/27] mm, vmscan: Move LRU lists to node Vlastimil Babka <vbabka@suse.cz> - 2016-06-10 20:10 +0200
csiph-web