[Crash-utility] [PATCH v3 0/4] Improve kernel modules symbol searching performance

Philipp Rudo prudo at redhat.com
Fri Sep 17 09:15:10 UTC 2021


Hi Tao,

thanks, v3 is almost perfect. The only thing you should do in patch 1
is to cleanup some unused variable declarations. With that fixed you
can add my

Reviewed-by: Philipp Rudo <prudo at redhat.com>

to the first three patches.

All in all the last patch is fine too. I only think that the 'assert'
is too strict and it would be better to replace it by a warning +
continue.

Thanks
Philipp

On Tue, 14 Sep 2021 17:01:50 +0800
Tao Liu <ltao at redhat.com> wrote:

> This patch set improves symbol_search/symbol_exists performance by introducing hash
> table for kernel modules symbols. 
> 
> v2 -> v3:
> 
> 1) Seperate v2 patch into multiple patches.
> 2) Several code indented formatting.
> 3) Moved "if (sp != NULL)" check from mod_symtable_hash_install/remove_range
>    into symname_hash_install/remove, and shorten it to be "if (!sp)" check.
> 4) Replaced "index = index > 0 ? index : -index;" into abs() in 
>    SYMNAME_HASH_INDEX macro.
> 5) Replaced the code of remove hash table elements in symname_hash_remove with
>    Kazu's version, and variable "tmp" of v2 patch get removed.
> 6) Removed "first_encounter" check in symname_hash_remove.
> 7) Add assert check in symname_hash_install.
> 
> Tao Liu (4):
>   Improve the performance of symbol searching for kernel modules
>   Get the absolute value of SYMNAME_HASH_INDEX
>   Set name_hash_next field to be NULL for the newly installed elements
>   Add assert check if an element is installed one more time
> 
>  defs.h    |   3 +-
>  kernel.c  |   1 +
>  symbols.c | 170 +++++++++++++++++++++++++++++-------------------------
>  3 files changed, 95 insertions(+), 79 deletions(-)
> 




More information about the Crash-utility mailing list