** Description changed:

  [ Impact ]
  
  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
  ```
  
  [ Fix ]
  
- Process modules in parallel.
+ Remove the logic to collect the list of kernel source files during the
+ build. We have all the data in the debug packages and can extract it
+ after the build.
  
  [ Test Plan ]
  
- Inspect the build logs and verify reasonable run times for the
- collection. Should be single digit minutes.
+ Inspect the build logs and the content of the linux-buildinfo packages
+ to verify the data is no longer collected.
  
  [ Where Problems Could Occur ]
  
- Potential build failures due to CPU and/or memory starvation.
+ Potential build failures.

** Description changed:

  [ Impact ]
  
  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
  ```
  
  [ Fix ]
  
  Remove the logic to collect the list of kernel source files during the
  build. We have all the data in the debug packages and can extract it
  after the build.
  
+ This reverts the changes for bug 2104911.
+ 
  [ Test Plan ]
  
  Inspect the build logs and the content of the linux-buildinfo packages
  to verify the data is no longer collected.
  
  [ Where Problems Could Occur ]
  
  Potential build failures.

** Description changed:

  [ Impact ]
  
  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
  ```
  
  [ Fix ]
  
  Remove the logic to collect the list of kernel source files during the
  build. We have all the data in the debug packages and can extract it
  after the build.
  
- This reverts the changes for bug 2104911.
+ This reverts the changes for bug 2086606.
  
  [ Test Plan ]
  
  Inspect the build logs and the content of the linux-buildinfo packages
  to verify the data is no longer collected.
  
  [ Where Problems Could Occur ]
  
  Potential build failures.

** Description changed:

  [ Impact ]
  
  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
  ```
  
  [ Fix ]
  
- Remove the logic to collect the list of kernel source files during the
- build. We have all the data in the debug packages and can extract it
- after the build.
+ This takes way too long. Parallelization introduces new/different
+ issues. Remove the logic to collect the list of kernel source files
+ during the build. We have all the data in the debug packages and can
+ extract it after the build.
  
  This reverts the changes for bug 2086606.
  
  [ Test Plan ]
  
  Inspect the build logs and the content of the linux-buildinfo packages
  to verify the data is no longer collected.
  
  [ Where Problems Could Occur ]
  
  Potential build failures.

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

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

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


-- 
ubuntu-bugs mailing list
[email protected]
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to