guix-patches
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[bug#70962] [PATCH 14/14] gnu: linux-libre-with-bpf: Deprecate in favor


From: Maxim Cournoyer
Subject: [bug#70962] [PATCH 14/14] gnu: linux-libre-with-bpf: Deprecate in favor of linux-libre.
Date: Wed, 15 May 2024 12:57:24 -0400

The kernel has progressively enabled the BPF settings, to the point where
having a separate kernel for it makes little sense, so repatriate the few
non-default BPF-related configs to our main kernel.

* gnu/packages/linux.scm (%bpf-extra-linux-options): Delete variable.
(default-extra-linux-options): Enable CONFIG_NET_CLS_BPF and
CONFIG_NET_ACT_BPF.  CONFIG_IKHEADERS is dropped as it adds 4 MiB to the
kernel image and appears somewhat redundant with BTF debug info.
(linux-libre-with-bpf): Deprecate to linux-libre.

Change-Id: Id672241916dcbcdca7cbc16d869d00223446cd3d
---

 gnu/packages/linux.scm | 46 +++---------------------------------------
 1 file changed, 3 insertions(+), 43 deletions(-)

diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm
index 7147a6b41a..96921805db 100644
--- a/gnu/packages/linux.scm
+++ b/gnu/packages/linux.scm
@@ -847,6 +847,8 @@ (define (default-extra-linux-options version)
     ,@(if (version>=? version "5.13")
           '(("BPF_UNPRIV_DEFAULT_OFF" . #t))
           '())
+    ("CONFIG_NET_CLS_BPF" . m)         ;classify packets based on BPF filters
+    ("CONFIG_NET_ACT_BPF" . m)         ;to execute BPF code on packets
     ;; Compress kernel modules via Zstd.
     ,(if (version>=? version "5.13")
          '("CONFIG_MODULE_COMPRESS_ZSTD" . #t)
@@ -903,30 +905,6 @@ (define (default-extra-linux-options version)
     ("CONFIG_CIFS" . m)
     ("CONFIG_9P_FS" . m)))
 
-;; See 
https://github.com/iovisor/bcc/blob/master/INSTALL.md#kernel-configuration
-(define %bpf-extra-linux-options
-  `(;; Needed for probes
-    ("CONFIG_UPROBE_EVENTS" . #t)
-    ("CONFIG_KPROBE_EVENTS" . #t)
-    ;; kheaders module also helpful for tracing
-    ("CONFIG_IKHEADERS" . #t)
-    ("CONFIG_BPF" . #t)
-    ("CONFIG_BPF_SYSCALL" . #t)
-    ("CONFIG_BPF_JIT_ALWAYS_ON" . #t)
-    ;; optional, for tc filters
-    ("CONFIG_NET_CLS_BPF" . m)
-    ;; optional, for tc actions
-    ("CONFIG_NET_ACT_BPF" . m)
-    ("CONFIG_BPF_JIT" . #t)
-    ;; for Linux kernel versions 4.1 through 4.6
-    ;; ("CONFIG_HAVE_BPF_JIT" . y)
-    ;; for Linux kernel versions 4.7 and later
-    ("CONFIG_HAVE_EBPF_JIT" . #t)
-    ;; optional, for kprobes
-    ("CONFIG_BPF_EVENTS" . #t)
-    ;; kheaders module
-    ("CONFIG_IKHEADERS" . #t)))
-
 (define (config->string options)
   (string-join (map (match-lambda
                       ((option . 'm)
@@ -1396,25 +1374,7 @@ (define-public linux-libre-mips64el-fuloong2e
                       (default-extra-linux-options linux-libre-version))))
 
 (define-public linux-libre-with-bpf
-  (let ((base-linux-libre
-         (make-linux-libre*
-          linux-libre-6.8-version
-          linux-libre-6.8-gnu-revision
-          linux-libre-6.8-source
-          '("x86_64-linux" "i686-linux" "armhf-linux"
-            "aarch64-linux" "powerpc64le-linux" "riscv64-linux")
-          #:extra-version "bpf"
-          #:configuration-file kernel-config
-          #:extra-options
-          (append %bpf-extra-linux-options
-                  (default-extra-linux-options linux-libre-6.8-version)))))
-    (package
-      (inherit base-linux-libre)
-      (inputs (modify-inputs (package-inputs base-linux-libre)
-                (prepend cpio)))
-      (synopsis "Linux-libre with BPF support")
-      (description "This package provides GNU Linux-Libre with support
-for @acronym{BPF, the Berkeley Packet Filter}."))))
+  (deprecated-package "linux-libre-with-bpf" linux-libre))
 
 
 ;;;
-- 
2.41.0






reply via email to

[Prev in Thread] Current Thread [Next in Thread]