[Crash-utility] [PATCH] improve the performance of kmem -s [address]

qiaonuohan qiaonuohan at cn.fujitsu.com
Fri Feb 3 09:36:28 UTC 2012


At 2012-2-3 15:19, qiaonuohan wrote:
> At 2012-2-3 1:24, Dave Anderson wrote:
>> But in other circumstances where there may be ambiguity, I've put
>> in the option of putting a "\" in front of the name, i.e., you
>> could do something like:
>>
>> crash> kmem -s list
>> ffff880079e44a00 nfs_read_data
>> ffff880079e44700 nfs_inode_cache
>> ffff880079e44d00 fscache_cookie_jar
>> ...
>>
>> crash> kmem -s \list
>> CACHE NAME OBJSIZE ALLOCATED TOTAL SLABS SSIZE
>> ffff88007b895400 list 240 0 0 0 4k
>> crash>
>>
>> That would be simple enough fix in cmd_kmem() if you re-work this part:
>>
>> if (sflag == 1) {
>> if (STREQ(meminfo.reqname, "list"))
>> kmem_cache_list();
>> else if (vt->flags& KMEM_CACHE_UNAVAIL)
>> error(FATAL,
>> "kmem cache slab subsystem not available\n");
>> else
>> vt->dump_kmem_cache(&meminfo);
>> }
> Hello Dave,
>
> Thanks for your advice! But after some investigation, "\list" may also
> involve ambiguity. I created a kmem_cache called "\list", the original
> code can display the following information after executing "kmem -s \list".
>
> crash> kmem -s \list
> CACHE NAME OBJSIZE ALLOCATED TOTAL SLABS SSIZE
> ffff880874b30c40 \list 8 0 0 0 4k
> crash>
>
> Need to use "\\list" to refer the kmem_cache called "\list" if code is
> changed? Please! I find it is better to remain the original code. Could
> you give me some tips?
>

I figured out a style of the command which seems somewhat suitable. If 
the "name" of "kmem -s <name>" starts with a "\", neglect it and search 
the slab by the remaining part.
Some examples are listed below:

command argument                 slab name
--------------------------------------------
\list                            list
\\list                           \list
\\\list                          \\list
kvm_vcpu                         kvm_vcpu
\kvm_vcpu                        kvm_vcpu
\\kvm_vcpu                       \kvm_vcpu

Is this acceptable? If so, I will do the fix like this.


-- 
--
Regards
Qiao Nuohan






More information about the Crash-utility mailing list