Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1427795 > unrolled thread

[PATCH 00/27] Move LRU page reclaim from zones to nodes v7

Started byMel Gorman <mgorman@techsingularity.net>
First post2016-06-21 16:20 +0200
Last post2016-06-23 14:50 +0200
Articles 6 on this page of 46 — 4 participants

Back to article view | Back to linux.kernel


Contents

  [PATCH 00/27] Move LRU page reclaim from zones to nodes v7 Mel Gorman <mgorman@techsingularity.net> - 2016-06-21 16:20 +0200
    [PATCH 07/27] mm, vmscan: Remove balance gap Mel Gorman <mgorman@techsingularity.net> - 2016-06-21 16:20 +0200
    [PATCH 09/27] mm, vmscan: By default have direct reclaim only shrink once per node Mel Gorman <mgorman@techsingularity.net> - 2016-06-21 16:20 +0200
    [PATCH 06/27] mm, vmscan: Make kswapd reclaim in terms of nodes Mel Gorman <mgorman@techsingularity.net> - 2016-06-21 16:20 +0200
    [PATCH 02/27] mm, vmscan: Move lru_lock to the node Mel Gorman <mgorman@techsingularity.net> - 2016-06-21 16:20 +0200
    [PATCH 10/27] mm, vmscan: Remove duplicate logic clearing node congestion and dirty state Mel Gorman <mgorman@techsingularity.net> - 2016-06-21 16:20 +0200
    [PATCH 11/27] mm: vmscan: Do not reclaim from kswapd if there is any eligible zone Mel Gorman <mgorman@techsingularity.net> - 2016-06-21 16:20 +0200
    [PATCH 14/27] mm, workingset: Make working set detection node-aware Mel Gorman <mgorman@techsingularity.net> - 2016-06-21 16:30 +0200
    [PATCH 17/27] mm: Rename NR_ANON_PAGES to NR_ANON_MAPPED Mel Gorman <mgorman@techsingularity.net> - 2016-06-21 16:30 +0200
      Re: [PATCH 17/27] mm: Rename NR_ANON_PAGES to NR_ANON_MAPPED Michal Hocko <mhocko@kernel.org> - 2016-06-22 16:30 +0200
    [PATCH 12/27] mm, vmscan: Make shrink_node decisions more node-centric Mel Gorman <mgorman@techsingularity.net> - 2016-06-21 16:30 +0200
      Re: [PATCH 12/27] mm, vmscan: Make shrink_node decisions more  node-centric Michal Hocko <mhocko@kernel.org> - 2016-06-22 15:30 +0200
      Re: [PATCH 12/27] mm, vmscan: Make shrink_node decisions more  node-centric Vlastimil Babka <vbabka@suse.cz> - 2016-06-22 17:50 +0200
    [PATCH 16/27] mm: Move page mapped accounting to the node Mel Gorman <mgorman@techsingularity.net> - 2016-06-21 16:30 +0200
      Re: [PATCH 16/27] mm: Move page mapped accounting to the node Andrew Morton <akpm@linux-foundation.org> - 2016-06-22 00:50 +0200
        Re: [PATCH 16/27] mm: Move page mapped accounting to the node Mel Gorman <mgorman@techsingularity.net> - 2016-06-23 10:40 +0200
      Re: [PATCH 16/27] mm: Move page mapped accounting to the node Michal Hocko <mhocko@kernel.org> - 2016-06-22 16:40 +0200
    [PATCH 13/27] mm, memcg: Move memcg limit enforcement from zones to nodes Mel Gorman <mgorman@techsingularity.net> - 2016-06-21 16:30 +0200
      Re: [PATCH 13/27] mm, memcg: Move memcg limit enforcement from zones  to nodes Michal Hocko <mhocko@kernel.org> - 2016-06-22 15:20 +0200
    [PATCH 22/27] mm: Convert zone_reclaim to node_reclaim Mel Gorman <mgorman@techsingularity.net> - 2016-06-21 16:30 +0200
    [PATCH 19/27] mm: Move vmscan writes and file write accounting to the node Mel Gorman <mgorman@techsingularity.net> - 2016-06-21 16:30 +0200
      Re: [PATCH 19/27] mm: Move vmscan writes and file write accounting  to the node Michal Hocko <mhocko@kernel.org> - 2016-06-22 16:50 +0200
        Re: [PATCH 19/27] mm: Move vmscan writes and file write accounting  to the node Mel Gorman <mgorman@techsingularity.net> - 2016-06-23 16:00 +0200
          Re: [PATCH 19/27] mm: Move vmscan writes and file write accounting to  the node Vlastimil Babka <vbabka@suse.cz> - 2016-06-23 16:10 +0200
            Re: [PATCH 19/27] mm: Move vmscan writes and file write accounting  to the node Mel Gorman <mgorman@techsingularity.net> - 2016-06-23 18:10 +0200
    [PATCH 24/27] mm, page_alloc: Remove fair zone allocation policy Mel Gorman <mgorman@techsingularity.net> - 2016-06-21 16:30 +0200
    [PATCH 18/27] mm: Move most file-based accounting to the node Mel Gorman <mgorman@techsingularity.net> - 2016-06-21 16:30 +0200
      Re: [PATCH 18/27] mm: Move most file-based accounting to the node Michal Hocko <mhocko@kernel.org> - 2016-06-22 17:30 +0200
    [PATCH 23/27] mm, vmscan: Add classzone information to tracepoints Mel Gorman <mgorman@techsingularity.net> - 2016-06-21 16:40 +0200
    [PATCH 20/27] mm, vmscan: Update classzone_idx if buffer_heads_over_limit Mel Gorman <mgorman@techsingularity.net> - 2016-06-21 16:40 +0200
      Re: [PATCH 20/27] mm, vmscan: Update classzone_idx if  buffer_heads_over_limit Michal Hocko <mhocko@kernel.org> - 2016-06-22 16:50 +0200
    [PATCH 27/27] mm: vmstat: Account per-zone stalls and pages skipped during reclaim Mel Gorman <mgorman@techsingularity.net> - 2016-06-21 16:40 +0200
    [PATCH 26/27] mm: vmstat: Replace __count_zone_vm_events with a zone id equivalent Mel Gorman <mgorman@techsingularity.net> - 2016-06-21 16:40 +0200
    [PATCH 15/27] mm, page_alloc: Consider dirtyable memory in terms of nodes Mel Gorman <mgorman@techsingularity.net> - 2016-06-21 16:40 +0200
      Re: [PATCH 15/27] mm, page_alloc: Consider dirtyable memory in terms  of nodes Michal Hocko <mhocko@kernel.org> - 2016-06-22 16:30 +0200
        Re: [PATCH 15/27] mm, page_alloc: Consider dirtyable memory in terms  of nodes Michal Hocko <mhocko@kernel.org> - 2016-06-22 16:30 +0200
          Re: [PATCH 15/27] mm, page_alloc: Consider dirtyable memory in terms  of nodes Mel Gorman <mgorman@techsingularity.net> - 2016-06-23 15:00 +0200
            Re: [PATCH 15/27] mm, page_alloc: Consider dirtyable memory in terms  of nodes Michal Hocko <mhocko@kernel.org> - 2016-06-23 15:20 +0200
    [PATCH 25/27] mm: page_alloc: Cache the last node whose dirty limit is reached Mel Gorman <mgorman@techsingularity.net> - 2016-06-21 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-21 16:50 +0200
      Re: [PATCH 21/27] mm, vmscan: Only wakeup kswapd once per node for  the requested classzone Vlastimil Babka <vbabka@suse.cz> - 2016-06-22 18:10 +0200
    Re: [PATCH 03/27] mm, vmscan: Move LRU lists to node Vlastimil Babka <vbabka@suse.cz> - 2016-06-22 15:00 +0200
    Re: [PATCH 00/27] Move LRU page reclaim from zones to nodes v7 Mel Gorman <mgorman@techsingularity.net> - 2016-06-23 12:30 +0200
      Re: [PATCH 00/27] Move LRU page reclaim from zones to nodes v7 Michal Hocko <mhocko@kernel.org> - 2016-06-23 13:30 +0200
        Re: [PATCH 00/27] Move LRU page reclaim from zones to nodes v7 Mel Gorman <mgorman@techsingularity.net> - 2016-06-23 14:40 +0200
          Re: [PATCH 00/27] Move LRU page reclaim from zones to nodes v7 Michal Hocko <mhocko@kernel.org> - 2016-06-23 14:50 +0200

