Cmnt: [SRU][F][PATCH] UBUNTU: [Packaging] Fix source files collection

Juerg Haefliger juerg.haefliger at canonical.com
Wed Jan 8 13:29:27 UTC 2025


On Tue, 7 Jan 2025 14:58:32 -0600
Jacob Martin <jacob.martin at canonical.com> wrote:

> On Tue, Dec 03, 2024 at 08:15:33PM -0300, Magali Lemes wrote:
> > On 28/11/2024 04:14, Juerg Haefliger wrote:  
> > > BugLink: https://bugs.launchpad.net/bugs/2089817
> > > 
> > > vmlinux is ignored due to missing parentheses. Fix that.
> > > 
> > > Signed-off-by: Juerg Haefliger <juerg.haefliger at canonical.com>
> > > ---
> > >   debian/rules.d/2-binary-arch.mk | 2 +-
> > >   1 file changed, 1 insertion(+), 1 deletion(-)
> > > 
> > > diff --git a/debian/rules.d/2-binary-arch.mk b/debian/rules.d/2-binary-arch.mk
> > > index d9eaafaa6abd..a64752cc4d05 100644
> > > --- a/debian/rules.d/2-binary-arch.mk
> > > +++ b/debian/rules.d/2-binary-arch.mk
> > > @@ -59,7 +59,7 @@ $(stampdir)/stamp-build-%: $(stampdir)/stamp-prepare-%
> > >   	# Collect the list of kernel source files used for this build. Need to do this early
> > >   	# before modules are stripped. Fail if the resulting file is empty.
> > > -	find $(builddir)/build-$* -name vmlinux -o -name \*.ko -exec dwarfdump -i {} \; | \
> > > +	find $(builddir)/build-$* \( -name vmlinux -o -name \*.ko \) -exec dwarfdump -i {} \; | \
> > >   		grep -E 'DW_AT_(call|decl)_file' | sed -n 's|.*\s/|/|p' | sort -u > \
> > >   		$(builddir)/build-$*/sources.list
> > >   	test -s $(builddir)/build-$*/sources.list  
> > 
> > I'm not sure if I'm messing my builds, but it seems like the sources list
> > for amd64 still doesn't include the files from vmlinux.
> > I did try ppc64el, for instance, and I did find vmlinux source files, so I'm
> > a little unsure about what's happening.
> >   
> 
> I'm seeing what I think is an issue here, too --
> 
> I applied these patches to the generic oracular, noble, jammy, and focal
> kernels and built them.
> 
> I used init/main.c as a source file that I expect to be present in the sources
> list of all combinations.
> 
> The following series:arch combinations were missing the init/main.c file in
> their sources list:
> oracular: armhf ppc64el s390x
> noble: armhf ppc64el s390x
> jammy: all had init/main.c listed
> focal: amd64

Thanks for that thorough testing!

Hrm. It looks like some arches and/or versions of gcc store the filepath
in DW_AT_name. Sigh. This needs more work.


...Juerg


> Jacob
> 

-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 833 bytes
Desc: OpenPGP digital signature
URL: <https://lists.ubuntu.com/archives/kernel-team/attachments/20250108/d229cdb7/attachment.sig>


More information about the kernel-team mailing list