[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[bug#70962] [PATCH 12/14] gnu: linux-libre: Enable BTF debug info.
From: |
Maxim Cournoyer |
Subject: |
[bug#70962] [PATCH 12/14] gnu: linux-libre: Enable BTF debug info. |
Date: |
Wed, 15 May 2024 12:57:22 -0400 |
This is needed for software making use of eBPF programs, such as the sysdig
utility, among others. For more information about BPF, see:
<https://brendangregg.com/blog/2020-11-04/bpf-co-re-btf-libbpf.html>.
* gnu/packages/linux.scm (%default-extra-linux-options): Enable
CONFIG_DEBUG_INFO, CONFIG_DEBUG_INFO_BTF,
CONFIG_DEBUG_INFO_DWARF_TOOLCHAIN_DEFAULT, CONFIG_BPF_JIT,
CONFIG_BPF_JIT_ALWAYS_ON, CONFIG_BPF_SYSCALL and BPF_UNPRIV_DEFAULT_OFF.
Disable CONFIG_DEBUG_INFO_REDUCED.
(make-linux-libre*) [native-inputs]: Add dwarves, python-wrapper and zlib.
Change-Id: Idfc64f82aa404e86168bffcf721a325f9e807f75
---
gnu/packages/linux.scm | 25 ++++++++++++++++++++++++-
1 file changed, 24 insertions(+), 1 deletion(-)
diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm
index eaa9f66d74..d2b9344296 100644
--- a/gnu/packages/linux.scm
+++ b/gnu/packages/linux.scm
@@ -829,6 +829,24 @@ (define (default-extra-linux-options version)
`(;; Make the kernel config available at /proc/config.gz
("CONFIG_IKCONFIG" . #t)
("CONFIG_IKCONFIG_PROC" . #t)
+ ;; Debugging options.
+ ("CONFIG_DEBUG_INFO" . #t) ;required by BTF
+ ,@(if (version>=? version "5.1")
+ '(("CONFIG_DEBUG_INFO_BTF" . #t))
+ '())
+ ,@(if (version>=? version "5.12")
+ '(("CONFIG_DEBUG_INFO_DWARF_TOOLCHAIN_DEFAULT" . #t))
+ '())
+ ("CONFIG_DEBUG_INFO_REDUCED" . #f) ;incompatible with BTF
+ ;; Tracing and related options.
+ ,@(if (version>=? version "5.1")
+ '(("CONFIG_BPF_JIT" . #t)
+ ("CONFIG_BPF_JIT_ALWAYS_ON" . #t)
+ ("CONFIG_BPF_SYSCALL" . #t))
+ '())
+ ,@(if (version>=? version "5.13")
+ '(("BPF_UNPRIV_DEFAULT_OFF" . #t))
+ '())
;; Some very mild hardening.
("CONFIG_SECURITY_DMESG_RESTRICT" . #t)
;; All kernels should have NAMESPACES options enabled
@@ -1107,7 +1125,12 @@ (define* (make-linux-libre* version gnu-revision source
supported-systems
;; These are needed to compile the GCC plugins.
gmp
mpfr
- mpc))
+ mpc
+ ;; These are needed when building with the CONFIG_DEBUG_INFO_BTF
+ ;; support.
+ dwarves ;for pahole
+ python-wrapper
+ zlib))
(home-page "https://www.gnu.org/software/linux-libre/")
(synopsis "100% free redistribution of a cleaned Linux kernel")
(description "GNU Linux-Libre is a free (as in freedom) variant of the
--
2.41.0
- [bug#70962] [PATCH 01/14] gnu: grpc: Modernize., Maxim Cournoyer, 2024/05/15
- [bug#70962] [PATCH 03/14] gnu: Add valijson., Maxim Cournoyer, 2024/05/15
- [bug#70962] [PATCH 02/14] gnu: grpc: Propagate abseil-cpp-cxxstd11., Maxim Cournoyer, 2024/05/15
- [bug#70962] [PATCH 05/14] gnu: libbpf: Update to 1.4.1., Maxim Cournoyer, 2024/05/15
- [bug#70962] [PATCH 08/14] gnu: Add dwarves., Maxim Cournoyer, 2024/05/15
- [bug#70962] [PATCH 12/14] gnu: linux-libre: Enable BTF debug info.,
Maxim Cournoyer <=
- [bug#70962] [PATCH 10/14] gnu: make-linux-libre*: Run install targets in parallel., Maxim Cournoyer, 2024/05/15
- [bug#70962] [PATCH 07/14] gnu: Add sysdig., Maxim Cournoyer, 2024/05/15
- [bug#70962] [PATCH 04/14] gnu: libbpf: Use gexps., Maxim Cournoyer, 2024/05/15
- [bug#70962] [PATCH 14/14] gnu: linux-libre-with-bpf: Deprecate in favor of linux-libre., Maxim Cournoyer, 2024/05/15
- [bug#70962] [PATCH 06/14] gnu: Add falcosecurity-libs., Maxim Cournoyer, 2024/05/15
- [bug#70962] [PATCH 13/14] gnu: linux-libre: Enable Zstd compression of kernel modules., Maxim Cournoyer, 2024/05/15
- [bug#70962] [PATCH 11/14] gnu: linux: Turn %default-extra-linux-options into a procedure., Maxim Cournoyer, 2024/05/15
- [bug#70962] [PATCH 09/14] gnu: make-linux-libre*: Set KBUILD_BUILD_VERSION for reproducibility., Maxim Cournoyer, 2024/05/15