From patchwork Mon May 15 19:36:57 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Janneke Nieuwenhuizen X-Patchwork-Id: 50030 Return-Path: X-Original-To: patchwork@mira.cbaines.net Delivered-To: patchwork@mira.cbaines.net Received: by mira.cbaines.net (Postfix, from userid 113) id 0E29D27BBE2; Mon, 15 May 2023 20:38:37 +0100 (BST) X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on mira.cbaines.net X-Spam-Level: X-Spam-Status: No, score=-3.7 required=5.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,MAILING_LIST_MULTI,RCVD_IN_MSPIKE_H2,SPF_HELO_PASS, URIBL_BLOCKED autolearn=ham autolearn_force=no version=3.4.6 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mira.cbaines.net (Postfix) with ESMTPS id 0760427BBEA for ; Mon, 15 May 2023 20:38:35 +0100 (BST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1pye1E-0008Uw-Ko; Mon, 15 May 2023 15:38:04 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pye1C-0008UG-TX for guix-patches@gnu.org; Mon, 15 May 2023 15:38:02 -0400 Received: from debbugs.gnu.org ([209.51.188.43]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1pye1C-0000Eo-Lc for guix-patches@gnu.org; Mon, 15 May 2023 15:38:02 -0400 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1pye1C-0004Dw-Gx for guix-patches@gnu.org; Mon, 15 May 2023 15:38:02 -0400 X-Loop: help-debbugs@gnu.org Subject: [bug#63527] [PATCH 1/3] DRAFT gnu: Add rumpkernel. Resent-From: Janneke Nieuwenhuizen Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Mon, 15 May 2023 19:38:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 63527 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: 63527@debbugs.gnu.org Received: via spool by 63527-submit@debbugs.gnu.org id=B63527.168417943116153 (code B ref 63527); Mon, 15 May 2023 19:38:02 +0000 Received: (at 63527) by debbugs.gnu.org; 15 May 2023 19:37:11 +0000 Received: from localhost ([127.0.0.1]:44477 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1pye0M-0004CS-I9 for submit@debbugs.gnu.org; Mon, 15 May 2023 15:37:11 -0400 Received: from eggs.gnu.org ([209.51.188.92]:37518) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1pye0K-0004C7-E5 for 63527@debbugs.gnu.org; Mon, 15 May 2023 15:37:09 -0400 Received: from fencepost.gnu.org ([2001:470:142:3::e]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pye0F-0008VA-53; Mon, 15 May 2023 15:37:03 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=MIME-Version:References:In-Reply-To:Date:Subject:To: From; bh=ouhDeB3JbtDrsWFNUIEGt3CZLBpLC+p9B7GWsiUlypA=; b=e4fulqqoyPEe98vystFu q+jJXFdZ14b9LtcnV7NbCgbwdc5PKD34CJIROo8cCAKG8dBXYSZA+eAtZe167ud89HZzZyPL2C4E0 aAGKE5ebKS5GVkH3/pTByJgBcLyU4pcd7Hsy8572zJvwdhE/lj2qXhl/j3XKRFutVateo5xpZH6sK 3g+nXdNk0QLiu82ywkbdwM6senZltZLJbZzvjDYoSXpSWEQIRZTbhYtCrOuFjzov7wX8IoIN58kLl jomr/nir4M7NYRACbnyUHNRDzxDa4b5dM68bdArKuRwsGO4cXwPDZJTCeI7wSh/zhaxMUK9IfwgWR tq2vf4v6DDDUnQ==; Received: from 2a02-a462-da03-1-2701-7f81-a736-4607.fixed6.kpn.net ([2a02:a462:da03:1:2701:7f81:a736:4607] helo=drakenpad.fritz.box) by fencepost.gnu.org with esmtpa (Exim 4.90_1) (envelope-from ) id 1pye0D-0002J4-4l; Mon, 15 May 2023 15:37:02 -0400 From: Janneke Nieuwenhuizen Date: Mon, 15 May 2023 21:36:57 +0200 Message-Id: <3c1235a19285d40174f0aadb1ac5fdead22f2961.1684177770.git.janneke@gnu.org> X-Mailer: git-send-email 2.39.2 In-Reply-To: References: MIME-Version: 1.0 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: guix-patches@gnu.org List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org Sender: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org X-getmail-retrieved-from-mailbox: Patches XXX We should probably not use Debian Salsa as source for the rumpkernel checkout and patches and use the rumpkernel upstream instead copying Debian's patches into our archive? Using the easier route as a first attempt to git it to build (and boot) first. * gnu/packages/hurd.scm (rumpkernel): New variable. --- gnu/packages/hurd.scm | 216 +++++++++++++++++++++++++++++++++++++++++- 1 file changed, 215 insertions(+), 1 deletion(-) diff --git a/gnu/packages/hurd.scm b/gnu/packages/hurd.scm index 34c7c00f2d..f834abcf43 100644 --- a/gnu/packages/hurd.scm +++ b/gnu/packages/hurd.scm @@ -3,7 +3,7 @@ ;;; Copyright © 2018, 2020-2023 Ludovic Courtès ;;; Copyright © 2020 Efraim Flashner ;;; Copyright © 2020 Marius Bakke -;;; Copyright © 2020, 2022 Jan (janneke) Nieuwenhuizen +;;; Copyright © 2020, 2022, 2023 Janneke Nieuwenhuizen ;;; Copyright © 2020 Ricardo Wurmus ;;; Copyright © 2020 Rene Saavedra ;;; @@ -662,3 +662,217 @@ (define-public netdde ;; Some drivers are dually licensed with the options being GPLv2 or one ;; of MPL/Expat/BSD-3 (dependent on the driver). (license gpl2)))) + +(define-public rumpkernel + (let ((commit "cd34aee0ee0f7a06011b2f988ce27a8fdc7ba900") + (revision "0")) + (package + (name "rumpkernel") + (version (git-version "0-20211031" revision commit)) + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://salsa.debian.org/hurd-team/rumpkernel.git") + (commit commit))) + (sha256 + (base32 + "0dqr6nzsv25p66yiambq4jcq4870vzf23289cns0gdpk74gamm4l")) + (file-name (git-file-name name commit)))) + (build-system gnu-build-system) + (arguments + (list + #:tests? #f + #:modules '((srfi srfi-26) + (ice-9 match) + (ice-9 rdelim) + (guix build utils) + (guix build gnu-build-system)) + #:phases + #~(modify-phases %standard-phases + (add-after 'unpack 'apply-patches + (lambda* (#:key target #:allow-other-keys) + (let* ((patch-directory "debian/patches/") + (series (string-append patch-directory "series")) + (text (with-input-from-file series read-string)) + (lines (string-split (string-trim-right text) #\newline)) + (patches (filter (negate (cute string-prefix? "#" <>)) + lines)) + (patch-files (map (cute string-append patch-directory <>) + patches))) + (for-each + (cute invoke "patch" "--force" "-p1" "-i" <>) + patch-files) + (when target + (substitute* "pci-userspace/src-gnu/Makefile.inc" + (("\\") + (string-append target "-mig"))) + (substitute* "buildrump.sh/src/build.sh" + (("if [[] \"$[{]tool[}]\" = \"CC\" []]; then" all) + (string-append + "if [ \"${tool}\" = \"AR\" ]; then + lctool=${TARGET_AR-ar} + elif [ \"${tool}\" = \"NM\" ]; then + lctool=${TARGET_NM-nm} +el" + all)))) + ;; Avoid #! /gnu/store/...-bash/gnu/store/...-bash/bin/sh + (substitute* '("buildrump.sh/src/tools/genassym/Makefile" + "buildrump.sh/src/tools/lorder/Makefile") + (("[$][{]TOOL_SED[}] -e \"s,/bin/sh") + "${TOOL_SED} -e \"s,[ !]/bin/sh"))))) + (add-before 'configure 'setenv + (lambda* (#:key build target #:allow-other-keys) + (define (noisy-setenv name value) + (setenv name value) + (format (current-error-port) "set ~a=~s\n" name value)) + (noisy-setenv "HOST_CC" "gcc") + (let ((target (or target build))) + (noisy-setenv "TARGET_AR" (string-append target "-ar")) + (noisy-setenv "TARGET_CC" (string-append target "-gcc")) + (noisy-setenv "TARGET_CXX" (string-append target "-g++")) + (noisy-setenv "TARGET_LD" (string-append target "-ld")) + (noisy-setenv "TARGET_NM" (string-append target "-nm"))) + (setenv "PAWD" "pwd") + (for-each + (cute noisy-setenv <> "") + '("_GCC_CRTENDS" + "_GCC_CRTEND" + "_GCC_CRTBEGINS" + "_GCC_CRTBEGIN" + "_GCC_CRTI" + "_GCC_CRTN")) + (noisy-setenv "BSDOBJDIR=" (string-append (getcwd) "/obj")))) + (replace 'configure + (lambda args + (let ((configure (assoc-ref %standard-phases 'configure))) + (with-directory-excursion "buildrump.sh/src/lib/librumpuser" + (apply configure args))))) + (replace 'build + (lambda* (#:key parallel-build? #:allow-other-keys) + (let* ((jobs (if parallel-build? (parallel-job-count) 1)) + (host-cpu (match #$(or (%current-target-system + (%current-system))) + ("i586-pc-gnu" "i386") + ("i686-linux" "i386") + ("x86_64-linux" "amd64"))) + (toprump (string-append + (getcwd) + "/buildrump.sh/src/sys/rump")) + (rump-make (string-append + (getcwd) + "/buildrump.sh/src/obj/tooldir/bin/nbmake-" + host-cpu))) + (mkdir "obj") + (with-directory-excursion "buildrump.sh/src" + (invoke + "sh" "build.sh" + "-V" "TOOLS_BUILDRUMP=yes" + "-V" "MKBINUTILS=no" + "-V" "MKGDB=no" + "-V" "MKGROFF=no" + "-V" (string-append "TOPRUMP=" toprump) + "-V" "BUILDRUMP_CPPFLAGS=-Wno-error=stringop-overread" + "-V" "RUMPUSER_EXTERNAL_DPLIBS=pthread" + "-V" (string-append + "CPPFLAGS=" + " -I../../obj/destdir." host-cpu "/usr/include" + " -D_FILE_OFFSET_BITS=64" + " -DRUMP_REGISTER_T=int" + " -DRUMPUSER_CONFIG=yes" + " -DNO_PCI_MSI_MSIX=yes" + " -DNUSB_DMA=1") + "-V" (string-append + "CWARNFLAGS=" + " -Wno-error=maybe-uninitialized" + " -Wno-error=address-of-packed-member" + " -Wno-error=unused-variable" + " -Wno-error=stack-protector" + " -Wno-error=array-parameter" + " -Wno-error=array-bounds" + " -Wno-error=stringop-overflow") + "-V" "LIBCRTBEGIN=" + "-V" "LIBCRTEND=" + "-V" "LIBCRT0=" + "-V" "LIBCRTI=" + "-V" "_GCC_CRTENDS=" + "-V" "_GCC_CRTEND=" + "-V" "_GCC_CRTBEGINS=" + "-V" "_GCC_CRTBEGIN=" + "-V" "_GCC_CRTI=" + "-V" "_GCC_CRTN=" + "-U" + "-u" + "-T" "./obj/tooldir" + "-m" host-cpu + "-j" (number->string jobs) + "tools" + "rump")) + (with-directory-excursion "buildrump.sh/src/lib/librumpuser" + (setenv "RUMPRUN" "true") + (invoke rump-make "dependall")) + (with-directory-excursion "pci-userspace/src-gnu" + (invoke rump-make "dependall"))))) + (replace 'install + (lambda _ + (define (install-file file target) + (let ((dest (string-append target (basename file)))) + (format (current-output-port) "`~a' -> `~a'~%" file dest) + (mkdir-p (dirname dest)) + (if (file-exists? dest) + (format (current-error-port) + "warning: skipping: ~a\n" file) + (let ((stat (lstat file))) + (case (stat:type stat) + ((symlink) + (let ((target (readlink file))) + (symlink target dest))) + (else + (copy-file file dest))))))) + (let ((header (string-append #$output "/include/rump")) + (lib (string-append #$output "/lib/"))) + (mkdir-p header) + (copy-recursively "buildrump.sh/src/sys/rump/include/rump" + header) + (mkdir-p lib) + (for-each + (cute install-file <> lib) + (append (find-files "buildrump.sh/src" "librump.*[.](a|so.*)") + (find-files "obj" "librump.*[.](a|so.*)"))))))))) + (inputs + (list gnumach-headers libpciaccess)) + (native-inputs + (list + autoconf + automake + libgcrypt + (if (%current-target-system) + (let* ((cross-base (resolve-interface '(gnu packages cross-base))) + (cross-mig (module-ref cross-base 'cross-mig))) + (cross-mig (%current-target-system))) + mig) + zlib)) + (supported-systems %hurd-systems) + (home-page "https://wiki.netbsd.org/rumpkernel") + (synopsis "NetBSD as rumpkernel for the GNU/Hurd") + (description + "This package provides NetBSD as rumpkernel for the GNU/Hurd, so that +the Hurd may be installed on iron. Using this rumpkernel package, the hurd +package's rumpdisk can be built which provides the pci.arbiter and rumpdisk +servers.") + (license (list + asl2.0 + boost1.0 + bsd-2 + bsd-3 + bsd-4 + cddl1.0 + expat + gpl1 + gpl2+ + gpl3+ + isc + lgpl2.0+ + public-domain + (@ (guix licenses) zlib) + (non-copyleft "file://src/lib/libc/hash/hashhl.c" + "See debian/copyright in the distribution.")))))) From patchwork Mon May 15 19:36:58 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Janneke Nieuwenhuizen X-Patchwork-Id: 50028 Return-Path: X-Original-To: patchwork@mira.cbaines.net Delivered-To: patchwork@mira.cbaines.net Received: by mira.cbaines.net (Postfix, from userid 113) id 4DAFE27BBE9; Mon, 15 May 2023 20:38:25 +0100 (BST) X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on mira.cbaines.net X-Spam-Level: X-Spam-Status: No, score=-3.7 required=5.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,MAILING_LIST_MULTI,RCVD_IN_MSPIKE_H2,SPF_HELO_PASS, URIBL_BLOCKED autolearn=unavailable autolearn_force=no version=3.4.6 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mira.cbaines.net (Postfix) with ESMTPS id 56CA427BBE2 for ; Mon, 15 May 2023 20:38:23 +0100 (BST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1pye1F-0008Uy-5I; Mon, 15 May 2023 15:38:05 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pye1D-0008UO-Cq for guix-patches@gnu.org; Mon, 15 May 2023 15:38:03 -0400 Received: from debbugs.gnu.org ([209.51.188.43]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1pye1D-0000F1-57 for guix-patches@gnu.org; Mon, 15 May 2023 15:38:03 -0400 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1pye1D-0004E3-0X for guix-patches@gnu.org; Mon, 15 May 2023 15:38:03 -0400 X-Loop: help-debbugs@gnu.org Subject: [bug#63527] [PATCH 2/3] gnu: hurd: Add rumpkernel. Resent-From: Janneke Nieuwenhuizen Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Mon, 15 May 2023 19:38:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 63527 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: 63527@debbugs.gnu.org Received: via spool by 63527-submit@debbugs.gnu.org id=B63527.168417943316162 (code B ref 63527); Mon, 15 May 2023 19:38:02 +0000 Received: (at 63527) by debbugs.gnu.org; 15 May 2023 19:37:13 +0000 Received: from localhost ([127.0.0.1]:44479 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1pye0P-0004Cc-FN for submit@debbugs.gnu.org; Mon, 15 May 2023 15:37:13 -0400 Received: from eggs.gnu.org ([209.51.188.92]:37520) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1pye0L-0004C9-0i for 63527@debbugs.gnu.org; Mon, 15 May 2023 15:37:10 -0400 Received: from fencepost.gnu.org ([2001:470:142:3::e]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pye0F-0008VO-Qt; Mon, 15 May 2023 15:37:03 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=MIME-Version:References:In-Reply-To:Date:Subject:To: From; bh=NGPGkoq+SMinUGziETMNFjF+4BHxMRu9wnBMSzvgRCg=; b=K4k/4tzCE5bDQEv+uWPD njLraJrE0q6eZTtEqIdF7bM1El63W6RMJNkSOuZIb0mjHM4fLTt2KsrtxlMMKjIiP2Rpk1fuv+3Sg 3RQE579TvyPPoRw7bjIcn6v+sreUIIisNuwX6tzl75KuU0mTql9wtMjqSlo0/tmgz7Gz4U1JqpWsJ hcHxGrXi4k/LEQWQCFAVR2LNEyIqbHXG3UaEkfTfEjOAvv5gjEBXEgOS5h0FzyJniEJf7p++183qs EeBb4mRUVqn4tpFgpbUBBgVCQgMFITBOyYt6UBa/MVhrEzbtulrI0Ke1kEGqGKKXdTmwk86nfylKx Vn74IHRb2f9WaQ==; Received: from 2a02-a462-da03-1-2701-7f81-a736-4607.fixed6.kpn.net ([2a02:a462:da03:1:2701:7f81:a736:4607] helo=drakenpad.fritz.box) by fencepost.gnu.org with esmtpa (Exim 4.90_1) (envelope-from ) id 1pye0F-0002J4-BK; Mon, 15 May 2023 15:37:03 -0400 From: Janneke Nieuwenhuizen Date: Mon, 15 May 2023 21:36:58 +0200 Message-Id: <48105ac954b73df35d9c0d1ff7ec398e26634d4b.1684177770.git.janneke@gnu.org> X-Mailer: git-send-email 2.39.2 In-Reply-To: References: MIME-Version: 1.0 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: guix-patches@gnu.org List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org Sender: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org X-getmail-retrieved-from-mailbox: Patches * gnu/packages/hurd.scm (hurd)[inputs]: Add rumpkernel. [arguments]: Rename `prepare-dde' phase to 'prepare-addons'. Add "rumpdisk" directory. --- gnu/packages/hurd.scm | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-) diff --git a/gnu/packages/hurd.scm b/gnu/packages/hurd.scm index f834abcf43..fad529580d 100644 --- a/gnu/packages/hurd.scm +++ b/gnu/packages/hurd.scm @@ -356,7 +356,7 @@ (define-public hurd (arguments `(#:phases (modify-phases %standard-phases - (add-after 'unpack 'prepare-dde + (add-after 'unpack 'prepare-addons (lambda* (#:key native-inputs inputs #:allow-other-keys) ;; First we import the things we want from dde. (for-each make-file-writable (find-files ".")) @@ -370,7 +370,10 @@ (define-public hurd ;; Makefile. libdde_linux26 is built later in its own phase. (substitute* "Makefile" (("libbpf ") - "libbpf libmachdevdde libddekit")))) + "libbpf libmachdevdde libddekit rumpdisk")) + (substitute* "rumpdisk/Makefile" + (("rumpdev_ahcisata" all) + (string-append all " rumpdev_ata"))))) (add-after 'unpack 'find-tirpc (lambda* (#:key inputs #:allow-other-keys) (for-each (lambda (var) @@ -541,7 +544,11 @@ (define-public hurd ;; clnt_create "ac_func_search_save_LIBS=-ltirpc" "ac_cv_search_clnt_create=false" - "CFLAGS=-fcommon"))) + "CFLAGS=-fcommon") + #:make-flags + (list (string-append "RUMPPATH=" + (assoc-ref %build-inputs "rumpkernel") + "/lib")))) (build-system gnu-build-system) (inputs `(("libgcrypt" ,libgcrypt) ;for /hurd/random @@ -557,7 +564,8 @@ (define-public hurd ("coreutils" ,coreutils) ("sed" ,sed) ("grep" ,grep) - ("util-linux" ,util-linux))) + ("util-linux" ,util-linux) + ("rumpkernel" ,rumpkernel))) (native-inputs `(("autoconf" ,autoconf) ("automake" ,automake) From patchwork Mon May 15 19:36:59 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Janneke Nieuwenhuizen X-Patchwork-Id: 50029 Return-Path: X-Original-To: patchwork@mira.cbaines.net Delivered-To: patchwork@mira.cbaines.net Received: by mira.cbaines.net (Postfix, from userid 113) id 66A3F27BBE9; Mon, 15 May 2023 20:38:35 +0100 (BST) X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on mira.cbaines.net X-Spam-Level: X-Spam-Status: No, score=-3.7 required=5.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,MAILING_LIST_MULTI,RCVD_IN_MSPIKE_H2,SPF_HELO_PASS, URIBL_BLOCKED autolearn=unavailable autolearn_force=no version=3.4.6 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mira.cbaines.net (Postfix) with ESMTPS id 3434227BBE2 for ; Mon, 15 May 2023 20:38:34 +0100 (BST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1pye1F-0008Uz-Dz; Mon, 15 May 2023 15:38:05 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pye1D-0008Ua-Rh for guix-patches@gnu.org; Mon, 15 May 2023 15:38:03 -0400 Received: from debbugs.gnu.org ([209.51.188.43]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1pye1D-0000FA-Jm for guix-patches@gnu.org; Mon, 15 May 2023 15:38:03 -0400 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1pye1D-0004EB-F4 for guix-patches@gnu.org; Mon, 15 May 2023 15:38:03 -0400 X-Loop: help-debbugs@gnu.org Subject: [bug#63527] [PATCH 3/3] DRAFT system: hurd: Boot with pci.arbiter and rumpdisk. Resent-From: Janneke Nieuwenhuizen Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Mon, 15 May 2023 19:38:03 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 63527 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: 63527@debbugs.gnu.org Received: via spool by 63527-submit@debbugs.gnu.org id=B63527.168417943616179 (code B ref 63527); Mon, 15 May 2023 19:38:03 +0000 Received: (at 63527) by debbugs.gnu.org; 15 May 2023 19:37:16 +0000 Received: from localhost ([127.0.0.1]:44481 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1pye0R-0004Cs-TA for submit@debbugs.gnu.org; Mon, 15 May 2023 15:37:16 -0400 Received: from eggs.gnu.org ([209.51.188.92]:37530) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1pye0L-0004CA-Ks for 63527@debbugs.gnu.org; Mon, 15 May 2023 15:37:14 -0400 Received: from fencepost.gnu.org ([2001:470:142:3::e]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pye0G-0008Vf-EJ; Mon, 15 May 2023 15:37:04 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=MIME-Version:References:In-Reply-To:Date:Subject:To: From; bh=EdqPladPbxP0GaDfni40Jcxv3IZfDWlTVmsA30JiTCI=; b=MlUNv6YtS7GmVAwEwJOu 86jYrZFuQP0hlw+8pvgWIVEDSCIZuzYSkKBOfYA3DVHKLSlS5Z5TY5lEAX2xDjYZl+oeyJVwgNvUg WCRUuELZSC7XEeBxAO4BA2H8a3TQS79aI8NFdG0kWc/DvdRe/PDdzxPW6sUnDUWMkP3JRa/bkwxX/ GdYsd9XYNKXDVsHrNQBdaCwHxfpAYFmQX/sdqSHDdcAyMJfnmyeaOHsXuRHaIfWxRhdyetISy0L1N hCwp3nLz4dL2fnQSt68wB/ufT8bO1rc0u3Qoy6spC/g9a/cSzWNwQk4KBC3qIBFREF8CxHuLsrm67 74KZ7h+hp96CCw==; Received: from 2a02-a462-da03-1-2701-7f81-a736-4607.fixed6.kpn.net ([2a02:a462:da03:1:2701:7f81:a736:4607] helo=drakenpad.fritz.box) by fencepost.gnu.org with esmtpa (Exim 4.90_1) (envelope-from ) id 1pye0G-0002J4-0w; Mon, 15 May 2023 15:37:04 -0400 From: Janneke Nieuwenhuizen Date: Mon, 15 May 2023 21:36:59 +0200 Message-Id: <92582077be8b8e0d7ff87458f78cddd2afc6de65.1684177770.git.janneke@gnu.org> X-Mailer: git-send-email 2.39.2 In-Reply-To: References: MIME-Version: 1.0 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: guix-patches@gnu.org List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org Sender: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org X-getmail-retrieved-from-mailbox: Patches XXX Debian uses the .STATIC variants, but they are not being built. Do we need those? * gnu/system.scm (hurd-multiboot-modules): Add commands for pci.arbiter and rumpdisk. --- gnu/system.scm | 26 +++++++++++++++++++++----- 1 file changed, 21 insertions(+), 5 deletions(-) diff --git a/gnu/system.scm b/gnu/system.scm index 354f58f55b..29445cec2d 100644 --- a/gnu/system.scm +++ b/gnu/system.scm @@ -10,7 +10,7 @@ ;;; Copyright © 2020, 2021 Brice Waegeneire ;;; Copyright © 2020 Florian Pelz ;;; Copyright © 2020, 2022 Maxim Cournoyer -;;; Copyright © 2020 Jan (janneke) Nieuwenhuizen +;;; Copyright © 2020, 2023 Janneke Nieuwenhuizen ;;; Copyright © 2020, 2022 Efraim Flashner ;;; Copyright © 2021 Maxime Devos ;;; Copyright © 2021 raid5atemyhomework @@ -1486,16 +1486,29 @@ (define (operating-system-multiboot-modules os) (define (hurd-multiboot-modules os) (let* ((hurd (operating-system-hurd os)) + (pci-arbiter-command + (list (file-append hurd "/hurd/pci-arbiter") + "pci.arbiter" + "--host-priv-port='${host-port}'" + "--device-master-port='${device-port}'" + "--next-task='${disk-task}'" + "--store-type=typed" + "'$(pci-task=task-create)'" + "'$(task-resume)'")) + (rumpdisk-command + (list (file-append hurd "/hurd/rumpdisk") + "rumpdisk" + "--next-task='${fs-task}'" + "'$(disk-task=task-create)'")) (root-file-system-command (list (file-append hurd "/hurd/ext2fs.static") "ext2fs" "--multiboot-command-line='${kernel-command-line}'" - "--host-priv-port='${host-port}'" - "--device-master-port='${device-port}'" "--exec-server-task='${exec-task}'" "--store-type=typed" "--x-xattr-translator-records" - "'${root}'" "'$(task-create)'" "'$(task-resume)'")) + "'${root}'" + "'$(fs-task=task-create)'")) (target (%current-target-system)) (libc (if target (with-parameters ((%current-target-system #f)) @@ -1512,7 +1525,10 @@ (define (hurd-multiboot-modules os) ;; (file-append hurd "/hurd/exec") "'$(exec-task=task-create)'") (list (file-append hurd "/hurd/exec.static") "exec" "'$(exec-task=task-create)'"))) - (list root-file-system-command exec-server-command))) + (list pci-arbiter-command + rumpdisk-command + root-file-system-command + exec-server-command))) (define* (operating-system-boot-parameters os root-device #:key system-kernel-arguments?)