lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <774dfe49-61a0-0144-42b7-c2cbac150687@landley.net>
Date:   Mon, 30 Dec 2019 20:04:35 -0600
From:   Rob Landley <rob@...dley.net>
To:     Randy Dunlap <rdunlap@...radead.org>, linux-kernel@...r.kernel.org
Subject: Re: Why is CONFIG_VT forced on?



On 12/30/19 7:45 PM, Rob Landley wrote:
> On 12/30/19 6:59 PM, Randy Dunlap wrote:
>> #
>> # Character devices
>> #
>> CONFIG_TTY=y
>> # CONFIG_VT is not set
>>
>> But first you must set/enable EXPERT.  See the bool prompt.
> 
> Wait, the if doesn't _disable_ the symbol? It disables _editability_ of the
> symbol, but the symbol can still be on (and displayed) when the if is false?
> (Why would...)
> 
> Ok. Thanks for pointing that out. Any idea why the menuconfig help text has no
> mention of this?

So if I disable CONFIG_EXPERT, using miniconfig I then need to manually switch on:

./init/Kconfig:	bool "Namespaces support" if EXPERT
./init/Kconfig:	bool "Multiple users, groups and capabilities support" if EXPERT
./init/Kconfig:	bool "Sysfs syscall support" if EXPERT
./init/Kconfig:	bool "open by fhandle syscalls" if EXPERT
./init/Kconfig:	bool "Posix Clocks & timers" if EXPERT
./init/Kconfig:	bool "Enable support for printk" if EXPERT
./init/Kconfig:	bool "BUG() support" if EXPERT
./init/Kconfig:	bool "Enable ELF core dumps" if EXPERT
./init/Kconfig:	bool "Enable full-sized data structures for core" if EXPERT
./init/Kconfig:	bool "Enable futex support" if EXPERT
./init/Kconfig:	bool "Enable eventpoll support" if EXPERT
./init/Kconfig:	bool "Enable signalfd() system call" if EXPERT
./init/Kconfig:	bool "Enable timerfd() system call" if EXPERT
./init/Kconfig:	bool "Enable eventfd() system call" if EXPERT
./init/Kconfig:	bool "Use full shmem filesystem" if EXPERT
./init/Kconfig:	bool "Enable AIO support" if EXPERT
./init/Kconfig:	bool "Enable IO uring support" if EXPERT
./init/Kconfig:	bool "Enable madvise/fadvise syscalls" if EXPERT
./init/Kconfig:	bool "Enable membarrier() system call" if EXPERT
./init/Kconfig:	bool "Load all symbols for debugging/ksymoops" if EXPERT
./init/Kconfig:	bool "Enable rseq() system call" if EXPERT
./init/Kconfig:	bool "Enabled debugging of rseq() system call" if EXPERT
./init/Kconfig:	bool "PC/104 support" if EXPERT
./init/Kconfig:	bool "Enable VM event counters for /proc/vmstat" if EXPERT

plus of course

./arch/x86/Kconfig.cpu:	bool "Supported processor vendors" if EXPERT
./arch/x86/Kconfig:	bool "DMA memory allocation support" if EXPERT
./arch/x86/Kconfig:	bool "Enable DMI scanning" if EXPERT
./arch/x86/Kconfig:	bool "Enable support for 16-bit segments" if EXPERT
./arch/x86/Kconfig:       bool "Enable vsyscall emulation" if EXPERT
./arch/x86/Kconfig:	bool "Enable the LDT (local descriptor table)" if EXPERT
./arch/x86/Kconfig:	bool "Read CNB20LE Host Bridge Windows" if EXPERT
./arch/x86/Kconfig:	bool "ISA bus support on modern systems" if EXPERT
./arch/x86/Kconfig:	bool "ISA-style DMA support" if (X86_64 && EXPERT)

So nobody noticed you have a structural "this config option actually switches
this thing _off_" implemented via magic symbol then?

I think the right fix here involves running sed after kconfig does its thing...

Rob

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