Page 3 of 3 — ← Prev page 1 2 [3]


#1428928 — Re: [PATCH 21/27] mm, vmscan: Only wakeup kswapd once per node for the requested classzone

FromVlastimil Babka <vbabka@suse.cz>
Date2016-06-22 18:10 +0200
SubjectRe: [PATCH 21/27] mm, vmscan: Only wakeup kswapd once per node for the requested classzone
Message-ID<rMSSZ-5Fj-13@gated-at.bofh.it>
In reply to#1427842
On 06/21/2016 04:16 PM, Mel Gorman wrote:
> kswapd is woken when zones are below the low watermark but the wakeup
> decision is not taking the classzone into account.  Now that reclaim is
> node-based, it is only required to wake kswapd once per node and only if
> all zones are unbalanced for the requested classzone.
>
> Note that one node might be checked multiple times if the zonelist is ordered
> by node because there is no cheap way of tracking what nodes have already
> been visited. For zone-ordering, each node should be checked only once.
>
> Signed-off-by: Mel Gorman <mgorman@techsingularity.net>

Acked-by: Vlastimil Babka <vbabka@suse.cz>

[toc] | [prev] | [next] | [standalone]


#1428772 — Re: [PATCH 03/27] mm, vmscan: Move LRU lists to node

FromVlastimil Babka <vbabka@suse.cz>
Date2016-06-22 15:00 +0200
SubjectRe: [PATCH 03/27] mm, vmscan: Move LRU lists to node
Message-ID<rMPV7-3BO-9@gated-at.bofh.it>
In reply to#1427795
On 06/21/2016 04:15 PM, Mel Gorman wrote:
> This moves the LRU lists from the zone to the node and related data
> such as counters, tracing, congestion tracking and writeback tracking.
> Unfortunately, due to reclaim and compaction retry logic, it is necessary
> to account for the number of LRU pages on both zone and node logic. Most
> reclaim logic is based on the node counters but the retry logic uses
> the zone counters which do not distinguish inactive and inactive sizes.
> It would be possible to leave the LRU counters on a per-zone basis but
> it's a heavier calculation across multiple cache lines that is much
> more frequent than the retry checks.
>
> Other than the LRU counters, this is mostly a mechanical patch but note
> that it introduces a number of anomalies. For example, the scans are
> per-zone but using per-node counters. We also mark a node as congested
> when a zone is congested. This causes weird problems that are fixed later
> but is easier to review.
>
> Signed-off-by: Mel Gorman <mgorman@techsingularity.net>
> Acked-by: Johannes Weiner <hannes@cmpxchg.org>

