From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751930AbdB0XuX (ORCPT ); Mon, 27 Feb 2017 18:50:23 -0500 Received: from mailhost.informatik.uni-hamburg.de ([134.100.9.70]:58115 "EHLO mailhost.informatik.uni-hamburg.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751891AbdB0XuT (ORCPT ); Mon, 27 Feb 2017 18:50:19 -0500 Date: Mon, 27 Feb 2017 20:34:55 +0100 From: Sven Schmidt <4sschmid@informatik.uni-hamburg.de> To: Guenter Roeck Cc: Arnd Bergmann , Andrew Morton , linux-kernel@vger.kernel.org, Ley Foon Tan , nios2-dev@lists.rocketboards.org Subject: Re: nios2 crash/hang in mainline due to 'lib: update LZ4 compressor module' Message-ID: <20170227193455.GA25066@bierbaron.springfield.local> References: <20170226210338.GA19476@roeck-us.net> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20170226210338.GA19476@roeck-us.net> User-Agent: Mutt/1.7.2 (2016-11-26) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Hi Guenter, thanks for your testing! I must admit, I'm fairly new to kernel development and a little overwhelmed by all that tools used. So I do not really know how to reproduce your test using your script. I installed qemu from the master branch and buildroot. Unfortunately, that's the point I'm stuck. I would be grateful if you provide me some lead how to continue. Would I make the kernel using ARCH=nios2 and a defconf and pass it to qemu? What arguments do I provide to that script (especially, the machine param)? On Sun, Feb 26, 2017 at 01:03:38PM -0800, Guenter Roeck wrote: > Hi Sven, > > my qemu test for nios2 started failing with commit 4e1a33b105dd ("lib: > update LZ4 compressor module"). The test hangs early during boot before > any console output is seen. Reverting the offending patch as well as the > subsequent lz4 related patches fixes the problem. Disabling CONFIG_RD_LZ4 > and with it other LZ4 options also fixes it (as does adding "return -EINVAL;" > at the top of the LZ4 decompression code). For reference, bisect log > is attached. > So, seems like it's the decompressor? Which decompression code do you mean exactly? LZ4_decompress_fast/_safe/_generic? Since the decompression functions worked fine in all previous tests, and this is a problem during boot, my first guess would be the lib/decompress_unlz4.c, providing the functions for decompressing a lz4-compressed kernel image. But then it should only result in problems when the kernel image is compressed, wouldn't it? > I tried with buildroot toolchains using gcc 6.1.0 as well as 6.3.0 > and binutils 2.26.1. Scripts used to run the tests are available at > https://github.com/groeck/linux-build-test/tree/master/rootfs/nios2. > Qemu is from qemu mainline or qemu v2.8 with nios2 patches applied. > > I tried to track down the problem, with no success. Just the presence > of the LZ4 code seems to be sufficient to cause the problem; I have > no idea why that would be the case. > Maybe there's someone who has an idea and/or is experiencing similar issues. Hopefully, we can track this down. > Please let me know if there is anything I can do to help tracking down > the problem. > > Thanks, > Guenter > > --- > # bad: [c4f3f22eddc982d247ffe2a6690c3e4a5c46dd09] Merge tag 'linux-kselftest-4.11-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/shuah/linux-kselftest > # good: [9e314890292c0dd357eadef6a043704fa0b4c157] Merge tag 'openrisc-for-linus' of git://github.com/openrisc/linux > git bisect start 'HEAD' '9e31489' > # bad: [7067739df23ffd641ca99c967830e0ed2ba39eab] Merge branch 'i2c/for-4.11' of git://git.kernel.org/pub/scm/linux/kernel/git/wsa/linux > git bisect bad 7067739df23ffd641ca99c967830e0ed2ba39eab > # good: [c5adae9583ef6985875532904160c6bf9f07b453] lib: add CONFIG_TEST_SORT to enable self-test of sort() > git bisect good c5adae9583ef6985875532904160c6bf9f07b453 > # bad: [edccb59429657b09806146339e2b27594c1d1da0] Merge tag 'fbdev-v4.11' of git://github.com/bzolnier/linux > git bisect bad edccb59429657b09806146339e2b27594c1d1da0 > # good: [72db33355c1431fefcabb06c9c25705e8226eed5] fbdev: ssd1307fb: Start to use gpiod API for reset gpio > git bisect good 72db33355c1431fefcabb06c9c25705e8226eed5 > # bad: [95330473636e5e4546f94874c957c3be66bb2140] checkpatch: remove false unbalanced braces warning > git bisect bad 95330473636e5e4546f94874c957c3be66bb2140 > # bad: [69c78423b8f439b077929410bdf8f88e7031b891] lib/lz4: remove back-compat wrappers > git bisect bad 69c78423b8f439b077929410bdf8f88e7031b891 > # bad: [e23d54e48346e775be53b3cc25a95d65da960393] lib/decompress_unlz4: change module to work with new LZ4 module version > git bisect bad e23d54e48346e775be53b3cc25a95d65da960393 > # bad: [4e1a33b105ddf201f66dcc44490c6086a25eca0b] lib: update LZ4 compressor module > git bisect bad 4e1a33b105ddf201f66dcc44490c6086a25eca0b > # good: [8893f519330bb073a49c5b4676fce4be6f1be15d] lib/test_sort.c: make it explicitly non-modular > git bisect good 8893f519330bb073a49c5b4676fce4be6f1be15d > # first bad commit: [4e1a33b105ddf201f66dcc44490c6086a25eca0b] lib: update LZ4 compressor module Thank you, Sven