Kernel panic from malloc() on SUSE 15.1?

Michal Suchánek msuchanek at suse.de
Fri Nov 6 23:51:01 AEDT 2020


On Mon, Nov 02, 2020 at 12:14:27PM -0800, Carl Jacobsen wrote:
> I've got a SUSE 15.1 install (on ppc64le) that kernel panics on a very
> simple
> test program, built in a slightly unusual way.
> 
> I'm compiling on SUSE 12, using gcc 4.8.3. I'm linking to a static
> copy of libcrypto.a (from openssl-1.1.1g), built without threads.
> I have a 10 line C test program that compiles and runs fine on the
> SUSE 12 system. If I compile the same program on SUSE 15.1 (with
> gcc 7.4.1), it runs fine on SUSE 15.1.
> 
> But, if I run the version that I compiled on SUSE 12, on the SUSE 15.1
> system, the call to RAND_status() gets to a malloc() and then panics.
> (And, of course, if I just compile a call to malloc(), that runs fine
> on both systems.) Here's the test program, it's really just a call to
> RAND_status():
> 
>     #include <stdio.h>
>     #include <openssl/rand.h>
> 
>     int main(int argc, char **argv)
>     {
>         int has_enough_data = RAND_status();
>         printf("The PRNG %s been seeded with enough data\n",
>                has_enough_data ? "HAS" : "has NOT");
>         return 0;
>     }
> 
> openssl is configured/built with:
>     ./config no-shared no-dso no-threads -fPIC -ggdb3 -debug -static
>     make
> 
> and the test program is compiled with:
>     gcc -ggdb3 -o rand_test rand_test.c libcrypto.a
> 
> The kernel on SUSE 12 is: 3.12.28-4-default
> And glibc is: 2.19
> 
> The kernel on SUSE 15.1 is: 4.12.14-197.18-default
> And glibc is: 2.26

SLE 12 SP5 has pretty much the same kernel as SLE 15 SP1 and pretty much
the same compiler as SLE 12 so it might be interesting data point to try
there.

Also I saw you are using very old VIOS (which should not make much of a
difference) but did not see what firmware version the machine has.

There have been cases of mysterious crashes solved by updating the
firmware.

Thanks

Michal


More information about the Linuxppc-dev mailing list