# The last sort takes 3s only, so it's not the core problem.

time find debian/build/build-oem \( -name vmlinux -o -name \*.ko \) -print0 | \
        xargs -0 -P $(nproc) -I % \
        sh -c "dwarfdump -i % | sed -n 
'/DW_AT_\(call\|decl\)_file.*\//s|.*\s/|/|p' | sort -u | flock -x 
debian/build/build-oem/sources.list.lock cat" > \
        debian/build/build-oem/sources.list

real    6m24.701s
user    38m56.094s
sys     6m17.660s

-- 
You received this bug notification because you are a member of Kernel
Packages, which is subscribed to linux in Ubuntu.
https://bugs.launchpad.net/bugs/2104911

Title:
  sources list generation using dwarfdump takes up to 0.5hr in build
  process

Status in linux package in Ubuntu:
  New
Status in linux source package in Focal:
  New
Status in linux source package in Jammy:
  New
Status in linux source package in Noble:
  New
Status in linux source package in Oracular:
  New
Status in linux source package in Plucky:
  New

Bug description:
  In debian/rules.d/2-binary-arch.mk, stamp-build-% targets, we have:
  ```
  # 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 $(build_dir) \( -name vmlinux -o -name \*.ko \) -exec dwarfdump -i {} \; 
| \
          grep -E 'DW_AT_(call|decl)_file' | sed -n 's|.*\s/|/|p' | sort -u > \
          $(build_dir)/sources.list
  test -s $(build_dir)/sources.list
  ```

  The process is single threaded and may takes up to half an hour to complete:
  ```
  $ time ...

  real 28m15.167s  
  user 54m32.917s  
  sys 4m32.531s
  ```

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/linux/+bug/2104911/+subscriptions


-- 
Mailing list: https://launchpad.net/~kernel-packages
Post to     : kernel-packages@lists.launchpad.net
Unsubscribe : https://launchpad.net/~kernel-packages
More help   : https://help.launchpad.net/ListHelp

Reply via email to