Messages in this thread | | | Date | Mon, 08 Apr 2013 10:16:50 -0700 | From | Cody P Schafer <> | Subject | Re: [PATCH 0/3] mm: fixup changers of per cpu pageset's ->high and ->batch |
| |
On 04/07/2013 08:23 AM, KOSAKI Motohiro wrote: > (4/5/13 4:33 PM), Cody P Schafer wrote: >> In one case while modifying the ->high and ->batch fields of per cpu pagesets >> we're unneededly using stop_machine() (patches 1 & 2), and in another we don't have any >> syncronization at all (patch 3). >> >> This patchset fixes both of them. >> >> Note that it results in a change to the behavior of zone_pcp_update(), which is >> used by memory_hotplug. I _think_ that I've diserned (and preserved) the >> essential behavior (changing ->high and ->batch), and only eliminated unneeded >> actions (draining the per cpu pages), but this may not be the case. > > at least, memory hotplug need to drain.
Could you explain why the drain is required here? From what I can tell, after the stop_machine() completes, the per cpu page sets could be repopulated at any point, making the combination of draining and modifying ->batch & ->high uneeded.
| |