Re: [PATCH] memsw: handle swapaccount kernel parameter correctly

KAMEZAWA Hiroyuki
2011-01-27T09:54:52Z

On Thu, 27 Jan 2011 10:29:51 +0100
Michal Hocko <mhocko@suse.cz> wrote:

> On Thu 27-01-11 18:03:30, KAMEZAWA Hiroyuki wrote:
> > On Thu, 27 Jan 2011 09:23:20 +0100
> > Michal Hocko <mhocko@suse.cz> wrote:
> [...]
> > > diff --git a/mm/memcontrol.c b/mm/memcontrol.c
> > > index db76ef7..cea2be48 100644
> > > --- a/mm/memcontrol.c
> > > +++ b/mm/memcontrol.c
> > > @@ -5013,9 +5013,9 @@ struct cgroup_subsys mem_cgroup_subsys = {
> > > static int __init enable_swap_account(char *s)
> > > {
> > > /* consider enabled if no parameter or 1 is given */
> > > - if (!s || !strcmp(s, "1"))
> > > + if (!(*s) || !strcmp(s, "=1"))
> > > really_do_swap_account = 1;
> > > - else if (!strcmp(s, "0"))
> > > + else if (!strcmp(s, "=0"))
> > > really_do_swap_account = 0;
> > > return 1;
> > > }
> >
> > Hmm, usual callser of __setup() includes '=' to parameter name, as
> >
> > mm/hugetlb.c:__setup("hugepages=", hugetlb_nrpages_setup);
> > mm/hugetlb.c:__setup("default_hugepagesz=", hugetlb_default_setup);
> >
> > How about moving "=" to __setup() ?
>
> I have considered that as well but then we couldn't use swapaccount
> parameter without any value because the parameter parsing matches the
> whole string.
> I found it better to have consistent [no]swapaccount with the =0|1
> extension rather than keeping = in the setup like other users.
>
> Sounds reasonable?

Hmm. ok for this time.

Acked-by: KAMEZAWA Hiroyuki <kamezawa.hiroyu@jp.fujitsu.com>

Could you try to write a patch for feature-removal-schedule.txt
and tries to remove noswapaccount and do clean up all ?
(And add warning to noswapaccount will be removed.....in 2.6.40)

Thanks,
-Kame