GNU bug report logs - #75402
[PATCH 0/3] Assorted kexec fixes

Previous Next

Package: guix-patches;

Reported by: Ludovic Courtès <ludo <at> gnu.org>

Date: Mon, 6 Jan 2025 12:58:01 UTC

Severity: normal

Tags: patch

Done: Ludovic Courtès <ludo <at> gnu.org>

Bug is archived. No further changes may be made.

Full log


Message #11 received at 75402 <at> debbugs.gnu.org (full text, mbox):

From: Ludovic Courtès <ludo <at> gnu.org>
To: 75402 <at> debbugs.gnu.org
Cc: Dariqq <dariqq <at> posteo.net>,
 Ludovic Courtès <ludo <at> gnu.org>
Subject: [PATCH 2/3] syscalls: Remove wrong syscall ID for ‘kexec_load_file’ on i686.
Date: Mon,  6 Jan 2025 13:58:36 +0100
Fixes <https://issues.guix.gnu.org/75205>.

* guix/build/syscalls.scm (kexec-load-file): Remove syscall ID for i686.
* tests/syscalls.scm ("kexec-load-file"): Accept ENOSYS in addition to
EPERM.

Reported-by: Dariqq <dariqq <at> posteo.net>
Change-Id: I83fe25636addb57533ed88cbfb40107d265b13a7
---
 guix/build/syscalls.scm | 2 +-
 tests/syscalls.scm      | 8 ++++----
 2 files changed, 5 insertions(+), 5 deletions(-)

diff --git a/guix/build/syscalls.scm b/guix/build/syscalls.scm
index 0f8927844b..7e16452462 100644
--- a/guix/build/syscalls.scm
+++ b/guix/build/syscalls.scm
@@ -794,8 +794,8 @@ (define kexec-load-file
                                          '*               ;cmdline
                                          unsigned-long))) ;flags
          (syscall-id (match (utsname:machine (uname))
-                       ("i686"    320)
                        ("x86_64"  320)
+                       ;; unsupported on i686
                        ("armv7l"  401)
                        ("aarch64" 294)
                        ("ppc64le" 382)
diff --git a/tests/syscalls.scm b/tests/syscalls.scm
index eef864d097..d2848879d7 100644
--- a/tests/syscalls.scm
+++ b/tests/syscalls.scm
@@ -1,5 +1,5 @@
 ;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2014-2021, 2024 Ludovic Courtès <ludo <at> gnu.org>
+;;; Copyright © 2014-2021, 2024-2025 Ludovic Courtès <ludo <at> gnu.org>
 ;;; Copyright © 2015 David Thompson <davet <at> gnu.org>
 ;;; Copyright © 2020 Simon South <simon <at> simonsouth.net>
 ;;; Copyright © 2020 Mathieu Othacehe <m.othacehe <at> gmail.com>
@@ -682,15 +682,15 @@ (define perform-container-tests?
 (when (or (zero? (getuid))
           (not (string-contains %host-type "linux")))
   (test-skip 1))
-(test-equal "kexec-load-file"
-  EPERM
+(test-assert "kexec-load-file"
   (catch 'system-error
     (lambda ()
       (let ((fd1 (open-fdes "/dev/null" O_RDONLY))
             (fd2 (open-fdes "/dev/null" O_RDONLY)))
         (kexec-load-file fd1 fd2 "gnu.repl=yes")))
     (lambda args
-      (system-error-errno args))))
+      (member (system-error-errno args)
+              (list EPERM ENOSYS)))))
 
 (test-end)
 
-- 
2.47.1





This bug report was last modified 135 days ago.

Previous Next


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