Re: [PATCH] crash: Use '?' for kernel module symbols type

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 




----- Original Message -----
> Hi Dave,
> 
> Sorry for late reply, was busy with something else.
> 
> On 3/7/19 8:50 PM, Dave Anderson wrote:
> >>> We are using ELFXX_sym->st_info directly as the 'type' of symbol,
> >>> which is wrong, because st_info contains numeric value which needs
> >>> to be mapped to appropriate type character.
> >>
> >> I'm confused here.  If I dump each module symbol's st_info fields as they
> >> are
> >> being read/initialized, they always contain the unsigned char ASCII value
> >> for
> >> either 't', 'r', 'd', 'b' or 'w'.  What do you mean that it needs to be
> >> mapped
> >> to the appropriate type character?
> > 
> > And for that matter, since your patch marks all module symbols as type '?',
> > commands like "dis" fail to recognize a module text address as such, and
> > therefore fails to complete the command.  For example, without the patch:
> > 
> >   crash> sym dm_put
> >   ffffffffa0000520 (t) dm_put [dm_mod]
> >   crash> dis dm_put
> >   0xffffffffa0000520 <dm_put>:    nopl   0x0(%rax,%rax,1) [FTRACE NOP]
> >   0xffffffffa0000525 <dm_put+5>:  push   %rbp
> >   0xffffffffa0000526 <dm_put+6>:  mov    %rsp,%rbp
> >   0xffffffffa0000529 <dm_put+9>:  lock decl 0x180(%rdi)
> >   0xffffffffa0000530 <dm_put+16>: pop    %rbp
> >   0xffffffffa0000531 <dm_put+17>: retq
> >   crash>
> 
> The problem happens only with module symbols, not with kallsyms.
> 
> crash> sym -M
> c008000007810000 MODULE START: crc32c_vpmsum
> c008000007810000 (^R) __crc32c_vpmsum
> c008000007810670 (^B) crc32c_vpmsum_cra_init
> c008000007810690 (^B) crc32c_vpmsum_setkey
> 
> 

Hi Ravi,

I have never seen this before, but nonetheless, it does seem that Steve's patch
to the trace.c module is the better course of action.  Does it work OK for you?

Dave


  

--
Crash-utility mailing list
Crash-utility@xxxxxxxxxx
https://www.redhat.com/mailman/listinfo/crash-utility



[Index of Archives]     [Fedora Development]     [Fedora Desktop]     [Fedora SELinux]     [Yosemite News]     [KDE Users]     [Fedora Tools]

 

Powered by Linux