Re: [PATCH v3 4/6] hurd: Add expected abilist files for x86_64
Sergey Bugaev, le sam. 06 mai 2023 01:42:27 +0300, a ecrit: > On Wed, May 3, 2023 at 1:37 AM Samuel Thibault > wrote: > > > Ah, I don't mean the troubles due to cross-compiling specifically (I > > > don't think the Hurd libraries are any more problematic compared to > > > the usual cross-compiling issues?), but simply the fact that they > > > FTBFS on x86_64-gnu unless you apply my changes -- that only exist on > > > my machine, for now. And there are a lot of them, mostly strategically > > > changing size_t to mach_msg_type_number_t in many places, but there > > > are subtler ones too. > > > > Ok, I'll just apply the patches :) > > Ok, I'm really really confused. What do you mean? Does the Hurd just > build for you? No, I crudely patched it locally without thinking too much, just to get the hurd-libs stage built so the rest can get built. Samuel
Re: [PATCH v3 4/6] hurd: Add expected abilist files for x86_64
On Wed, May 3, 2023 at 1:37 AM Samuel Thibault wrote: > > Ah, I don't mean the troubles due to cross-compiling specifically (I > > don't think the Hurd libraries are any more problematic compared to > > the usual cross-compiling issues?), but simply the fact that they > > FTBFS on x86_64-gnu unless you apply my changes -- that only exist on > > my machine, for now. And there are a lot of them, mostly strategically > > changing size_t to mach_msg_type_number_t in many places, but there > > are subtler ones too. > > Ok, I'll just apply the patches :) Ok, I'm really really confused. What do you mean? Does the Hurd just build for you? I see packages in [0] -- how did you build those? [0]: https://people.debian.org/~sthibault/tmp/hurd-amd64/h/hurd/ I'm having to patch the Hurd repo *a lot* to get *some of it* building for x86_64. Just to give you an idea, here's my current diffstat, compared to 717897ca40be3bb78130617c8e880137eff96d96 (current origin/master): Makeconf | 2 +- Makefile | 6 ++- auth/auth.c | 29 +++--- boot/boot.c | 75 ++-- boot/boot_script.c| 32 boot/boot_script.h| 4 +- boot/userland-boot.c | 11 -- console-client/trans.c| 80 +++ console-client/trans.h| 12 +++--- exec/elfcore.c| 6 +-- exec/exec.c | 4 +- ext2fs/dir.c | 13 --- ext2fs/ext2fs.c | 2 +- ext2fs/hyper.c| 2 +- ext2fs/ialloc.c | 10 +++-- ext2fs/inode.c| 3 +- ext2fs/pager.c| 5 ++- fatfs/dir.c | 18 - fatfs/main.c | 2 +- libdiskfs/dir-lookup.c| 2 +- libdiskfs/dir-readdir.c | 14 +-- libdiskfs/diskfs.h| 5 ++- libdiskfs/file-exec.c | 31 +++ libdiskfs/file-get-fs-opts.c | 4 +- libdiskfs/file-get-trans.c| 6 +-- libdiskfs/file-getfh.c| 3 +- libdiskfs/file-set-trans.c| 12 +++--- libdiskfs/fsys-forward.c | 5 ++- libdiskfs/fsys-getroot.c | 28 +++--- libdiskfs/io-restrict-auth.c | 12 +++--- libdiskfs/io-write.c | 19 ++ libdiskfs/node-rdwr.c | 12 +++--- libdiskfs/priv.h | 3 +- libdiskfs/rdwr-internal.c | 17 + libdiskfs/sync-interval.c | 4 +- libfshelp-tests/race.c| 2 +- libfshelp/exec-reauth.c | 4 +- libfshelp/fshelp.h| 19 ++ libfshelp/start-translator-long.c | 16 +--- libfshelp/start-translator.c | 5 ++- libiohelp/iouser-reauth.c | 2 +- libmachdev/trivfs_server.c| 2 +- libnetfs/file-exec.c | 33 libnetfs/io-read.c| 22 ++- libpager/pager-memcpy.c | 8 ++-- libpipe/pq.c | 9 +++-- libports/manage-multithread.c | 8 ++-- libps/host.c | 6 +-- libps/proclist.c | 23 ++- libps/procstat.c | 18 ++--- libps/ps.h| 9 +++-- libshouldbeinlibc/fsysops.c | 2 +- libshouldbeinlibc/idvec-auth.c| 4 +- libshouldbeinlibc/portinfo.c | 14 +++ libstore/argp.c | 4 +- libstore/copy.c | 16 ++-- libstore/device.c | 28 -- libstore/file.c | 32 libstore/nbd.c| 5 ++- libstore/store.h | 9 ++--- libstore/task.c | 8 +++- libtrivfs/file-get-trans.c| 7 ++-- libtrivfs/file-getfh.c| 2 +- libtrivfs/file-set-trans.c| 2 +- libtrivfs/fsys-forward.c | 3 +- libtrivfs/fsys-getroot.c | 6 ++- libtrivfs/fsys-stubs.c| 6 +-- libtrivfs/io-restrict-auth.c | 10 +++-- mach-defpager/default_pager.c | 26 ++--- mach-defpager/file_io.h | 4 +- mach-defpager/setup.c | 4 +- pflocal/io.c | 12 +++--- pflocal/pf.c | 10 +++-- pflocal/socket.c | 23 --- proc/host.c | 10 ++--- proc/info.c | 30 --- proc/mgt.c| 12 +++--- proc/msg.c| 5 ++- proc/pgrp.c | 6 +-- storeio/io.c | 13 +-- sutils/fsck.c | 4 +- sutils/swapon.c | 6 +-- term/devio.c | 8 ++-- term/hurdio.c | 2 +- tmpfs/tmpfs.c | 2 +- trans/crash.c
Re: [PATCH v3 4/6] hurd: Add expected abilist files for x86_64
On Fri, May 5, 2023 at 9:07 PM Luca wrote: > I'll try to build a ramdisk with these packages and see where we get > (not far I suppose, mainly because of the issues introduced by my last > fs/gs base patch... :( ). Quick update, I'm already running ramdisk (with glibc and Hurd built locally, not with these packages) and diskfs spawns a second thread which starts running (yay!), but it's getting self = NULL in entry_point (htl/pt-create.c) since sysdeps/mach/hurd/x86/htl/pt-setup.c doesn't pass the function arg for x86_64 correctly. So that's where I'm at currently. Luca, please try reproducing (and fixing) the two issues I reported here earlier: * fs/gs base not being set when context-switching to a thread via thread_invoke / call_continuation * somehow returning to userspace (and then crashing) after calling task_terminate (mach_task_self ()) Sergey
Re: [PATCH v3 4/6] hurd: Add expected abilist files for x86_64
Il 05/05/23 19:23, Samuel Thibault ha scritto: Samuel Thibault, le ven. 05 mai 2023 17:30:11 +0200, a ecrit: Sergey Bugaev, le ven. 05 mai 2023 18:15:00 +0300, a ecrit: On Fri, May 5, 2023 at 4:30 PM Samuel Thibault wrote: FI, I'm having debian hurd-amd64 packages cross-built, I'm getting e.g. dash built, I'll probably have rumpkernel built too. Essentially, we should be able to debootstrap a whole chroot. Awesome! Are these (binaries? debs?) available for download somewhere? When I'll get them I'll make a repo, yes, but hopefully hurd-amd64 will get opened on debian-ports soon so I can just put them there. I have put what I already have on https://people.debian.org/~sthibault/tmp/hurd-amd64/ Wow! Thanks a lot for your continuous effort! I'll try to build a ramdisk with these packages and see where we get (not far I suppose, mainly because of the issues introduced by my last fs/gs base patch... :( ). Luca
Re: [PATCH v3 4/6] hurd: Add expected abilist files for x86_64
Samuel Thibault, le ven. 05 mai 2023 17:30:11 +0200, a ecrit: > Sergey Bugaev, le ven. 05 mai 2023 18:15:00 +0300, a ecrit: > > On Fri, May 5, 2023 at 4:30 PM Samuel Thibault > > wrote: > > > FI, I'm having debian hurd-amd64 packages cross-built, I'm getting e.g. > > > dash built, I'll probably have rumpkernel built too. Essentially, we > > > should be able to debootstrap a whole chroot. > > > > Awesome! > > > > Are these (binaries? debs?) available for download somewhere? > > When I'll get them I'll make a repo, yes, but hopefully hurd-amd64 will > get opened on debian-ports soon so I can just put them there. I have put what I already have on https://people.debian.org/~sthibault/tmp/hurd-amd64/ Samuel
Re: [hurd,commited] hurd: Enable x86_64 build script
On Tue, 2023-05-02 at 22:25 +0200, Samuel Thibault wrote: > Thanks so much to all people involved in making the 64bit port a real > thing now! Congrats to all involved in creating the 64bit port. GNU/Hurd is definitely not a dead project! Thanks!
Re: [PATCH v3 4/6] hurd: Add expected abilist files for x86_64
Sergey Bugaev, le ven. 05 mai 2023 18:15:00 +0300, a ecrit: > Hello, > > On Fri, May 5, 2023 at 4:30 PM Samuel Thibault > wrote: > > FI, I'm having debian hurd-amd64 packages cross-built, I'm getting e.g. > > dash built, I'll probably have rumpkernel built too. Essentially, we > > should be able to debootstrap a whole chroot. > > Awesome! > > Are these (binaries? debs?) available for download somewhere? When I'll get them I'll make a repo, yes, but hopefully hurd-amd64 will get opened on debian-ports soon so I can just put them there. > Having rumpdisk would be very helpful if I don't manage to get ramdisk > working. Ramdisk should be easy to get working :) But yes, rumpdisk and lwip will be very convenient to have. Samuel
Re: [PATCH v3 4/6] hurd: Add expected abilist files for x86_64
On Tue, 2023-05-02 at 17:10 +0300, Sergey Bugaev wrote: > On Mon, May 1, 2023 at 8:43 PM Samuel Thibault > wrote: > > > > > > They will just *not* work with 64bit. The glue code is not ready at all, > > and I think it's really not useful to spend time on that when we have > > the rump drivers which should be working fine. > > I was secretly hoping that the Linux drivers won't be fully abandoned > with the rise of rump and lwip; but that Linux and non-Linux > implementations will both stay as available alternatives. And that > someone would upgrade the bundled Linux code (6.3 is out now...) -- > perhaps a future project for myself. Please forget Linux code: drivers and pfinet. Rump and lwip is the future. Additionally with pfinet and Linux drivers removed, Hurd code could be made GPLv3+. That would be a _very_ large step ahead towards a pure GNU system. Thanks!
Re: [PATCH v3 4/6] hurd: Add expected abilist files for x86_64
Hello, On Fri, May 5, 2023 at 4:30 PM Samuel Thibault wrote: > FI, I'm having debian hurd-amd64 packages cross-built, I'm getting e.g. > dash built, I'll probably have rumpkernel built too. Essentially, we > should be able to debootstrap a whole chroot. Awesome! Are these (binaries? debs?) available for download somewhere? Having rumpdisk would be very helpful if I don't manage to get ramdisk working. Sergey
Re: [PATCH v3 4/6] hurd: Add expected abilist files for x86_64
Samuel Thibault, le mer. 03 mai 2023 00:37:31 +0200, a ecrit: > Sergey Bugaev, le mer. 03 mai 2023 01:31:53 +0300, a ecrit: > > On Wed, May 3, 2023 at 1:20 AM Samuel Thibault > > wrote: > > > Actually, even what depends on it. That's the whole thing the > > > rebootstrap script I mentioned is about, and it's making progress, it > > > should be able to produce essentially what is needed to run > > > debootstrap/crosshurd. > > > > Ah, I don't mean the troubles due to cross-compiling specifically (I > > don't think the Hurd libraries are any more problematic compared to > > the usual cross-compiling issues?), but simply the fact that they > > FTBFS on x86_64-gnu unless you apply my changes -- that only exist on > > my machine, for now. And there are a lot of them, mostly strategically > > changing size_t to mach_msg_type_number_t in many places, but there > > are subtler ones too. > > Ok, I'll just apply the patches :) FI, I'm having debian hurd-amd64 packages cross-built, I'm getting e.g. dash built, I'll probably have rumpkernel built too. Essentially, we should be able to debootstrap a whole chroot. Samuel