makedumpfile: a feature question about filtering

piliu piliu at redhat.com
Mon Sep 14 04:30:58 EDT 2020



On 09/14/2020 04:15 PM, HAGIO KAZUHITO(萩尾 一仁) wrote:
> -----Original Message-----
>> On 09/11/2020 04:53 PM, HAGIO KAZUHITO(萩尾 一仁) wrote:
>>> Hi Pingfan,
>>>
>>> -----Original Message-----
>>>> Hello,
>>>>
>>>> There is an appeal which only wants to save some user page including env
>>>> and args pages, and discards the other user space pages.
>>>
>>> I understand that it's helpful to get them even with -d 31 for crash's
>>> "ps -a" option..
>>>
>>>>
>>>> To achieve this feature, mm_struct's members "arg_start, arg_end,
>>>> env_start, env_end;" should be accessed. So we need to export mm_struct
>>>> and init_mm through vmcore.
>>>
>>> How many offsets/sizes will be required to walk all tasks?
>> At present, I think only the info "arg_start, arg_end, env_start,
>> env_end" in mm_struct are required.
> 
> ah what I wanted to ask mainly was the number of the offsets/sizes used to
> walk through all (user) tasks in a system, because makedumpfile cannot get
> to a task's arg_start only with OFFSET(mm_struct.arg_start).  Is it easy
> enough to do it only with several vmcoreinfo entries?
Yes, it is. Iterating over tasks requires to expose
OFFSET(mm_struct.mmlist, and &init_mm. Then for each mm_struct, we need
an access to "arg_start, arg_end, env_start,env_end"

Thanks,
Pingfan




More information about the kexec mailing list