Acked-by: Vlastimil Babka <vbabka@suse.cz>

[toc] | [prev] | [next] | [standalone]


#1429663

FromMel Gorman <mgorman@techsingularity.net>
Date2016-06-23 12:30 +0200
Message-ID<rNa3v-4Q-13@gated-at.bofh.it>
In reply to#1427795
On Tue, Jun 21, 2016 at 03:15:39PM +0100, Mel Gorman wrote:
> The bulk of the updates are in response to review from Vlastimil Babka
> and received a lot more testing than v6.
> 

Hi Andrew,

Please drop these patches again from mmotm.

There has been a number of odd conflicts resulting in at least one major
bug where a node-counter is used on a zone that will result in random
behaviour. Some of the additional feedback is non-trivial and all of it
will need to be resolved against the OOM detection rework and the huge
tmpfs implementation.

It'll take time to resolve this and I don't want to leave mmotm in a
broken state in the meantime. I have a copy of mmots so I have the conflict
resolutions you already applied.

Thanks.

-- 
Mel Gorman
SUSE Labs

[toc] | [prev] | [next] | [standalone]


#1429689

FromMichal Hocko <mhocko@kernel.org>
Date2016-06-23 13:30 +0200
Message-ID<rNaZA-OU-31@gated-at.bofh.it>
In reply to#1429663
On Thu 23-06-16 11:26:48, Mel Gorman wrote:
> On Tue, Jun 21, 2016 at 03:15:39PM +0100, Mel Gorman wrote:
> > The bulk of the updates are in response to review from Vlastimil Babka
> > and received a lot more testing than v6.
> > 
> 
> Hi Andrew,
> 
> Please drop these patches again from mmotm.
> 
> There has been a number of odd conflicts resulting in at least one major
> bug where a node-counter is used on a zone that will result in random
> behaviour. Some of the additional feedback is non-trivial and all of it
> will need to be resolved against the OOM detection rework and the huge
> tmpfs implementation.

