On Mon, Nov 6, 2023 at 1:33 PM Shijie Huang <shijie@amperemail.onmicrosoft.com> wrote:

在 2023/11/6 13:16, HAGIO KAZUHITO(萩尾 一仁) 写道:
> On 2023/11/06 14:04, HAGIO KAZUHITO(萩尾 一仁) wrote:
>> On 2023/11/03 18:45, Shijie Huang wrote:
>>
>>>> +summary_inode_page(ulong page)
>>>> +{
>>>> +       int node;
>>>> +
>>>> +       if (!is_page_ptr(page, NULL))
>>>> +               error(FATAL, "Invalid inode page(0x%lx)\n", page);
>> I don't remember the detail of xarray, but my cacheutils extension
>> module also checks this without any error, in its callback function [1].
>> So how about implementing like this?
> in the first place, dump_inode_page() for "files -p" also checks this
> first without any error.  I think we can follow this.
>
> https://github.com/crash-utility/crash/blob/master/memory.c#L6891

okay. no problem.


Seems not enough.
 
crash> files -n ffff8ea84c130938
     INODE        NRPAGES
ffff8ea84c130938    62527

files: do_xarray: callback operation failed: entry: 1  item: 0
crash>
 
That is why I would suggest using the 'error(FATAL,...)' instead of the 'return':

https://lists.crash-utility.osci.io/archives/list/devel@lists.crash-utility.osci.io/thread/7ZBSSZ7SKP73EZYAJEZYRLWCG2N5J4KQ/

Or ignore this output? Any thoughts?

Thanks
Lianbo


BTW: If we have time, we may debug the xarray issue.


Thanks

Huang Shijie