Public bug reported:

I had recent discussion with kernel team regarding support or not BTF in
HWE kernels (Bionic and Focal). Having CONFIG_DEBUG_INFO_BTF option
enabled for HWE kernels (v4.4 and v.4.8) would allow eBPF based code
(powered by libbpf or not) to be RO.CE
(https://github.com/rafaeldtinoco/portablebpf for more information).

By allowing runtime relocations, using provided BTF, libbpf binaries
might end up running, without modifications, in different kernel
versions (from Bionic HWE v5.4 kernel to Hirsute v5.11).

A good example would be to support tools such as:
https://github.com/aquasecurity/tracee/discussions/713#discussioncomment-665641
An ebpf powered backend for a containers security solution.

Considering:

$ rmadisonb dwarves
 dwarves | 1.9-1          | precise/universe | amd64
 dwarves | 1.10-2         | trusty           | amd64
 dwarves | 1.10-2.1       | xenial/universe  | amd64
 dwarves | 1.10-2.1build1 | bionic/universe  | amd64
 dwarves | 1.15-2         | focal/universe   | amd64
 dwarves | 1.17-1         | groovy/universe  | amd64
 dwarves | 1.20-1         | hirsute/universe | amd64
 dwarves | 1.20-1         | impish/universe  | amd64

And the fact that the 'pahole' binary, from dwarves package, is the one
to blame, not to have CONFIG_DEBUG_INFO_BTF available, for this bug to
be solved we would have to provide a backport of dwarves (at least
1.17-1) to Bionic and Focal. It could have another name (not to mess
with original dwarves package and its dependencies) and it is unclear if
it needs to be in [main] or [universe].

Question: Would have dwarves backported in -backports be enough for
Bionic and Focal HWE kernels compilation to have CONFIG_DEBUG_INFO_BTF
enabled ?

** Affects: dwarves-dfsg (Ubuntu)
     Importance: Undecided
         Status: New

** Affects: linux (Ubuntu)
     Importance: Undecided
         Status: Incomplete

** Affects: dwarves-dfsg (Ubuntu Bionic)
     Importance: Undecided
         Status: Confirmed

** Affects: linux (Ubuntu Bionic)
     Importance: Undecided
         Status: Confirmed

** Affects: dwarves-dfsg (Ubuntu Focal)
     Importance: Undecided
         Status: Confirmed

** Affects: linux (Ubuntu Focal)
     Importance: Undecided
         Status: Confirmed

** Affects: dwarves-dfsg (Ubuntu Groovy)
     Importance: Undecided
         Status: Fix Released

** Affects: linux (Ubuntu Groovy)
     Importance: Undecided
         Status: Fix Released

** Also affects: linux (Ubuntu Focal)
   Importance: Undecided
       Status: New

** Also affects: linux (Ubuntu Groovy)
   Importance: Undecided
       Status: New

** Also affects: linux (Ubuntu Bionic)
   Importance: Undecided
       Status: New

** Changed in: linux (Ubuntu Groovy)
       Status: New => Fix Committed

** Changed in: linux (Ubuntu Groovy)
       Status: Fix Committed => Fix Released

** Changed in: linux (Ubuntu Focal)
       Status: New => Confirmed

** Changed in: linux (Ubuntu Bionic)
       Status: New => Confirmed

** Summary changed:

- HWE kernels should enable BTF support to enable new eBPF based code
+ HWE kernels should enable BTF support to enable eBPF RO.CE support

** Also affects: dwarves-dfsg (Ubuntu)
   Importance: Undecided
       Status: New

** Changed in: dwarves-dfsg (Ubuntu Groovy)
       Status: New => Fix Released

** Changed in: dwarves-dfsg (Ubuntu Focal)
       Status: New => Confirmed

** Changed in: dwarves-dfsg (Ubuntu Bionic)
       Status: New => Confirmed

-- 
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/1926330

Title:
  HWE kernels should enable BTF support to enable eBPF RO.CE support

Status in dwarves-dfsg package in Ubuntu:
  New
Status in linux package in Ubuntu:
  Incomplete
Status in dwarves-dfsg source package in Bionic:
  Confirmed
Status in linux source package in Bionic:
  Confirmed
Status in dwarves-dfsg source package in Focal:
  Confirmed
Status in linux source package in Focal:
  Confirmed
Status in dwarves-dfsg source package in Groovy:
  Fix Released
Status in linux source package in Groovy:
  Fix Released

Bug description:
  I had recent discussion with kernel team regarding support or not BTF
  in HWE kernels (Bionic and Focal). Having CONFIG_DEBUG_INFO_BTF option
  enabled for HWE kernels (v4.4 and v.4.8) would allow eBPF based code
  (powered by libbpf or not) to be RO.CE
  (https://github.com/rafaeldtinoco/portablebpf for more information).

  By allowing runtime relocations, using provided BTF, libbpf binaries
  might end up running, without modifications, in different kernel
  versions (from Bionic HWE v5.4 kernel to Hirsute v5.11).

  A good example would be to support tools such as:
  
https://github.com/aquasecurity/tracee/discussions/713#discussioncomment-665641
  An ebpf powered backend for a containers security solution.

  Considering:

  $ rmadisonb dwarves
   dwarves | 1.9-1          | precise/universe | amd64
   dwarves | 1.10-2         | trusty           | amd64
   dwarves | 1.10-2.1       | xenial/universe  | amd64
   dwarves | 1.10-2.1build1 | bionic/universe  | amd64
   dwarves | 1.15-2         | focal/universe   | amd64
   dwarves | 1.17-1         | groovy/universe  | amd64
   dwarves | 1.20-1         | hirsute/universe | amd64
   dwarves | 1.20-1         | impish/universe  | amd64

  And the fact that the 'pahole' binary, from dwarves package, is the
  one to blame, not to have CONFIG_DEBUG_INFO_BTF available, for this
  bug to be solved we would have to provide a backport of dwarves (at
  least 1.17-1) to Bionic and Focal. It could have another name (not to
  mess with original dwarves package and its dependencies) and it is
  unclear if it needs to be in [main] or [universe].

  Question: Would have dwarves backported in -backports be enough for
  Bionic and Focal HWE kernels compilation to have CONFIG_DEBUG_INFO_BTF
  enabled ?

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/dwarves-dfsg/+bug/1926330/+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