Damien Zammit, le lun. 30 juin 2025 03:55:11 +0000, a ecrit: > 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.
I don't think it's a problem of stack separation. Trying to separate things into several processes will most probably only bring yet more prblems. Samuel > -------- 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 > > > > > > > > > > > > -- Samuel The nice thing about Windows is - It does not just crash, it displays a dialog box and lets you press 'OK' first. (Arno Schaefer's .sig)