Messages in this thread | | | Date | Thu, 21 Mar 2013 16:38:59 +0100 | From | Michal Hocko <> | Subject | Re: [PATCH 03/10] mm: vmscan: Flatten kswapd priority loop |
| |
On Thu 21-03-13 15:26:02, Mel Gorman wrote: > On Thu, Mar 21, 2013 at 03:54:58PM +0100, Michal Hocko wrote: > > > Signed-off-by: Mel Gorman <mgorman@suse.de> > > > --- > > > mm/vmscan.c | 86 ++++++++++++++++++++++++++++++------------------------------- > > > 1 file changed, 42 insertions(+), 44 deletions(-) > > > > > > diff --git a/mm/vmscan.c b/mm/vmscan.c > > > index 182ff15..279d0c2 100644 > > > --- a/mm/vmscan.c > > > +++ b/mm/vmscan.c > > > @@ -2625,8 +2625,11 @@ static bool prepare_kswapd_sleep(pg_data_t *pgdat, int order, long remaining, > > > /* > > > * kswapd shrinks the zone by the number of pages required to reach > > > * the high watermark. > > > + * > > > + * Returns true if kswapd scanned at least the requested number of > > > + * pages to reclaim. > > > > Maybe move the comment about not rising priority in such case here to be > > clear what the return value means. Without that the return value could > > be misinterpreted that kswapd_shrink_zone succeeded in shrinking might > > be not true. > > I moved the comment.
Thanks
> > Or maybe even better, leave the void there and add bool *raise_priority > > argument here so the decision and raise_priority are at the same place. > > > > The priority is raised if kswapd failed to reclaim from any of the unbalanced > zone. If raise_priority is moved inside kswapd_shrink_zone then it can > only take one zone into account.
Right you are. I am blind.
-- Michal Hocko SUSE Labs
| |