[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20180926153921.GC6278@dhcp22.suse.cz>
Date: Wed, 26 Sep 2018 17:39:21 +0200
From: Michal Hocko <mhocko@...nel.org>
To: Alexander Duyck <alexander.h.duyck@...ux.intel.com>
Cc: linux-mm@...ck.org, akpm@...ux-foundation.org,
linux-kernel@...r.kernel.org, linux-nvdimm@...ts.01.org,
pavel.tatashin@...rosoft.com, dave.jiang@...el.com,
dave.hansen@...el.com, jglisse@...hat.com, rppt@...ux.vnet.ibm.com,
dan.j.williams@...el.com, logang@...tatee.com, mingo@...nel.org,
kirill.shutemov@...ux.intel.com
Subject: Re: [PATCH v5 2/4] mm: Provide kernel parameter to allow disabling
page init poisoning
On Wed 26-09-18 08:24:56, Alexander Duyck wrote:
> On 9/26/2018 12:38 AM, Michal Hocko wrote:
> > On Tue 25-09-18 13:20:12, Alexander Duyck wrote:
> > [...]
> > > + vm_debug[=options] [KNL] Available with CONFIG_DEBUG_VM=y.
> > > + May slow down system boot speed, especially when
> > > + enabled on systems with a large amount of memory.
> > > + All options are enabled by default, and this
> > > + interface is meant to allow for selectively
> > > + enabling or disabling specific virtual memory
> > > + debugging features.
> > > +
> > > + Available options are:
> > > + P Enable page structure init time poisoning
> > > + - Disable all of the above options
> >
> > I agree with Dave that this is confusing as hell. So what does vm_debug
> > (without any options means). I assume it's NOP and all debugging is
> > enabled and that is the default. What if I want to disable _only_ the
> > page struct poisoning. The weird lookcing `-' will disable all other
> > options that we might gather in the future.
>
> With no options it works just like slub_debug and enables all available
> options. So in our case it is a NOP since we wanted the debugging enabled by
> default.
But isn't slub_debug more about _adding_ debugging features? While you
want to effectively disbale some debugging features here? So if you want
to follow that pattern then it would be something like
vm_debug_disable=page_poisoning,$OTHER_FUTURE_DEBUG_OPTIONS
why would you want to enable something when CONFIG_DEBUG_VM=y just
enables everything?
> > Why cannot you simply go with [no]vm_page_poison[=on/off]?
>
> That is what I had to begin with, but Dave Hansen and Dan Williams suggested
> that I go with a slub_debug style interface so we could extend it in the
> future.
Please let's not over-engineer this. If you really need an umbrella
parameter then make a list of things to disable.
--
Michal Hocko
SUSE Labs
Powered by blists - more mailing lists