GNU bug report logs - #71175
[PATCH] gnu: linux-libre: Parallelize linux-libre module installation

Previous Next

Package: guix-patches;

Reported by: Richard Sent <richard <at> freakingpenguin.com>

Date: Fri, 24 May 2024 16:56:02 UTC

Severity: normal

Tags: patch

Done: Richard Sent <richard <at> freakingpenguin.com>

Bug is archived. No further changes may be made.

Full log


View this message in rfc822 format

From: Richard Sent <richard <at> freakingpenguin.com>
To: 71175 <at> debbugs.gnu.org
Cc: Richard Sent <richard <at> freakingpenguin.com>, Leo Famulari <leo <at> famulari.name>, Tobias Geerinckx-Rice <me <at> tobias.gr>, Wilko Meyer <w <at> wmeyer.eu>
Subject: [bug#71175] [PATCH] gnu: linux-libre: Parallelize linux-libre module installation
Date: Fri, 24 May 2024 12:49:42 -0400
* gnu/packages/linux.scm (make-linux-libre*): Parallelize kernel module
installation when possible.

Change-Id: I6ee8223d8a4a33f92907498d7f2b95675b2aa940
---
Hi Guix!

This patch aims to speed up the kernel build process. Because module
installation has a fair amount of CPU activity (GZIP+STRIP), it
benefits from additional jobs. On my 32 logical core machine, the
install phase of linux-libre went from 45.4 seconds to 9.4 seconds.

 gnu/packages/linux.scm | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm
index a9b78a7986..1357be4e86 100644
--- a/gnu/packages/linux.scm
+++ b/gnu/packages/linux.scm
@@ -1041,7 +1041,7 @@ (define* (make-linux-libre* version gnu-revision source supported-systems
                   (close-port port))
                 (invoke "make" "oldconfig"))))
           (replace 'install
-            (lambda _
+            (lambda* (#:key parallel-build? #:allow-other-keys)
               (let ((moddir (string-append #$output "/lib/modules"))
                     (dtbdir (string-append #$output "/lib/dtbs")))
                 ;; Install kernel image, kernel configuration and link map.
@@ -1056,6 +1056,9 @@ (define* (make-linux-libre* version gnu-revision source supported-systems
                 ;; Install kernel modules
                 (mkdir-p moddir)
                 (invoke "make"
+                        "-j" (if parallel-build?
+                                 (number->string (parallel-job-count))
+                                 "1")
                         ;; Disable depmod because the Guix system's module
                         ;; directory is an union of potentially multiple
                         ;; packages.  It is not possible to use depmod to

base-commit: 9901416233867233192b63fde7f616751127b189
-- 
2.41.0





This bug report was last modified 1 year and 48 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.