Re: [PATCH v7 00/11] kallsyms: Optimizes the performance of lookup symbols
From: Luis Chamberlain <mcgrof@kernel.org>
Date: 2022-10-26 19:07:00
Also in:
live-patching, lkml
From: Luis Chamberlain <mcgrof@kernel.org>
Date: 2022-10-26 19:07:00
Also in:
live-patching, lkml
On Wed, Oct 26, 2022 at 02:44:36PM +0800, Leizhen (ThunderTown) wrote:
On 2022/10/26 1:53, Luis Chamberlain wrote:quoted
This answers how we don't use a hash table, the question was *should* we use one?I'm not the original author, and I can only answer now based on my understanding. Maybe the original author didn't think of the hash method, or he has weighed it out. Hash is a good solution if only performance is required and memory overhead is not considered. Using hash will increase the memory size by up to "4 * kallsyms_num_syms + 4 * ARRAY_SIZE(hashtable)" bytes, kallsyms_num_syms is about 1-2 million. Because I don't know what hash algorithm will be used, the cost of generating the hash value corresponding to the symbol name is unknown now. But I think it's gonna be small. But it definitely needs a simpler algorithm, the tool needs to implement the same hash algorithm.
For instance, you can look at evaluating if alloc_large_system_hash() would help. Luis