Hello, Could you rebase it on your previous patch, which I have already commited?
Samuel jbra...@dismail.de, le jeu. 25 mai 2023 11:56:44 -0400, a ecrit: > * community/gsoc/project_ideas/driver_glue_code.mdwn: changed rump > kernel link. > * hurd.mwdn: added a link to hurd/rump.mdwn. > * hurd/rump.mdwn: new file. > * rump_kernel.mwdn: deleted file. > --- > .../gsoc/project_ideas/driver_glue_code.mdwn | 2 +- > hurd.mdwn | 3 +- > hurd/rump.mdwn | 46 ++++++++++++++++ > hurd/running/qemu.mdwn | 52 +++++++++++++++++++ > rump_kernel.mdwn | 42 --------------- > 5 files changed, 101 insertions(+), 44 deletions(-) > create mode 100644 hurd/rump.mdwn > delete mode 100644 rump_kernel.mdwn > > diff --git a/community/gsoc/project_ideas/driver_glue_code.mdwn > b/community/gsoc/project_ideas/driver_glue_code.mdwn > index db1816c9..3d0a9192 100644 > --- a/community/gsoc/project_ideas/driver_glue_code.mdwn > +++ b/community/gsoc/project_ideas/driver_glue_code.mdwn > @@ -27,7 +27,7 @@ This is [[!GNU_Savannah_task 5488]]. > [[open issues/user-space device drivers]]. > [[open issues/device drivers and io systems]]. > > -The most promising approach for getting newer drivers seems to be the > [[Rump_kernel]]: > +The most promising approach for getting newer drivers seems to be the [[rump > kernel|hurd/rump]]: > it already does the hard work of providing an environment > where the foreign drivers can run, > and offers the additional benefit of being externally maintained. > diff --git a/hurd.mdwn b/hurd.mdwn > index ff30f48b..8365740f 100644 > --- a/hurd.mdwn > +++ b/hurd.mdwn > @@ -62,7 +62,8 @@ in the *unstable* branch of the Debian archive. > * [[running/Distrib]] -- Distributions > * [[Public_Hurd_Boxen]] > * [[Neighborhurd]]s and [[Subhurd]]s > -* [[DDE]] -- Device Driver Environment > +* [[DDE]] -- Old Device Driver Environment > +* [[RUMP]] -- Modern Device Drivers > > ## Common Problems > > diff --git a/hurd/rump.mdwn b/hurd/rump.mdwn > new file mode 100644 > index 00000000..6e4a00db > --- /dev/null > +++ b/hurd/rump.mdwn > @@ -0,0 +1,46 @@ > +[[!meta copyright="Copyright © 2009, 2010, 2011 Free Software Foundation, > +Inc."]] > + > +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable > +id="license" text="Permission is granted to copy, distribute and/or modify > this > +document under the terms of the GNU Free Documentation License, Version 1.2 > or > +any later version published by the Free Software Foundation; with no > Invariant > +Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the > license > +is included in the section entitled [[GNU Free Documentation > +License|/fdl]]."]]"""]] > + > +[[!tag stable_URL]] > + > + * [[community/gsoc/project ideas/driver glue code]] > + > + * [[open issues/user-space device drivers]] > + > + * [[open issues/device drivers and io systems]] > + > +--- > + > +The rump kernels provide existing real world drivers from netbsd. > +Since [[DDE]] no longer seems like a promising approach to get drivers > +for the Hurd, it appears that rump kernels are the best alternative. > +It already does the hard work of providing an environment where the > +foreign drivers can run, and offers the additional benefit of being > +externally maintained. Rump also offers the necessary facilities for > +running all drivers in separate userspace processes, which is more > +desirable than drivers running in the microkernel. > + > +A rump kernel is a minimal and portable NetBSD kernel running in > +userspace. Rump kernels provide drivers for modern hard drives, sound > +cards, usb support, and a TCP/IP stack. Instead of re-inventing and > +maintaining drivers ourselves, we can re-use the existing NetBSD > +drivers. > + > +Hurd developers have enabled experimental support for modern hard > +drives with a rump kernel. We call it rumpdisk, and you can try it in > +the [[Debian GNU/Hurd image|hurd/running/qemu]]. > + > +As of May 2023, Hurd users are having good success with it in qemu > +environments and some are using it on real hardware! > + > +We do hope to use rump kernels for usb support, sound support (this > +was working at some point), and possibly a new TCP/IP stack, but work > +has not completed on those projects. > diff --git a/hurd/running/qemu.mdwn b/hurd/running/qemu.mdwn > index 24e7fdea..a8078061 100644 > --- a/hurd/running/qemu.mdwn > +++ b/hurd/running/qemu.mdwn > @@ -24,6 +24,58 @@ You can use the following images to give the Hurd a try. > > [[!inline pages=hurd/running/debian/qemu_image raw=yes feeds=no]] > > +#### Trying out rumpdisk > + > +[[Rump kernels|hurd/rump]] provide new modern drivers for the Hurd. > +We refer to rumpdisk as a rump kernel that provides drivers for modern > +hard drives, SSDs, etc. The Rump kernels' integration into the Hurd > +are still somewhat experimental, but they seem to work fairly well on > +bleeding edge Debian. > + > +Once you have your latest qemu Debian GNU/Hurd image running, then you > +can try the rumpdisk (be sure to pass "-m 2GB" or more). First, > +upgrade to the bleeding edge Debian GNU/Hurd: > + > +Add these sources to your /etc/apt/sources.list > + > + deb http://deb.debian.org/debian-ports unstable main > + deb-src http://deb.debian.org/debian unstable main > + deb http://deb.debian.org/debian-ports unreleased main > + > +Now update debian to the latest: > + > + # apt-get update > + # apt-get dist-upgrade > + > +Now test to see if the rump kernel works before you make the change > +permanent. Manually tweak your /boot/grub/grub.cfg like so: > + > + # multiboot /boot/gnumach-1.8-486.gz root=part:2:device:hd0 > console=com0 > + multiboot /boot/gnumach-1.8-486.gz root=part:2:device:wd0 > console=com0 noide > + > +and your /etc/fstab > + > + #/dev/hd0s2 / ext2 defaults 0 1 > + /dev/wd0s2 / ext2 defaults 0 1 > + #/dev/hd0s1 none swap sw 0 0 > + /dev/wd0s1 none swap sw 0 0 > + #/dev/hd2 /media/cdrom0 iso9660 noauto 0 0 > + /dev/wd2 /media/cdrom0 iso9660 noauto 0 0 > + > +Now you can poweroff your machine, reboot, and start using the > +rumpdisk! You can make these changes permanent by tweaking > +/etc/default/grub and telling it to use rumpdisk: > + > + GRUB_CMDLINE_GNUMACH="noide" > + > +Then update your grub: > + > + # update-grub > + > +Check that "noide" does appear in your /boot/grub/grub.cfg. That is > +the easiest way to make sure that you are using the rumpdisk. > + > + > ## Arch Hurd Live CD > > [[!inline pages=hurd/running/live_cd raw=yes feeds=no]] > diff --git a/rump_kernel.mdwn b/rump_kernel.mdwn > deleted file mode 100644 > index 7f7d7cc5..00000000 > --- a/rump_kernel.mdwn > +++ /dev/null > @@ -1,42 +0,0 @@ > -[[!meta copyright="Copyright © 2009, 2010 Free Software Foundation, Inc."]] > - > -[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable > -id="license" text="Permission is granted to copy, distribute and/or modify > this > -document under the terms of the GNU Free Documentation License, Version 1.2 > or > -any later version published by the Free Software Foundation; with no > Invariant > -Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the > license > -is included in the section entitled [[GNU Free Documentation > -License|/fdl]]."]]"""]] > - > - > -# Discussion > - > - The rump kernels provide existing real world drivers from netbsd. Since > DDE no longer seems like a promising approach to get drivers for the Hurd, it > appears that rump kernels are the best alternative. It already does the hard > work of providing an environment where the foreign drivers can run, and > offers the additional benefit of being externally maintained. Rump also > offers the necessary facilities for running all drivers in separate userspace > processes, which is more desirable than drivers running in the microkernel. > - > - > - * [[community/gsoc/project ideas/driver glue code]] > - > - * [[open issues/user-space device drivers]] > - > - * [[open issues/device drivers and io systems]] > - > ---- > - > -# Documentation > - > - * <http://www.fixup.fi/misc/usenix-login-2015/login_oct15_02_kantee.pdf> > - > - This is an an opinion paper that explains why operating systems need > compartmentalized kernel drivers. > - > - * <https://github.com/rumpkernel/wiki/wiki/Tutorial:-Getting-started> > - > - A tutorial introduction for those interested in using and deploying rump > kernels. > - > - * <https://core.ac.uk/display/41816390> > - > - "User space approach to audio device driving on UNIX-like systems" by > Robert Millan Hernandez. > - > - > -# Source Code > - > - * <https://github.com/rumpkernel> > -- > 2.32.0 > -- Samuel --- Pour une évaluation indépendante, transparente et rigoureuse ! Je soutiens la Commission d'Évaluation de l'Inria.