Hi Kazu, On Thu, Apr 4, 2024 at 4:31 PM HAGIO KAZUHITO(萩尾 一仁) <k-hagio-ab@xxxxxxx> wrote: > > On 2024/04/03 16:06, Tao Liu wrote: > > Not all mod_mem_type will be included for kernel modules. E.g. in the > > following module case: > > > > (gdb) p lm->symtable[0] > > $1 = (struct syment *) 0x4dcbad0 > > (gdb) p lm->symtable[1] > > $2 = (struct syment *) 0x4dcbb70 > > (gdb) p lm->symtable[2] > > $3 = (struct syment *) 0x4dcbc10 > > (gdb) p lm->symtable[3] > > $4 = (struct syment *) 0x0 > > (gdb) p lm->symtable[4] > > $5 = (struct syment *) 0x4dcbcb0 > > (gdb) p lm->symtable[5] > > $6 = (struct syment *) 0x4dcbd00 > > (gdb) p lm->symtable[6] > > $7 = (struct syment *) 0x0 > > (gdb) p lm->symtable[7] > > $8 = (struct syment *) 0x4dcbb48 > > > > mod_mem MOD_RO_AFTER_INIT(3) and MOD_INIT_RODATA(6) is not exist, which should > > be skipped, otherwise a segfault will happen. > > > > Fixes: 7750e61fdb2a ("Support module memory layout change on Linux 6.4") > > > > Signed-off-by: Tao Liu <ltao@xxxxxxxxxx> > > Reported-by: Naveen Chaudhary <naveenchaudhary2010@xxxxxxxxxxx> > > --- > > > > v1 -> v2: Keep the same code style as other similar iteration/checking cases. > > Thank you for the update, applied with some information in the commit > log for someone searches for this issue more easily. > Thanks, that's better! And thanks for the code review and merge! Thanks, Tao Liu > https://github.com/crash-utility/crash/commit/ced754d3f8ce796d0d894dbb0f340e9c905c206a > > Thanks, > Kazu > > > > > > --- > > symbols.c | 3 +++ > > 1 file changed, 3 insertions(+) > > > > diff --git a/symbols.c b/symbols.c > > index cbc9ed1..b7627a8 100644 > > --- a/symbols.c > > +++ b/symbols.c > > @@ -5577,6 +5577,9 @@ value_search_module_6_4(ulong value, ulong *offset) > > continue; > > > > for_each_mod_mem_type(t) { > > + if (!lm->symtable[t]) > > + continue; > > + > > sp = lm->symtable[t]; > > sp_end = lm->symend[t]; > > -- Crash-utility mailing list -- devel@xxxxxxxxxxxxxxxxxxxxxxxxxxx To unsubscribe send an email to devel-leave@xxxxxxxxxxxxxxxxxxxxxxxxxxx https://${domain_name}/admin/lists/devel.lists.crash-utility.osci.io/ Contribution Guidelines: https://github.com/crash-utility/crash/wiki