# Use `dwarfdump --search-regex` to reduce output lines. Worse. time find debian/build/build-oem \( -name vmlinux -o -name \*.ko \) -print0 | \ xargs -0 -P $(nproc) -I % \ sh -c "dwarfdump --search-regex='DW_AT_(call|decl)_file' % | awk '/^DW_AT_(call|decl)_file.*\// {print substr($0, index($0, \"/\"))}' | sort -u | flock -x debian/build/build-oem/sources.list.lock cat" | sort -u > \ debian/build/build-oem/sources.list
real 7m20.015s user 40m55.983s sys 6m36.425s ========================================================= # Use `sort --parallel`. No much improves. time find /home/vicamo/build/worktree/1/debian/build/build-oem \( -name vmlinux -o -name \*.ko \) -print0 | \ xargs -0 -P $(nproc) -I % \ sh -c "dwarfdump -i % | awk '/DW_AT_(call|decl)_file.*\// {print substr($0, index($0, \"/\"))}' | sort -u | flock -x /home/vicamo/build/worktree/1/debian/build/build-oem/sources.list.lock cat" | sort -u --parallel=$(nproc) > \ /home/vicamo/build/worktree/1/debian/build/build-oem/sources.list real 6m27.027s user 39m10.054s sys 5m41.264s -- 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