Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > linux.kernel > #1692475
| From | Vlastimil Babka <vbabka@suse.cz> |
|---|---|
| Newsgroups | linux.kernel |
| Subject | Re: [PATCH 6/9] mm, page_alloc: simplify zonelist initialization |
| Date | 2017-07-20 09:00 +0200 |
| Message-ID | <u5dBf-3AP-1@gated-at.bofh.it> (permalink) |
| References | <u33PH-El-3@gated-at.bofh.it> <u33PH-El-7@gated-at.bofh.it> |
| Organization | linux.* mail to news gateway |
On 07/14/2017 10:00 AM, Michal Hocko wrote: > From: Michal Hocko <mhocko@suse.com> > > build_zonelists gradually builds zonelists from the nearest to the most > distant node. As we do not know how many populated zones we will have in > each node we rely on the _zoneref to terminate initialized part of the > zonelist by a NULL zone. While this is functionally correct it is quite > suboptimal because we cannot allow updaters to race with zonelists > users because they could see an empty zonelist and fail the allocation > or hit the OOM killer in the worst case. > > We can do much better, though. We can store the node ordering into an > already existing node_order array and then give this array to > build_zonelists_in_node_order and do the whole initialization at once. > zonelists consumers still might see halfway initialized state but that > should be much more tolerateable because the list will not be empty and > they would either see some zone twice or skip over some zone(s) in the > worst case which shouldn't lead to immediate failures. > > This patch alone doesn't introduce any functional change yet, though, it > is merely a preparatory work for later changes. > > Signed-off-by: Michal Hocko <mhocko@suse.com> I've collected the fold-ups from this thread and looked at the result as single patch. Sems OK, just two things: - please rename variable "i" in build_zonelists() to e.g. "nr_nodes" - the !CONFIG_NUMA variant of build_zonelists() won't build, because it doesn't declare nr_zones variable
Back to linux.kernel | Previous | Next — Next in thread | Find similar | Unroll thread
Re: [PATCH 6/9] mm, page_alloc: simplify zonelist initialization Vlastimil Babka <vbabka@suse.cz> - 2017-07-20 09:00 +0200 Re: [PATCH 6/9] mm, page_alloc: simplify zonelist initialization Michal Hocko <mhocko@kernel.org> - 2017-07-20 09:20 +0200
csiph-web