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: <0164d8af-65f8-d3a4-c8c2-568f1806e147@linuxfoundation.org>
Date:   Tue, 10 Jan 2023 16:25:18 -0700
From:   Shuah Khan <skhan@...uxfoundation.org>
To:     Bhaskar Chowdhury <unixbhaskar@...il.com>,
        linux-kernel@...r.kernel.org
Cc:     Shuah Khan <skhan@...uxfoundation.org>
Subject: Re: [PATCH] ver_linux: add missing software to checklist

On 1/10/23 15:45, Bhaskar Chowdhury wrote:
> On 13:42 Tue 10 Jan 2023, Shuah Khan wrote:
>> Update to add missing software checks to bring it in sync with the
>> Documentation/Changes list. Make improvements to the output with
>> separator between different sections.
>>
>> Signed-off-by: Shuah Khan <skhan@...uxfoundation.org>
>> ---
>> scripts/ver_linux | 29 ++++++++++++++++++++++++++---
>> 1 file changed, 26 insertions(+), 3 deletions(-)
>>
>> diff --git a/scripts/ver_linux b/scripts/ver_linux
>> index 1a8ee4ff0e32..6131f6f1b35b 100755
>> --- a/scripts/ver_linux
>> +++ b/scripts/ver_linux
>> @@ -6,10 +6,14 @@
>> # differ on your system.
>>
>> BEGIN {
>> -    usage = "If some fields are empty or look unusual you may have an old version.\n"
>> -    usage = usage "Compare to the current minimal requirements in Documentation/Changes.\n"
>> +    usage = "Minimum required software versions to build and run current kernel version.\n"
>> +    usage = usage "If some fields are empty or look unusual you may have an old version.\n"
>> +    usage = usage "Compare with the current minimal requirements in Documentation/Changes.\n"
>>     print usage
>>
>> +    separator = "===================================================\n"
>> +
>> +    print separator
>>     system("uname -a")
>>     printf("\n")
>>
>> @@ -17,9 +21,15 @@ BEGIN {
>>     libc = "libc[.]so[.][0-9]+$"
>>     libcpp = "(libg|stdc)[+]+[.]so([.][0-9]+)+$"
>>
>> +    print separator
>>     printversion("GNU C", version("gcc -dumpversion"))
>> +    printversion("Clang/LLVM (optional)", version("clang --version"))
>> +    printversion("Rust (optional)", version("rustc --version"))
>> +    printversion("bindgen (optional)", version("bindgen --version"))
>>     printversion("GNU Make", version("make --version"))
>> +    printversion("bash", version("bash --version"))
>>     printversion("Binutils", version("ld -v"))
>> +    printversion("pahole", version("pahole --version"))
>>     printversion("Util-linux", version("mount --version"))
>>     printversion("Mount", version("mount --version"))
>>     printversion("Module-init-tools", version("depmod -V"))
>> @@ -28,6 +38,8 @@ BEGIN {
>>     printversion("Reiserfsprogs", version("reiserfsck -V"))
>>     printversion("Reiser4fsprogs", version("fsck.reiser4 -V"))
>>     printversion("Xfsprogs", version("xfs_db -V"))
>> +    printversion("squashfs-tools", version("mksquashfs -version"))
>> +    printversion("btrfs-progs", version("mkfs.btrfs --version"))
>>     printversion("Pcmciautils", version("pccardctl -V"))
>>     printversion("Pcmcia-cs", version("cardmgr -V"))
>>     printversion("Quota-tools", version("quota -V"))
>> @@ -36,7 +48,16 @@ BEGIN {
>>     printversion("Nfs-utils", version("showmount --version"))
>>     printversion("Bison", version("bison --version"))
>>     printversion("Flex", version("flex --version"))
>> +    printversion("Grub", version("grub-install --version"))
>> +    printversion("mcelog", version("mcelog --version"))
>> +    printversion("iptables", version("iptables --version"))
>> +    printversion("openssl & libcrypto", version("openssl version"))
>> +    printversion("bc", version("bc --version"))
>> +    printversion("Sphinx (for doc builds)", version("sphinx-build --version"))
>> +    printversion("cpio", version("cpio --version"))
>> +    printf("\n")
>>
>> +    print separator
>>     while ("ldconfig -p 2>/dev/null" | getline > 0)
>>         if ($NF ~ libc || $NF ~ libcpp)
>>             if (!seen[ver = version("readlink " $NF)]++)
>> @@ -50,12 +71,14 @@ BEGIN {
>>     printversion("Sh-utils", version("expr --v"))
>>     printversion("Udev", version("udevadm --version"))
>>     printversion("Wireless-tools", version("iwconfig --version"))
>> +    printf("\n")
>>
>> +    print separator
>>     while ("sort /proc/modules" | getline > 0) {
>>         mods = mods sep $1
>>         sep = " "
>>     }
>> -    printversion("Modules Loaded", mods)
>> +    printversion("Modules Loaded:\n", mods)
>> }
>>
>> function version(cmd,    ver) {
>> -- 
>> 2.34.1
>>
> Hunch....
> 
> One, is grub required to compile kernel?

These are minimal requirements to compile and run the kernel.
Running requires installing it first and install tools are
required. grub is listed in Documentation/Changes.

> 
> Second, can we please stick to " absolutely required software" than showing optional??
> 

This is an attempt sync this ver_linux with Documentation/Changes
and print out complete list which includes optional.

> Separator adding is good one.
> 

thanks,
-- Shuah

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