[Devel] [PATCH vz10] perf dso: Fix symtab_type for kmod compression

Pavel Tikhomirov ptikhomirov at virtuozzo.com
Fri Dec 19 06:56:37 MSK 2025


Note: I dropped mainstream people from CC.

Please avoid CC'ing original authors when porting mainstream patches. See suppresscc=all gitconfig option.

On 12/18/25 21:51, Dmitry Sepp wrote:
> From: Veronika Molnarova <vmolnaro at redhat.com>
> 
> During the rework of the dso structure in patch ee756ef7491eafd an
> increment was forgotten for the symtab_type in case the data for
> the kernel module are compressed. This affects the probing of the
> kernel modules, which fails if the data are not already cached.
> 
> Increment the value of the symtab_type to its compressed variant so the
> data could be recovered successfully.
> 
> Fixes: ee756ef7491eafd7 ("perf dso: Add reference count checking and accessor functions")
> Signed-off-by: Veronika Molnarova <vmolnaro at redhat.com>
> Acked-by: Michael Petlan <mpetlan at redhat.com>
> Acked-by: Namhyung Kim <namhyung at kernel.org>
> Tested-by: Michael Petlan <mpetlan at redhat.com>
> Link: https://lore.kernel.org/r/20241010144836.16424-1-vmolnaro@redhat.com
> Signed-off-by: Namhyung Kim <namhyung at kernel.org>

Bug link is missing, I guess it's:

https://virtuozzo.atlassian.net/browse/VSTOR-120964

Except that looks good.

Reviewed-by: Pavel Tikhomirov <ptikhomirov at virtuozzo.com>

> (cherry picked from commit 05a62936e6b14c005db3b0c9c7d8b93d825dd9ca)
> Signed-off-by: Dmitry Sepp <dmitry.sepp at virtuozzo.com>
> ---
>  tools/perf/util/machine.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/tools/perf/util/machine.c b/tools/perf/util/machine.c
> index 1912d9727691..27d5345d2b30 100644
> --- a/tools/perf/util/machine.c
> +++ b/tools/perf/util/machine.c
> @@ -1345,7 +1345,7 @@ static int maps__set_module_path(struct maps *maps, const char *path, struct kmo
>  	 * we need to update the symtab_type if needed.
>  	 */
>  	if (m->comp && is_kmod_dso(dso)) {
> -		dso__set_symtab_type(dso, dso__symtab_type(dso));
> +		dso__set_symtab_type(dso, dso__symtab_type(dso)+1);
>  		dso__set_comp(dso, m->comp);
>  	}
>  	map__put(map);

-- 
Best regards, Pavel Tikhomirov
Senior Software Developer, Virtuozzo.



More information about the Devel mailing list