[Crash-utility] Re: crash-4.0.9 cannot load extensions on i686

Dave Anderson anderson at redhat.com
Mon Oct 5 17:04:43 UTC 2009


----- "Alex Sidorenko" <asid at hp.com> wrote:

> Hi Dave,
> 
> I have found that crash-4.0.9 cannot load any extensions on 32-bit hosts, even 
> echo.so. Running crash with -d5 on a live 32-bit kernel I can see that it 
> fails as
> 
> crash> extend extensions/echo.so
> extend: ./extensions/echo.so: machine type mismatch: 3
> extend: ./extensions/echo.so: not an ELF format object file
> 
>         if (!is_shared_object(ext->filename)) {
>                 error(INFO, "%s: not an ELF format object file\n",
> 
> 
> Something is wrong in is_shared_object() logic on IA32. It is interesting that 
> there are no problems with crash-4.0.9 and extensions on 64-bit systems. As 
> most of us are running 64 bits, this probably explains why nobody reported 
> this bug yet.

Thanks -- I'll take a look.  It appears that the extension module
is passing this test in is_shared_object(): 

  if (elf64->e_ident[EI_CLASS] == ELFCLASS64 ...

What does "readelf -a" show for the echo.so file?  (I don't have
a handy x86 machine readily available at the moment...)

Dave




More information about the Crash-utility mailing list