unofficial mirror of guix-patches@gnu.org 
 help / color / mirror / code / Atom feed
From: Janneke Nieuwenhuizen <janneke@gnu.org>
To: 63527@debbugs.gnu.org
Subject: [bug#63527] [PATCH v5 07/11] hurd-boot: Setup pci-arbiter and rumpdisk translators.
Date: Tue, 23 May 2023 17:47:28 +0200	[thread overview]
Message-ID: <80f8fd0cb008971867e8b550535d7e4673d532c7.1684855847.git.janneke@gnu.org> (raw)
In-Reply-To: <cover.1684855847.git.janneke@gnu.org>

* gnu/build/hurd-boot.scm (make-hurd-device-nodes): Create "servers/bus/pci.
(set-hurd-device-translators): Create transators for pci-arbiter, rumpdisk,
and /dev/wd0..4s1..4.
---
 gnu/build/hurd-boot.scm | 27 +++++++++++++++++++++++----
 1 file changed, 23 insertions(+), 4 deletions(-)

diff --git a/gnu/build/hurd-boot.scm b/gnu/build/hurd-boot.scm
index 14bfc5e809..93324ac3f3 100644
--- a/gnu/build/hurd-boot.scm
+++ b/gnu/build/hurd-boot.scm
@@ -1,6 +1,6 @@
 ;;; GNU Guix --- Functional package management for GNU
 ;;; Copyright © 2020-2022 Ludovic Courtès <ludo@gnu.org>
-;;; Copyright © 2020 Jan (janneke) Nieuwenhuizen <janneke@gnu.org>
+;;; Copyright © 2020, 2023 Janneke Nieuwenhuizen <janneke@gnu.org>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -105,7 +105,7 @@ (define* (make-hurd-device-nodes #:optional (root "/"))
 
   ;; TODO: Set the 'gnu.translator' extended attribute for passive translator
   ;; settings?
-  )
+  (mkdir-p (scope "servers/bus/pci")))
 
 (define (passive-translator-xattr? file-name)
   "Return true if FILE-NAME has an extended @code{gnu.translator} attribute
@@ -183,7 +183,8 @@ (define* (set-hurd-device-translators #:optional (root "/"))
        (mkdir-p dir))))
 
   (define servers
-    '(("servers/crash-dump-core" ("/hurd/crash" "--dump-core"))
+    '(("servers/bus/pci"         ("/hurd/pci-arbiter"))
+      ("servers/crash-dump-core" ("/hurd/crash" "--dump-core"))
       ("servers/crash-kill"      ("/hurd/crash" "--kill"))
       ("servers/crash-suspend"   ("/hurd/crash" "--suspend"))
       ("servers/password"        ("/hurd/password"))
@@ -216,6 +217,8 @@ (define* (set-hurd-device-translators #:optional (root "/"))
       ;; 'fd_to_filename' in libc expects it.
       ("dev/fd"      ("/hurd/magic"    "--directory" "fd")  #o555)
 
+      ("dev/rumpdisk"("/hurd/rumpdisk")                     #o660)
+
       ;; Create a number of ttys; syslogd writes to tty12 by default.
       ;; FIXME: Creating /dev/tty12 leads the console client to switch to
       ;; tty12 when syslogd starts, which is confusing for users.  Thus, do
@@ -239,7 +242,22 @@ (define* (set-hurd-device-translators #:optional (root "/"))
                            ("/hurd/term" ,(string-append "/dev/ttyp" n)
                             "pty-slave" ,(string-append "/dev/ptyp" n))
                            #o666))))
-                    (iota 10 0))))
+                    (iota 10 0))
+      ,@(append-map (lambda (n)
+                      (let* ((n (number->string n))
+                             (drive (string-append "dev/wd" n))
+                             (disk (string-append "@/dev/disk:wd" n)))
+                        `((,drive ("/hurd/storeio" ,disk) #o600)
+                          ,@(map (lambda (p)
+                                   (let ((p (number->string p)))
+                                     `(,(string-append drive "s" p)
+                                       ("/hurd/storeio"
+                                        "--store-type=typed"
+                                        ,(string-append
+                                          "part:" p ":device:@/dev/disk:wd0"))
+                                       #o660)))
+                                 (iota 4 1)))))
+                    (iota 4 0))))
 
   (for-each scope-set-translator servers)
   (mkdir* "dev/vcs/1")
@@ -252,6 +270,7 @@ (define* (set-hurd-device-translators #:optional (root "/"))
   (false-if-EEXIST (symlink "/dev/fd/1" (scope "dev/stdout")))
   (false-if-EEXIST (symlink "/dev/fd/2" (scope "dev/stderr")))
   (false-if-EEXIST (symlink "crash-dump-core" (scope "servers/crash")))
+  (false-if-EEXIST (symlink "/dev/rumpdisk" (scope "dev/disk")))
 
   ;; Make sure /etc/mtab is a symlink to /proc/mounts.
   (false-if-exception (delete-file (scope "etc/mtab")))
-- 
2.40.1





  parent reply	other threads:[~2023-05-23 15:49 UTC|newest]

Thread overview: 67+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-05-15 19:35 [bug#63527] [PATCH 0/3] Initial attempt at rumpdisk support for the Hurd Janneke Nieuwenhuizen
2023-05-15 19:36 ` [bug#63527] [PATCH 1/3] DRAFT gnu: Add rumpkernel Janneke Nieuwenhuizen
2023-05-15 19:36 ` [bug#63527] [PATCH 2/3] gnu: hurd: " Janneke Nieuwenhuizen
2023-05-15 19:36 ` [bug#63527] [PATCH 3/3] DRAFT system: hurd: Boot with pci.arbiter and rumpdisk Janneke Nieuwenhuizen
2023-05-16 13:48 ` [bug#63527] [PATCH v2 0/3] Initial attempt at rumpdisk support for the Hurd Janneke Nieuwenhuizen
2023-05-16 13:48   ` [bug#63527] [PATCH v2 1/3] gnu: Add rumpkernel Janneke Nieuwenhuizen
2023-05-16 13:48   ` [bug#63527] [PATCH v2 2/3] gnu: hurd: " Janneke Nieuwenhuizen
2023-05-16 13:48   ` [bug#63527] [PATCH v2 3/3] DRAFT system: hurd: Boot with pci.arbiter and rumpdisk Janneke Nieuwenhuizen
2023-05-18  8:45 ` [bug#63527] [PATCH v3 0/7] Rumpdisk support for the Hurd Janneke Nieuwenhuizen
2023-05-18  8:45   ` [bug#63527] [PATCH v3 1/7] gnu: Add libpciaccess-0.17 Janneke Nieuwenhuizen
2023-05-18  8:46   ` [bug#63527] [PATCH v3 2/7] gnu: hurd: Update libpciaccess to 0.17 Janneke Nieuwenhuizen
2023-05-18  8:46   ` [bug#63527] [PATCH v3 3/7] gnu: Add rumpkernel Janneke Nieuwenhuizen
2023-05-18  8:46   ` [bug#63527] [PATCH v3 4/7] gnu: hurd: " Janneke Nieuwenhuizen
2023-05-18  8:46   ` [bug#63527] [PATCH v3 5/7] hurd-boot: Setup pci-arbiter and rumpdisk translators Janneke Nieuwenhuizen
2023-05-18  8:46   ` [bug#63527] [PATCH v3 6/7] services: childhurd: Bump default qemu memory to 2048MB Janneke Nieuwenhuizen
2023-05-18  8:46   ` [bug#63527] [PATCH v3 7/7] system: hurd: Boot with pci.arbiter and rumpdisk Janneke Nieuwenhuizen
2023-05-18  9:14   ` [bug#63527] [PATCH v3 0/7] Rumpdisk support for the Hurd Janneke Nieuwenhuizen
2023-05-18  9:38 ` [bug#63527] [PATCH v4 0/8] Rumpdisk support for the Hurd, really! Janneke Nieuwenhuizen
2023-05-18  9:38   ` [bug#63527] [PATCH v4 1/8] gnu: glibc: Update time patches for the Hurd Janneke Nieuwenhuizen
2023-05-18 17:10     ` [bug#63527] [PATCH 0/3] Initial attempt at rumpdisk support " Ludovic Courtès
2023-05-19  8:21       ` Janneke Nieuwenhuizen
2023-05-18  9:38   ` [bug#63527] [PATCH v4 2/8] gnu: Add libpciaccess-0.17 Janneke Nieuwenhuizen
2023-05-18  9:38   ` [bug#63527] [PATCH v4 3/8] gnu: hurd: Update libpciaccess to 0.17 Janneke Nieuwenhuizen
2023-05-18  9:38   ` [bug#63527] [PATCH v4 4/8] gnu: Add rumpkernel Janneke Nieuwenhuizen
2023-05-18 17:17     ` [bug#63527] [PATCH 0/3] Initial attempt at rumpdisk support for the Hurd Ludovic Courtès
2023-05-19  9:21       ` Janneke Nieuwenhuizen
2023-05-18  9:39   ` [bug#63527] [PATCH v4 5/8] gnu: hurd: Add rumpkernel Janneke Nieuwenhuizen
2023-05-18  9:39   ` [bug#63527] [PATCH v4 6/8] hurd-boot: Setup pci-arbiter and rumpdisk translators Janneke Nieuwenhuizen
2023-05-18  9:39   ` [bug#63527] [PATCH v4 7/8] services: childhurd: Bump default qemu memory to 2048MB Janneke Nieuwenhuizen
2023-05-18 17:20     ` [bug#63527] [PATCH 0/3] Initial attempt at rumpdisk support for the Hurd Ludovic Courtès
2023-05-19  9:30       ` Janneke Nieuwenhuizen
2023-05-18  9:39   ` [bug#63527] [PATCH v4 8/8] system: hurd: Boot with pci.arbiter and rumpdisk Janneke Nieuwenhuizen
2023-05-18 17:18     ` [bug#63527] [PATCH 0/3] Initial attempt at rumpdisk support for the Hurd Ludovic Courtès
2023-05-23 15:47 ` [bug#63527] [PATCH v5 00/11] Rumpdisk support for the Hurd, really, *really*! Janneke Nieuwenhuizen
2023-05-23 15:47   ` [bug#63527] [PATCH v5 01/11] gnu: Add libpciaccess-0.17 Janneke Nieuwenhuizen
2023-05-23 15:47   ` [bug#63527] [PATCH v5 02/11] gnu: hurd: Update libpciaccess to 0.17 Janneke Nieuwenhuizen
2023-05-24  9:11     ` [bug#63527] [PATCH 0/3] Initial attempt at rumpdisk support for the Hurd Ludovic Courtès
2023-05-24  9:28       ` Janneke Nieuwenhuizen
2023-05-23 15:47   ` [bug#63527] [PATCH v5 03/11] gnu: Add rumpkernel Janneke Nieuwenhuizen
2023-05-23 15:47   ` [bug#63527] [PATCH v5 04/11] gnu: Add hurd-shouldbeinlibc Janneke Nieuwenhuizen
2023-05-23 15:47   ` [bug#63527] [PATCH v5 05/11] gnu: parted: Support building for the Hurd Janneke Nieuwenhuizen
2023-05-24  9:13     ` [bug#63527] [PATCH 0/3] Initial attempt at rumpdisk support " Ludovic Courtès
2023-05-24  9:24       ` Janneke Nieuwenhuizen
2023-05-23 15:47   ` [bug#63527] [PATCH v5 06/11] gnu: hurd: Add rumpkernel Janneke Nieuwenhuizen
2023-05-23 16:01     ` Janneke Nieuwenhuizen
     [not found]       ` <cover.1684858715.git.janneke@gnu.org>
2023-05-23 16:20         ` [bug#63527] [PATCH v6 " Janneke Nieuwenhuizen
2023-05-23 15:47   ` Janneke Nieuwenhuizen [this message]
2023-05-23 21:00     ` [bug#63527] [PATCH v5 07/11] hurd-boot: Setup pci-arbiter and rumpdisk translators Janneke Nieuwenhuizen
2023-05-24  9:16     ` [bug#63527] [PATCH 0/3] Initial attempt at rumpdisk support for the Hurd Ludovic Courtès
2023-05-24  9:30       ` Janneke Nieuwenhuizen
2023-05-23 15:47   ` [bug#63527] [PATCH v5 08/11] services: childhurd: Bump default qemu memory to 2048MB Janneke Nieuwenhuizen
2023-05-23 15:47   ` [bug#63527] [PATCH v5 09/11] system: hurd: Boot with pci.arbiter and rumpdisk Janneke Nieuwenhuizen
2023-05-23 15:47   ` [bug#63527] [PATCH v5 10/11] bootloader: grub: Use rumpdisk-style root when booting with "noide" Janneke Nieuwenhuizen
2023-05-24  9:32     ` [bug#63527] [PATCH 0/3] Initial attempt at rumpdisk support for the Hurd Ludovic Courtès
2023-05-24  9:37       ` Janneke Nieuwenhuizen
2023-05-23 15:47   ` [bug#63527] [PATCH v5 11/11] gnu: gnumach: Support "noide" argument Janneke Nieuwenhuizen
2023-05-24  9:36     ` [bug#63527] [PATCH 0/3] Initial attempt at rumpdisk support for the Hurd Ludovic Courtès
2023-05-24  9:40       ` Janneke Nieuwenhuizen
2023-05-24  9:08   ` Ludovic Courtès
2023-05-24  9:15     ` Janneke Nieuwenhuizen
2023-05-24  9:37   ` Ludovic Courtès
2023-05-24  9:46     ` Janneke Nieuwenhuizen
2023-07-13 17:13       ` Josselin Poiret via Guix-patches via
2023-07-13 17:41         ` Janneke Nieuwenhuizen
2023-07-14 13:37           ` Ludovic Courtès
2023-07-14 18:59             ` Josselin Poiret via Guix-patches via
2023-07-14 23:35               ` Janneke Nieuwenhuizen

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://guix.gnu.org/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=80f8fd0cb008971867e8b550535d7e4673d532c7.1684855847.git.janneke@gnu.org \
    --to=janneke@gnu.org \
    --cc=63527@debbugs.gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/guix.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).