public inbox for dwarves@vger.kernel.org
 help / color / mirror / Atom feed
From: Alan Maguire <alan.maguire@oracle.com>
To: Domenico Andreoli <domenico.andreoli@linux.com>, dwarves@vger.kernel.org
Subject: Re: parallel pahole hangs while building modules from nvidia-open-kernel-dkms
Date: Tue, 25 Mar 2025 11:32:34 +0000	[thread overview]
Message-ID: <880f4a6f-cd49-41b4-be9c-38f85647467d@oracle.com> (raw)
In-Reply-To: <Z-JzFrXaopQCYd6h@localhost>

On 25/03/2025 09:10, Domenico Andreoli wrote:
> Hi,
> 
>   This a forward of Debian bug report [0] where you can find more
> details. At [1] and [2] you can get the kernel and module to reproduce.
> I could reproduce on both amd64 and arm64 using pahole 1.29.
> 
> This is marked as serious severity because it makes the autobuilder hang
> as well [3].
> 
> Could you please help?
>

I tried building https://github.com/NVIDIA/open-gpu-kernel-modules
with bpf-next and latest pahole v1.29 - based on the next branch from

https://web.git.kernel.org/pub/scm/devel/pahole/pahole.git/

...using gcc 12 and all worked fine, so I need to try and reproduce your
environment more closely I suspect.

Can you provide the following information to help reproduce this:

- pahole head commit you tested with; it's described as 1.29-2 but I'd
like to understand exactly what commits are in that package
- which version of open-gpu-kernel-modules you used (which commit)
- the kernel the vmlinux you used was based on (which kernel tree, head
commit etc). the bug report says
/usr/src/linux-headers-6.12.17-amd64/vmlinux is used so does that
correspond to the stable tree 6.12 17 branch?
- which version of gcc you're building with

The more closely we can reproduce this the better. Unfortunately just
having the module itself without the base vmlinux doesn't allow us to
run pahole as we need base BTF + module for module BTF generation.

It's possible extracting base BTF might be enough here; from the vmlinux
you used something like

pahole -J -j --btf_features=default --lang_exclude=rust \
	--btf_encode_detached=vmlinux.btf \
	/usr/src/linux-headers-6.12.17-amd64/vmlinux

...would give us the vmlinux BTF, and we should be able to repro more
closely.

Thanks!

Alan

> Regards,
> Domenico
> 
> 
> The command to succeed:
> 
> This simplified (sequential) command succeeds:
> 
> cp nvidia-modeset.base.ko nvidia-modeset.ko
> LLVM_OBJCOPY="x86_64-linux-gnu-objcopy" pahole -J --btf_features=encode_force,var,float,enum64,decl_tag,type_tag,optimized_func,consistent_func,decl_tag_kfuncs --btf_features=distilled_base --btf_base vmlinux nvidia-modeset.ko -j1
> echo $?
> 
> producing this output:
> ===== 8< =====
> dwarf_expr: unhandled 0x12 DW_OP_ operation
> Unsupported DW_TAG_reference_type(0x10): type: 0x28172
> Error while encoding BTF.
> 0
> ===== >8 =====
> 
> 
> While this (parallel) command hangs:
> 
> cp nvidia-modeset.base.ko nvidia-modeset.ko
> LLVM_OBJCOPY="x86_64-linux-gnu-objcopy" pahole -J --btf_features=encode_force,var,float,enum64,decl_tag,type_tag,optimized_func,consistent_func,decl_tag_kfuncs --btf_features=distilled_base --btf_base vmlinux nvidia-modeset.ko -j2
> echo $?
> 
> producing this output:
> ===== 8< =====
> dwarf_expr: unhandled 0x12 DW_OP_ operation
> dwarf_expr: unhandled 0x12 DW_OP_ operation
> dwarf_expr: unhandled 0x12 DW_OP_ operation
> dwarf_expr: unhandled 0x12 DW_OP_ operation
> Unsupported DW_TAG_reference_type(0x10): type: 0x28172
> Error while encoding BTF.
> Terminated
> 143
> ===== >8 =====
> 
> 
> [0] https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1100503
> [1] https://bugs.debian.org/cgi-bin/bugreport.cgi?att=1;bug=1100503;filename=vmlinux.zst;msg=19
> [2] https://bugs.debian.org/cgi-bin/bugreport.cgi?att=1;bug=1100503;filename=nvidia-modeset.base.ko.zst;msg=12
> [3] https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1101262
> 


  reply	other threads:[~2025-03-25 11:32 UTC|newest]

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-03-25  9:10 parallel pahole hangs while building modules from nvidia-open-kernel-dkms Domenico Andreoli
2025-03-25 11:32 ` Alan Maguire [this message]
2025-03-26 20:48 ` Ihor Solodrai
2025-03-28  9:05   ` Domenico Andreoli
2025-03-28 16:25     ` Ihor Solodrai
2025-03-28 17:55       ` Ihor Solodrai
2025-03-28 20:25 ` Ihor Solodrai
2025-03-31 13:17   ` Alan Maguire

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=880f4a6f-cd49-41b4-be9c-38f85647467d@oracle.com \
    --to=alan.maguire@oracle.com \
    --cc=domenico.andreoli@linux.com \
    --cc=dwarves@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox