Hi Lianbo, -----Original Message----- > > When crash runs with -s option, SIZE(taint_flag) and OFFSET(tnt_false) > > are not set during initialization. If the "mod -t" option is executed, > > it sets the former but does not set the latter. After that, the "sys" > > command uses OFFSET(tnt_false) without setting it, because it checks > > only if SIZE(taint_flag) is set. > > > > Without the patch, the "sys [-t]" and "mod -S" options after "mod -t" > > option fail with the error message: > > > Hmm, I also ran into a similar issue with an old vmcore, that can be reproduced > with the following steps: > > crash> history > [1] mod -S 3.10.0-957.el7.x86_64 > [2] mod -s dm_service_time > [3] set scope st_create > [4] mod -d dm_service_time > [5] mod -sr dm_service_time > [6] set scope st_create > [7] sys > [8] set scope st_create > > And after the step[7] "sys" command, the step[8] will definitely fail. But step[6] > is successful before the "sys" command. > > Seems that it should be another issue. Do you mean the following error? ... crash> set scope st_create scope: ffffffffc0918270 (st_create) crash> sys KERNEL: /usr/lib/debug/lib/modules/3.10.0-1127.el7.x86_64/vmlinux DUMPFILE: /dev/crash ... crash> set scope st_create set: gdb cannot find text block for address: st_create This looks strange but different from the issue this patch fixes. This fixes the following error: # crash -s WARNING: kernel relocated [340MB]: patching 87167 gdb minimal_symbol values crash> mod -t no tainted modules crash> sys sys: invalid structure member offset: tnt_false FILE: kernel.c LINE: 10838 FUNCTION: show_kernel_taints_v4_10() [/usr/bin/crash] error trace: 469008 => 4f4b29 => 4d7e19 => 5376d2 5376d2: OFFSET_verify+130 4d7e19: (undetermined) 4f4b29: cmd_sys+121 469008: exec_command+760 sys: invalid structure member offset: tnt_false FILE: kernel.c LINE: 10838 FUNCTION: show_kernel_taints_v4_10() My test script runs with this command order.. Thanks, Kazu > > Thanks. > Lianbo > > > sys: invalid structure member offset: tnt_false > > FILE: kernel.c LINE: 11203 FUNCTION: show_kernel_taints_v4_10() > > > > Signed-off-by: Kazuhito Hagio <k-hagio-ab@xxxxxxx> > > --- > > kernel.c | 3 ++- > > 1 file changed, 2 insertions(+), 1 deletion(-) > > > > diff --git a/kernel.c b/kernel.c > > index 272e0d8751cf..5fcd86575be5 100644 > > --- a/kernel.c > > +++ b/kernel.c > > @@ -11160,7 +11160,8 @@ show_kernel_taints_v4_10(char *buf, int verbose) > > ulong tainted_mask, *tainted_mask_ptr; > > struct syment *sp; > > > > - if (!VALID_STRUCT(taint_flag)) { > > + if (!(VALID_STRUCT(taint_flag) && > > + VALID_MEMBER(tnt_true) && VALID_MEMBER(tnt_false))) { > > STRUCT_SIZE_INIT(taint_flag, "taint_flag"); > > MEMBER_OFFSET_INIT(tnt_true, "taint_flag", "true"); > > MEMBER_OFFSET_INIT(tnt_false, "taint_flag", "false"); > > -- 2.18.4 -- Crash-utility mailing list Crash-utility@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/crash-utility