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-next>] [day] [month] [year] [list]
Message-ID: <b7f71558-0e57-cacb-280c-a9d3baa030b2@eikelenboom.it>
Date:   Mon, 12 Feb 2018 20:01:54 +0100
From:   Sander Eikelenboom <linux@...elenboom.it>
To:     Masahiro Yamada <yamada.masahiro@...ionext.com>,
        Ulf Magnusson <ulfalizer@...il.com>
Cc:     srivasta@...ian.org, linux-kernel <linux-kernel@...r.kernel.org>
Subject: Linux 4.16-rc1: regression bisected, Debian kernel package tool
 make-kpkg stalls indefinitely during kernel build due to commit "kconfig:
 remove check_stdin()"

L.S.,

The Debian kernel-package tool make-kpkg for easy building of upstream kernels on Debian fails with linux 4.16-rc1.

The tool (perl script) while invoked with:
    make-kpkg --initrd --append_to_version -20180212 kernel_image

On a git tree with a .config from the previous kernel release, so new KConfig questions have to be asked on new or changed options.

The script stalls indefinitely while it seems to be excuting:
    exec make kpkg_version=13.018+nmu1 -f /usr/share/kernel-package/ruleset/minimal.mk debian APPEND_TO_VERSION=-t440s-20180212  INITRD=YES

After using ctrl-c to break out it, i get:
   ^CFailed to create a ./debian directory: No such file or directory at /usr/bin/make-kpkg line 970.
 

Bisection turned up as culprit:
    commit d2a04648a5dbc3d1d043b35257364f0197d4d868
    kconfig: remove check_stdin()
    
    Except silentoldconfig, valid_stdin is 1, so check_stdin() is no-op.
    
    oldconfig and silentoldconfig work almost in the same way except that
    the latter generates additional files under include/.  Both ask users
    for input for new symbols.
    
    I do not know why only silentoldconfig requires stdio be tty.
    
      $ rm -f .config; touch .config
      $ yes "" | make oldconfig > stdout
      $ rm -f .config; touch .config
      $ yes "" | make silentoldconfig > stdout
      make[1]: *** [silentoldconfig] Error 1
      make: *** [silentoldconfig] Error 2
      $ tail -n 4 stdout
      Console input/output is redirected. Run 'make oldconfig' to update configuration.
    
      scripts/kconfig/Makefile:40: recipe for target 'silentoldconfig' failed
      Makefile:507: recipe for target 'silentoldconfig' failed
    
    Redirection is useful, for example, for testing where we want to give
    particular key inputs from a test file, then check the result.
    
    Signed-off-by: Masahiro Yamada <yamada.masahiro@...ionext.com>
    Reviewed-by: Ulf Magnusson <ulfalizer@...il.com>

Reverting this specific commit makes make-kpkg work again as usual.

Version of the kernel-package used:
ii  kernel-package                                              13.018+nmu1 


I also cc'ed the Debian developer who maintains the kernel-package package: Manoj Srivastava

--
Sander

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