On 07/12/2018 07:33 PM, Eric W. Biederman wrote:
> 
> Adrian Reber <adr...@lisas.de> writes:
> 
>> The CHECKPOINT_RESTORE configuration option was introduced in 2012 and
>> combined with EXPERT. CHECKPOINT_RESTORE is already enabled in many
>> distribution kernels and also part of the defconfigs of various
>> architectures.
>>
>> To make it easier for distributions to enable CHECKPOINT_RESTORE this
>> removes EXPERT and moves the configuration option out of the EXPERT
>> block.
> 
> I think we should change the help text at the same time, to match
> our improve understanding of the situation.
> 
> Does anyone remember why this option was added at all?

Sure! Quoting Andrew's ~7 years ago akpm branch merge e-mail:

   However I'm less confident than the developers that it will all
   eventually work! So what I'm asking them to do is to wrap each piece
   of new code inside CONFIG_CHECKPOINT_RESTORE.  So if it all
   eventually comes to tears and the project as a whole fails, it should
   be a simple matter to go through and delete all trace of it.

the best link with full e-mail I googled for is
https://gitlab.imag.fr/kaunetem/linux-kaunetem/commit/099469502f62fbe0d7e4f0b83a2f22538367f734

-- Pavel

> Why this option was placed under expert?
> 
> What is the value of disabling this functionality ever?
> 
> Is there any reason why we don't just delete CONFIG_CHECKPOINT_RESTORE
> entirely?
> 
> Certainly we are at a point where distro's are enabling this so hiding
> it behind CONFIG_EXPERT with a default of N seems inapparopriate.
> 
> The only thing I can imagine might be sensible is changing the default
> to Y and leaving it behind CONFIG_EXPERT.
> 
> I want to know what is the point of maintaining all of the complexity of
> the ifdefs.  If no one can come up with a reason I say let's just remove
> CONFIG_CHECKPOINT_RESTORE entirely.
> 
> Eric
> 
> 
>> Signed-off-by: Adrian Reber <adr...@lisas.de>
>> Cc: Oleg Nesterov <o...@redhat.com>
>> Cc: Pavel Emelyanov <xe...@virtuozzo.com>
>> Cc: Andrew Morton <a...@linux-foundation.org>
>> Cc: Eric W. Biederman <ebied...@xmission.com>
>> Cc: Andrei Vagin <ava...@virtuozzo.com>
>> Cc: Hendrik Brueckner <brueck...@linux.vnet.ibm.com>
>> ---
>>  init/Kconfig | 24 ++++++++++++------------
>>  1 file changed, 12 insertions(+), 12 deletions(-)
>>
>> diff --git a/init/Kconfig b/init/Kconfig
>> index 041f3a022122..9c529c763326 100644
>> --- a/init/Kconfig
>> +++ b/init/Kconfig
>> @@ -932,6 +932,18 @@ config NET_NS
>>  
>>  endif # NAMESPACES
>>  
>> +config CHECKPOINT_RESTORE
>> +    bool "Checkpoint/restore support"
>> +    select PROC_CHILDREN
>> +    default n
>> +    help
>> +      Enables additional kernel features in a sake of checkpoint/restore.
>> +      In particular it adds auxiliary prctl codes to setup process text,
>> +      data and heap segment sizes, and a few additional /proc filesystem
>> +      entries.
>> +
>> +      If unsure, say N here.
>> +
>>  config SCHED_AUTOGROUP
>>      bool "Automatic process group scheduling"
>>      select CGROUPS
>> @@ -1348,18 +1360,6 @@ config MEMBARRIER
>>  
>>        If unsure, say Y.
>>  
>> -config CHECKPOINT_RESTORE
>> -    bool "Checkpoint/restore support" if EXPERT
>> -    select PROC_CHILDREN
>> -    default n
>> -    help
>> -      Enables additional kernel features in a sake of checkpoint/restore.
>> -      In particular it adds auxiliary prctl codes to setup process text,
>> -      data and heap segment sizes, and a few additional /proc filesystem
>> -      entries.
>> -
>> -      If unsure, say N here.
>> -
>>  config KALLSYMS
>>       bool "Load all symbols for debugging/ksymoops" if EXPERT
>>       default y
> .
> 

Reply via email to