** 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 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:
  In Progress
Status in linux source package in Focal:
  In Progress
Status in linux source package in Jammy:
  In Progress
Status in linux source package in Noble:
  In Progress
Status in linux source package in Oracular:
  Won't Fix
Status in linux source package in Plucky:
  In Progress
Status in linux source package in Questing:
  In Progress

Bug description:
  [ 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 ]

  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.

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     : [email protected]
Unsubscribe : https://launchpad.net/~kernel-packages
More help   : https://help.launchpad.net/ListHelp

Reply via email to