Hi Kazu, On Fri, Sep 2, 2022 at 9:30 AM HAGIO KAZUHITO(萩尾 一仁) <k-hagio-ab@xxxxxxx> wrote: > > On 2022/09/01 17:15, Tao Liu wrote: > > >>> When kernel enabled CONFIG_VMAP_STACK, stack can be allocated to > >>> vmalloced area. Currently crash didn't handle the case, as a result, > >>> kmem will not print the task context as expected. This patch fix the > >>> bug by checking if the address is a vmalloced stack first. > >>> > >>> Before: > >>> crash> kmem ffffb7efce9bbe28 > >>> VMAP_AREA VM_STRUCT ADDRESS RANGE SIZE > >>> ffff94eb9102c640 ffff94eb9102b140 ffffb7efce9b8000 - ffffb7efce9bd000 20480 > >>> > >>> PAGE PHYSICAL MAPPING INDEX CNT FLAGS > >>> ffffdd28220dc000 1883700000 0 0 1 50000000000000 > >>> > >>> After: > >>> crash> kmem ffffb7efce9bbe28 > >>> PID: 847 > >>> COMMAND: "khungtaskd" > >>> TASK: ffff94f8038f4000 [THREAD_INFO: ffff94f8038f4000] > >>> CPU: 72 > >>> STATE: TASK_RUNNING (PANIC) > >>> > >>> VMAP_AREA VM_STRUCT ADDRESS RANGE SIZE > >>> ffff94eb9102c640 ffff94eb9102b140 ffffb7efce9b8000 - ffffb7efce9bd000 20480 > >>> > >> > >> I have one question: If the given physical address falls in the vmalloc area, it won't print the task context, is that expected? For example: > >> > > > > Thanks for pointing it out. Hmm... I didn't consider the physical > > address case as vtop does. I will improve the patch and send v3. > > For physical address, a context is not shown also without CONFIG_VMAP_STACK. > > crash> kmem ffff9288bc977f00 > PID: 1 > COMMAND: "systemd" > TASK: ffff9288bc978000 [THREAD_INFO: ffff9288bc974000] > CPU: 10 > STATE: TASK_INTERRUPTIBLE > > PAGE PHYSICAL MAPPING INDEX CNT FLAGS > ffffd91fc1f25dc0 7c977000 0 0 0 1fffff00000000 > > crash> kmem 7c977f00 > PAGE PHYSICAL MAPPING INDEX CNT FLAGS > ffffd91fc1f25dc0 7c977000 0 0 0 1fffff00000000 > > Some information for virtual address is not shown with physical address, > it's kind of expected. And we have the ptov command, personally I don't > think it needs to do. > > but if you change this behavior, it might be good in a separate patch. > Thanks for the information. I separated the "kmem <physical_address>" case in v3. Thanks, Tao Liu > Thanks, > Kazu -- Crash-utility mailing list Crash-utility@xxxxxxxxxx https://listman.redhat.com/mailman/listinfo/crash-utility Contribution Guidelines: https://github.com/crash-utility/crash/wiki