FWIW I haven't spotted any obvious misbehaving wrt. the OOM detection
rework. You have kept the per-zone counters which are used for the retry
logic so I think we should be safe. I am still reading through the
series though.

-- 
Michal Hocko
SUSE Labs

[toc] | [prev] | [next] | [standalone]


#1429769

FromMel Gorman <mgorman@techsingularity.net>
Date2016-06-23 14:40 +0200
Message-ID<rNc5k-1wG-17@gated-at.bofh.it>
In reply to#1429689
On Thu, Jun 23, 2016 at 01:27:14PM +0200, Michal Hocko wrote:
> On Thu 23-06-16 11:26:48, Mel Gorman wrote:
> > On Tue, Jun 21, 2016 at 03:15:39PM +0100, Mel Gorman wrote:
> > > The bulk of the updates are in response to review from Vlastimil Babka
> > > and received a lot more testing than v6.
> > > 
> > 
> > Hi Andrew,
> > 
> > Please drop these patches again from mmotm.
> > 
> > There has been a number of odd conflicts resulting in at least one major
> > bug where a node-counter is used on a zone that will result in random
> > behaviour. Some of the additional feedback is non-trivial and all of it
> > will need to be resolved against the OOM detection rework and the huge
> > tmpfs implementation.
> 
> FWIW I haven't spotted any obvious misbehaving wrt. the OOM detection
> rework. You have kept the per-zone counters which are used for the retry
> logic so I think we should be safe. I am still reading through the
> series though.
> 

The main snag is NR_FILE_DIRTY and NR_WRITEBACK in should_reclaim_retry.
It currently is a random number generator if it reads a zone stat
instead of the node one. In some configurations, it even reads values
after the stats array.

-- 
Mel Gorman
SUSE Labs

[toc] | [prev] | [next] | [standalone]


#1429782

FromMichal Hocko <mhocko@kernel.org>
Date2016-06-23 14:50 +0200
Message-ID<rNceZ-1AV-7@gated-at.bofh.it>
In reply to#1429769
On Thu 23-06-16 13:33:47, Mel Gorman wrote:
> On Thu, Jun 23, 2016 at 01:27:14PM +0200, Michal Hocko wrote:
> > On Thu 23-06-16 11:26:48, Mel Gorman wrote:
> > > On Tue, Jun 21, 2016 at 03:15:39PM +0100, Mel Gorman wrote:
> > > > The bulk of the updates are in response to review from Vlastimil Babka
> > > > and received a lot more testing than v6.
> > > > 
> > > 
> > > Hi Andrew,
> > > 
> > > Please drop these patches again from mmotm.
> > > 
> > > There has been a number of odd conflicts resulting in at least one major
> > > bug where a node-counter is used on a zone that will result in random
> > > behaviour. Some of the additional feedback is non-trivial and all of it
> > > will need to be resolved against the OOM detection rework and the huge
> > > tmpfs implementation.
> > 
> > FWIW I haven't spotted any obvious misbehaving wrt. the OOM detection
> > rework. You have kept the per-zone counters which are used for the retry
> > logic so I think we should be safe. I am still reading through the
> > series though.
> > 
> 
> The main snag is NR_FILE_DIRTY and NR_WRITEBACK in should_reclaim_retry.
> It currently is a random number generator if it reads a zone stat
> instead of the node one. In some configurations, it even reads values
> after the stats array.

OK, I haven't spotted that. As I've said I haven't seen the whole series
yet. I have just seen that the counters are there and assumed they are
used properly where appropriate.

-- 
Michal Hocko
SUSE Labs

[toc] | [prev] | [standalone]


Page 3 of 3 — ← Prev page 1 2 [3]

Back to top | Article view | linux.kernel


csiph-web