I wanted to move things along for usb, I didn't realise the driver is actually broken on master.
I'll have another go at separating the stack. Damien Sent from Proton Mail Android -------- Original Message -------- On 30/6/25 8:14 am, Samuel Thibault <samuel.thiba...@gnu.org> wrote: > Hello, > > Damien Zammit, le ven. 27 juin 2025 06:41:53 +0000, a ecrit: > > This provides support for the /dev/ud* nodes > > that pass through to /dev/usbdisk, and enables > > usb disk support in the installer. > > > > UNTESTED > > Please do test changes. > > Writing changes that look reasonable is not what would consume me time. > What consumes time is actually testing things and check that they go > alright. I tried your change and immediately got > > [ 1.0000000] Copyright (c) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, > [ 1.0000000] 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012, > 2013, > [ 1.0000000] 2014, 2015, 2016, 2017, 2018, 2019, 2020, 2021, 2022, > 2023, > [ 1.0000000] 2024 > [ 1.0000000] The NetBSD Foundation, Inc. All rights reserved. > [ 1.0000000] Copyright (c) 1982, 1986, 1989, 1991, 1993 > [ 1.0000000] The Regents of the University of California. All rights > reserved. > > [ 1.0000000] NetBSD 10.99.12 (RUMP-ROAST) > [ 1.0000000] total memory = unlimited (host limit) > [ 1.0000000] entropy: ready > [ 1.0000000] timecounter: Timecounters tick every 10.000 msec > [ 1.0000040] timecounter: Timecounter "clockinterrupt" frequency 100 Hz > quality 0 > [ 1.0000050] cpu0 at thinair0: rump virtual cpu > [ 1.0000050] root file system type: rumpfs > [ 1.0000050] kern.module.path=/stand/amd64/10.99.12/modules > [ 1.0000050] mainbus0 (root) > [ 1.0000050] pci0 at mainbus0 bus 0 > [ 1.0000050] pci0: i/o space, memory space enabled, rd/line, rd/mult, > wr/inv ok > [ 1.0000050] vendor 8086 product 1237 (host bridge, revision 0x02) at pci0 > dev 0 function 0 not configured > [ 1.0000050] vendor 8086 product 7000 (ISA bridge) at pci0 dev 1 function > 0 not configured > [ 1.0000050] vendor 8086 product 7010 (IDE mass storage, interface 0x80) > at pci0 dev 1 function 1 not configured > [ 1.0000050] uhci0 at pci0 dev 1 function 2: vendor 8086 product 7020 > (rev. 0x01) > irq handler [11]: new delivery port ffffffffde276910 entry ffffffffde72bc40 > /hurd/crash: /hurd/rumpusbdisk(1156) crashed, signal {no:11, code:2, > error:2}, exception {1, code:2, subcode:40}, PCs: { > 0xd1fc2 0x34c979 0x8826c 0x5098b3, > 0xbaaec 0x32d74e 0xd0a52 0xd1b2a 0xca85b 0x3065b7 0x306625 0xea242 0xbb6a2 > 0xea2c0, > 0xbaaec 0x15e006 0x15e9e3 0x4ee9ad 0x4e59ff 0x4e1cb4 0x83588, > 0xbaaec 0x1a08c9 0x4ed524 0x4e51be 0x4e1cb4 0x83588, > 0xbaaec 0x15e006 0x15e9e3 0x4ee80d 0x4e5663 0x4e1cb4 0x83588, > 0xbaaec 0x15e006 0x15e9e3 0x4ee9ad 0x4e59ff 0x4e1cb4 0x83588, DUP, DUP, > 0xbaaec 0x15e006 0x15e9e3 0x4ee9ad 0x4de7ed 0x47ee96 0x4e1cb4 0x83588, > 0xbaaec 0x15f1c7 0x15e81c 0x4eeaba 0x4de7c1 0x4deb3b 0x4cba33 0x4e1cb4 > 0x83588, > 0xbaaec 0x15e006 0x15e9e3 0x4ee9ad 0x4de7ed 0x4e047c 0x4e1cb4 0x83588, > 0xbaaec 0x15e006 0x15e9e3 0x4ee9ad 0x4de7ed 0x4ab95a 0x4e1cb4 0x83588, > 0xbaaec 0x1a08c9 0x1b93d3 0x4ed4c1 0x4e5eb8 0x53ebd6 0x4e1cb4 0x83588, > 0xbaaec 0x15e006 0x15e9e3 0x4ee9ad 0x4de7ed 0x48000b 0x4e1cb4 0x83588, DUP, > 0x4ede44 0x42a3bd 0x5092f1 0xbb6a2 0x7981d 0x50931b > }, killing task. > > And lost network access. > > Possibly the network access loss is due to the share irq. > > I however just don't have time to investigate problems that people throw > at me. > > Do. test. your. changes. > > Samuel > > > --- > > debian/hurd-udeb.install.in | 1 + > > debian/hurd-udeb.lintian-overrides | 2 ++ > > debian/local/setup-translators | 4 ++++ > > debian/rules | 2 +- > > sutils/MAKEDEV.sh | 15 +++++++++++++-- > > 5 files changed, 21 insertions(+), 3 deletions(-) > > > > diff --git a/debian/hurd-udeb.install.in b/debian/hurd-udeb.install.in > > index e0ad63c62..bede194e1 100644 > > --- a/debian/hurd-udeb.install.in > > +++ b/debian/hurd-udeb.install.in > > @@ -59,6 +59,7 @@ hurd/procfs > > hurd/proxy-defpager > > hurd/random > > hurd/rumpdisk > > +hurd/rumpusbdisk > > hurd/shutdown > > hurd/storeio > > hurd/streamio > > diff --git a/debian/hurd-udeb.lintian-overrides > b/debian/hurd-udeb.lintian-overrides > > index 7f499ee90..1caa33752 100644 > > --- a/debian/hurd-udeb.lintian-overrides > > +++ b/debian/hurd-udeb.lintian-overrides > > @@ -2,3 +2,5 @@ non-standard-toplevel-dir [hurd/] > > non-standard-toplevel-dir [servers/] > > package-contains-empty-directory [servers/] > > hurd-udeb udeb: embedded-library zlib [boot/ext2fs.static] > > +hurd-udeb udeb: embedded-library librump [hurd/rumpdisk] > > +hurd-udeb udeb: embedded-library librump [hurd/rumpusbdisk] > > diff --git a/debian/local/setup-translators > b/debian/local/setup-translators > > index ad10aea8a..1e12c4d97 100755 > > --- a/debian/local/setup-translators > > +++ b/debian/local/setup-translators > > @@ -143,6 +143,10 @@ md rumpdisk > > md wdX 012345 > > md wdXsY 012345 123456789 > > md wdXs1Y 012345 0123456 > > +md rumpusbdisk > > +md udX 012345 > > +md udXsY 012345 123456789 > > +md udXs1Y 012345 0123456 > > md cdX 01 > > md netdde > > md ethX 0123 > > diff --git a/debian/rules b/debian/rules > > index a24179cba..658e8cc2f 100755 > > --- a/debian/rules > > +++ b/debian/rules > > @@ -29,7 +29,7 @@ TRANSLATORS_PROF = auth exec ext2fs pci-arbiter pfinet > lwip pflocal proc procfs > > > > CONFIGURE_ARGS = --build=$(DEB_BUILD_GNU_TYPE) --host=$(DEB_HOST_GNU_TYPE) > > ifeq (,$(filter stage1 stage2,$(DEB_BUILD_PROFILES))) > > -CONFIGURE_ARGS += --disable-profile > --enable-static-progs='ext2fs,iso9660fs,rumpdisk,pci-arbiter,acpi,startup,proc,auth,pfinet,pflocal' > > +CONFIGURE_ARGS += --disable-profile > --enable-static-progs='ext2fs,iso9660fs,rumpdisk,rumpusbdisk,pci-arbiter,acpi,startup,proc,auth,pfinet,pflocal' > > else > > CONFIGURE_ARGS += \ > > --disable-ncursesw \ > > diff --git a/sutils/MAKEDEV.sh b/sutils/MAKEDEV.sh > > index de31c1bef..a67ff7a4b 100644 > > --- a/sutils/MAKEDEV.sh > > +++ b/sutils/MAKEDEV.sh > > @@ -185,7 +185,11 @@ mkdev() { > > st $I root 660 c /hurd/rumpdisk > > cmd ln -f -s rumpdisk disk > > ;; > > - [hrscw]d*) > > + rumpusbdisk) > > + st $I root 660 c /hurd/rumpusbdisk > > + cmd ln -f -s rumpusbdisk usbdisk > > + ;; > > + [hrscwu]d*) > > local sliceno= > > local n="${I#?d}" > > local major="${n%%[!0-9]*}" > > @@ -220,16 +224,23 @@ mkdev() { > > lose "$I: Invalid slice or partition syntax" > > ;; > > esac > > + > > + dev=${I%s[0-9]*} > > + > > case "$I" in > > wd*|cd*) > > USE_PARTSTORE=1 > > MASTER=@/dev/disk: > > ;; > > + ud*) > > + USE_PARTSTORE=1 > > + MASTER=@/dev/usbdisk: > > + dev=${dev/u/s} > > + ;; > > esac > > > > # The device name passed all syntax checks, so finally use it! > > if [ "$USE_PARTSTORE" ] && [ -z "$rest" ] && [ "$sliceno" ]; then > > - local dev=${I%s[0-9]*} > > st $I root 640 b /hurd/storeio -T typed > part:$sliceno:device:$MASTER$dev > > else > > st $I root 640 b /hurd/storeio $MASTER$I > > -- > > 2.45.2 > > > > > > >