Re: [PATCH 01/41] libshouldbeinlibc: Port to x86_64

2023-05-08 Thread Sergey Bugaev
On Tue, May 9, 2023 at 12:40 AM Samuel Thibault wrote: > > - size_t opts_len = sizeof opts; > > + mach_msg_type_number_t opts_len = sizeof opts; > > ? That doesn't make sense, sizeof does return size_t. sizeof returns size_t, yes. But this code later passes opts_len *by pointer* to fsys_get_opt

Re: [PATCH 01/41] libshouldbeinlibc: Port to x86_64

2023-05-08 Thread Samuel Thibault
Samuel Thibault, le lun. 08 mai 2023 23:40:08 +0200, a ecrit: > Sergey Bugaev, le mar. 09 mai 2023 00:30:56 +0300, a ecrit: > > --- > > libshouldbeinlibc/fsysops.c| 2 +- > > libshouldbeinlibc/idvec-auth.c | 4 ++-- > > libshouldbeinlibc/portinfo.c | 14 +++--- > > 3 files changed,

Re: [PATCH 01/41] libshouldbeinlibc: Port to x86_64

2023-05-08 Thread Samuel Thibault
Sergey Bugaev, le mar. 09 mai 2023 00:30:56 +0300, a ecrit: > --- > libshouldbeinlibc/fsysops.c| 2 +- > libshouldbeinlibc/idvec-auth.c | 4 ++-- > libshouldbeinlibc/portinfo.c | 14 +++--- > 3 files changed, 10 insertions(+), 10 deletions(-) > > diff --git a/libshouldbeinlibc/fsy

[PATCH 17/41] proc: Port to x86_64

2023-05-08 Thread Sergey Bugaev
--- proc/host.c | 10 +- proc/info.c | 24 proc/mgt.c | 12 ++-- proc/msg.c | 5 +++-- proc/pgrp.c | 6 +++--- 5 files changed, 29 insertions(+), 28 deletions(-) diff --git a/proc/host.c b/proc/host.c index e78e70da..e9f36f51 100644 --- a/proc/host.c +

[PATCH 38/41] trans: Port to x86_64

2023-05-08 Thread Sergey Bugaev
--- trans/crash.c| 2 +- trans/fakeroot.c | 36 +++- trans/fifo.c | 4 +++- trans/magic.c| 8 trans/mtab.c | 11 ++- trans/new-fifo.c | 7 +-- trans/streamio.c | 7 +-- trans/symlink.c | 6 -- 8 files changed, 47 i

[PATCH 22/41] sutils: Avoid warnings about prototype mismatch

2023-05-08 Thread Sergey Bugaev
--- sutils/fsck.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/sutils/fsck.c b/sutils/fsck.c index 0d3b1d46..6953f7fa 100644 --- a/sutils/fsck.c +++ b/sutils/fsck.c @@ -99,12 +99,12 @@ static int _debug = 0; static int got_sigquit = 0, got_sigint = 0; -static void

[PATCH 31/41] mach-defpager: Port to x86_64

2023-05-08 Thread Sergey Bugaev
--- mach-defpager/default_pager.c | 28 ++-- mach-defpager/file_io.h | 4 ++-- mach-defpager/setup.c | 4 ++-- 3 files changed, 18 insertions(+), 18 deletions(-) diff --git a/mach-defpager/default_pager.c b/mach-defpager/default_pager.c index 82e8f526..2aaa

[PATCH 18/41] proc: Fix use-after-realloc

2023-05-08 Thread Sergey Bugaev
--- proc/info.c | 6 -- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/proc/info.c b/proc/info.c index 12743465..d84fdd45 100644 --- a/proc/info.c +++ b/proc/info.c @@ -941,6 +941,8 @@ S_proc_getloginpids (struct proc *callerp, if (new - parray > parraysize)

[PATCH 06/41] libtrivfs: Port to x86_64

2023-05-08 Thread Sergey Bugaev
--- 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 ++ 7 file

[PATCH 28/41] eth-multiplexer: Port to x86_64

2023-05-08 Thread Sergey Bugaev
--- eth-multiplexer/device_impl.c | 18 ++ eth-multiplexer/ethernet.c| 4 ++-- 2 files changed, 12 insertions(+), 10 deletions(-) diff --git a/eth-multiplexer/device_impl.c b/eth-multiplexer/device_impl.c index 6a67fbd9..8a22793a 100644 --- a/eth-multiplexer/device_impl.c +++

[PATCH 16/41] auth: Port to x86_64

2023-05-08 Thread Sergey Bugaev
--- auth/auth.c | 29 +++-- 1 file changed, 15 insertions(+), 14 deletions(-) diff --git a/auth/auth.c b/auth/auth.c index 925f790f..761185a8 100644 --- a/auth/auth.c +++ b/auth/auth.c @@ -79,7 +79,8 @@ destroy_authhandle (void *p) /* id management. */ static inline v

[PATCH 39/41] Look for mach_i386 in mach/machine/

2023-05-08 Thread Sergey Bugaev
There's no mach/i386/ on x8_64. --- Makeconf | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Makeconf b/Makeconf index c2bf9926..7585260d 100644 --- a/Makeconf +++ b/Makeconf @@ -610,7 +610,7 @@ device_defs = $(addsuffix .defs,$(device_defs_names)) $(mach_defs): %.defs:

[PATCH 36/41] term: Port to x86_64

2023-05-08 Thread Sergey Bugaev
--- term/devio.c | 8 term/hurdio.c | 2 +- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/term/devio.c b/term/devio.c index 65dea5d5..3b4e4845 100644 --- a/term/devio.c +++ b/term/devio.c @@ -536,7 +536,7 @@ device_open_reply (mach_port_t replyport, ma

[PATCH 25/41] daemons: Port to x86_64

2023-05-08 Thread Sergey Bugaev
--- daemons/lmail.c | 9 + 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/daemons/lmail.c b/daemons/lmail.c index 33ccf66b..ee6b6fdc 100644 --- a/daemons/lmail.c +++ b/daemons/lmail.c @@ -146,10 +146,11 @@ bfree (char *blk, size_t blk_len) /* Read up to MAX chars from IN in

[PATCH 30/41] startup: Port to x86_64

2023-05-08 Thread Sergey Bugaev
--- startup/startup.c | 20 1 file changed, 12 insertions(+), 8 deletions(-) diff --git a/startup/startup.c b/startup/startup.c index fd7503f4..feb7d265 100644 --- a/startup/startup.c +++ b/startup/startup.c @@ -266,7 +266,7 @@ reboot_system (int flags) if (fakeboot)

[PATCH 24/41] devnode: Port to x86_64

2023-05-08 Thread Sergey Bugaev
--- devnode/devnode.c | 20 1 file changed, 12 insertions(+), 8 deletions(-) diff --git a/devnode/devnode.c b/devnode/devnode.c index f5a00f1b..3db098a2 100644 --- a/devnode/devnode.c +++ b/devnode/devnode.c @@ -193,8 +193,8 @@ ds_device_close (device_t device) kern_return_t

[PATCH 40/41] Disable Linux-based pfinet on x86_64

2023-05-08 Thread Sergey Bugaev
--- Makefile | 6 +- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/Makefile b/Makefile index 874349c0..c611a9ea 100644 --- a/Makefile +++ b/Makefile @@ -36,7 +36,7 @@ lib-subdirs = libshouldbeinlibc libihash libiohelp libports \ # Hurd programs prog-subdirs = auth proc exec te

[PATCH 19/41] exec: Port to x86_64

2023-05-08 Thread Sergey Bugaev
--- exec/elfcore.c | 6 +++--- exec/exec.c| 4 ++-- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/exec/elfcore.c b/exec/elfcore.c index 5f489a1e..ab6dc2ba 100644 --- a/exec/elfcore.c +++ b/exec/elfcore.c @@ -168,7 +168,7 @@ dump_core (task_t task, file_t file, off_t corelimit,

[PATCH 23/41] storeio: Port to x86_64

2023-05-08 Thread Sergey Bugaev
--- storeio/io.c | 13 ++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/storeio/io.c b/storeio/io.c index 3c4cb9ff..f01e1918 100644 --- a/storeio/io.c +++ b/storeio/io.c @@ -86,13 +86,20 @@ trivfs_S_io_read (struct trivfs_protid *cred, data_t *data, ma

[PATCH 27/41] boot: Port to x64_64

2023-05-08 Thread Sergey Bugaev
--- boot/boot.c | 68 +++- boot/boot_script.c | 32 ++--- boot/boot_script.h | 4 +-- boot/userland-boot.c | 11 +-- 4 files changed, 61 insertions(+), 54 deletions(-) diff --git a/boot/boot.c b/boot/boot.c index 144ca1c3..

[PATCH 20/41] elfcore: Add support for saving x86_64 registers

2023-05-08 Thread Sergey Bugaev
--- exec/elfcore.c | 72 +- 1 file changed, 71 insertions(+), 1 deletion(-) diff --git a/exec/elfcore.c b/exec/elfcore.c index ab6dc2ba..c6aa2bc8 100644 --- a/exec/elfcore.c +++ b/exec/elfcore.c @@ -23,6 +23,7 @@ #include #include #include +#i

[PATCH 29/41] pflocal: Port to x86_64

2023-05-08 Thread Sergey Bugaev
--- pflocal/io.c | 12 +++- pflocal/pf.c | 6 -- pflocal/socket.c | 21 - 3 files changed, 27 insertions(+), 12 deletions(-) diff --git a/pflocal/io.c b/pflocal/io.c index 06749756..f621bbb3 100644 --- a/pflocal/io.c +++ b/pflocal/io.c @@ -48,6 +48,7 @@ S_

[PATCH 26/41] boot: Fix use-after-realloc

2023-05-08 Thread Sergey Bugaev
--- boot/boot.c | 7 --- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/boot/boot.c b/boot/boot.c index b661f09c..144ca1c3 100644 --- a/boot/boot.c +++ b/boot/boot.c @@ -486,15 +486,16 @@ read_boot_script (char **buffer, size_t *length) if (p == buf + len) {

[PATCH 21/41] sutils: Port to x86_64

2023-05-08 Thread Sergey Bugaev
--- sutils/swapon.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/sutils/swapon.c b/sutils/swapon.c index c965d8e2..30e2e2d6 100644 --- a/sutils/swapon.c +++ b/sutils/swapon.c @@ -523,11 +523,11 @@ main (int argc, char *argv[]) if (show) { vm_size_t *free

[PATCH 10/41] libpipe: Fix use-after-realloc

2023-05-08 Thread Sergey Bugaev
We cannot use old_buf after we realloc it, even just for subtracting it from another pointer. Instead, compute the offsets in advance. --- libpipe/pq.c | 9 + 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/libpipe/pq.c b/libpipe/pq.c index af380274..fff03e67 100644 --- a/lib

[PATCH 41/41] Style tweaks

2023-05-08 Thread Sergey Bugaev
--- console-client/trans.c| 80 +-- console-client/trans.h| 10 ++--- fatfs/dir.c | 12 +++--- libpager/pager-memcpy.c | 8 ++-- libports/manage-multithread.c | 6 +-- libps/proclist.c | 2 +- pflocal/pf.c

[PATCH 12/41] libps: Silence a warning

2023-05-08 Thread Sergey Bugaev
GCC was complaining about the mismatch in types between the 'fn' pointer and the function pointers assigned to it. Since fn is meant to be used with different function types, represent it as a 'void *' and not a pointer to any particular function type. --- libps/ps.h | 2 +- 1 file changed, 1 inse

[PATCH 35/41] procfs: Port to x86_64

2023-05-08 Thread Sergey Bugaev
--- procfs/process.c | 18 +- procfs/rootdir.c | 8 2 files changed, 13 insertions(+), 13 deletions(-) diff --git a/procfs/process.c b/procfs/process.c index eaf5f45b..3170b775 100644 --- a/procfs/process.c +++ b/procfs/process.c @@ -162,17 +162,17 @@ process_file_gc_map

[PATCH 32/41] tmpfs: Port to x86_64

2023-05-08 Thread Sergey Bugaev
--- tmpfs/tmpfs.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tmpfs/tmpfs.c b/tmpfs/tmpfs.c index 5483ec87..195813c4 100644 --- a/tmpfs/tmpfs.c +++ b/tmpfs/tmpfs.c @@ -282,7 +282,7 @@ diskfs_append_args (char **argz, size_t *argz_len) #define S(n, c) if ((lim & ((1 << n) -

[PATCH 33/41] fatfs: Port to x86_64

2023-05-08 Thread Sergey Bugaev
--- fatfs/dir.c | 6 +++--- fatfs/main.c | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/fatfs/dir.c b/fatfs/dir.c index 2679a0ce..71974642 100644 --- a/fatfs/dir.c +++ b/fatfs/dir.c @@ -659,7 +659,7 @@ diskfs_direnter_hard (struct node *dp, const char *name, struct node *

[PATCH 02/41] libports: Port to x86_64

2023-05-08 Thread Sergey Bugaev
--- libports/manage-multithread.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/libports/manage-multithread.c b/libports/manage-multithread.c index 9f397b26..0f8af8ea 100644 --- a/libports/manage-multithread.c +++ b/libports/manage-multithread.c @@ -229,7 +229,7 @@ ports_mana

[PATCH 09/41] libstore: Port to x86_64

2023-05-08 Thread Sergey Bugaev
--- libstore/argp.c | 6 -- libstore/copy.c | 16 libstore/device.c | 28 +--- libstore/file.c | 32 libstore/nbd.c| 5 +++-- libstore/store.h | 9 - libstore/task.c | 8 +++- 7 files changed

[PATCH 15/41] utils: Avoid warnings about prototype mismatch

2023-05-08 Thread Sergey Bugaev
--- utils/parse.c | 5 - utils/ps.c| 2 +- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/utils/parse.c b/utils/parse.c index c3d28e5c..719494a4 100644 --- a/utils/parse.c +++ b/utils/parse.c @@ -119,7 +119,10 @@ parse_numlist (char *arg, int (*lookup_fn)(con

[PATCH 34/41] ext2fs: Port to x86_64

2023-05-08 Thread Sergey Bugaev
--- ext2fs/dir.c| 13 - ext2fs/ext2fs.c | 3 ++- ext2fs/hyper.c | 3 ++- ext2fs/ialloc.c | 10 ++ ext2fs/inode.c | 3 ++- ext2fs/pager.c | 5 +++-- 6 files changed, 23 insertions(+), 14 deletions(-) diff --git a/ext2fs/dir.c b/ext2fs/dir.c index 963f0843..ede3eda5 1

[PATCH 08/41] libdiskfs: Port to x86_64

2023-05-08 Thread Sergey Bugaev
--- 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 | 10 +- libdiskfs/fi

[PATCH 13/41] libmachdev: Port to x86_64

2023-05-08 Thread Sergey Bugaev
--- libmachdev/trivfs_server.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/libmachdev/trivfs_server.c b/libmachdev/trivfs_server.c index 9c9f817d..71993f0b 100644 --- a/libmachdev/trivfs_server.c +++ b/libmachdev/trivfs_server.c @@ -32,7 +32,7 @@ #include #include #inc

[PATCH 37/41] console-client: Port to x86_64

2023-05-08 Thread Sergey Bugaev
--- console-client/trans.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/console-client/trans.h b/console-client/trans.h index c7ca6a79..6089b987 100644 --- a/console-client/trans.h +++ b/console-client/trans.h @@ -39,7 +39,7 @@ struct consnode does. */ error_t (*wr

[PATCH 14/41] utils: Port to x86_64

2023-05-08 Thread Sergey Bugaev
--- utils/fakeauth.c | 36 +--- utils/frobauth.h | 2 +- utils/fsysopts.c | 5 +++-- utils/ftpdir.c| 3 ++- utils/login.c | 2 +- utils/pids.c | 9 + utils/pids.h | 11 +++ utils/ps.c| 2 +- utils/rpctrace.c | 8 +

[PATCH 01/41] libshouldbeinlibc: Port to x86_64

2023-05-08 Thread Sergey Bugaev
--- libshouldbeinlibc/fsysops.c| 2 +- libshouldbeinlibc/idvec-auth.c | 4 ++-- libshouldbeinlibc/portinfo.c | 14 +++--- 3 files changed, 10 insertions(+), 10 deletions(-) diff --git a/libshouldbeinlibc/fsysops.c b/libshouldbeinlibc/fsysops.c index dbcae672..eb04c397 100644 --- a

[PATCH 07/41] libnetfs: Port to x86_64

2023-05-08 Thread Sergey Bugaev
--- libnetfs/file-exec.c | 33 + libnetfs/io-read.c | 22 -- 2 files changed, 29 insertions(+), 26 deletions(-) diff --git a/libnetfs/file-exec.c b/libnetfs/file-exec.c index da49ac36..b5293afc 100644 --- a/libnetfs/file-exec.c +++ b/libnetfs/

[PATCH 04/41] libfshelp: Port to x86_64

2023-05-08 Thread Sergey Bugaev
--- libfshelp/exec-reauth.c | 4 ++-- libfshelp/fshelp.h| 19 --- libfshelp/start-translator-long.c | 16 ++-- libfshelp/start-translator.c | 5 +++-- 4 files changed, 27 insertions(+), 17 deletions(-) diff --git a/libfshelp/exec-reauth

[PATCH 00/41] The x86_64 port

2023-05-08 Thread Sergey Bugaev
Hello! This is it -- my work on porting the Hurd proper to x86_64, and assorted fixes that came up. I've split into separate patches by components for ease of review. Most of the changes amount to being more strict about integer types: we can no longer use unsigned int, integer_t, size_t, vm_size

[PATCH 11/41] libps: Port to x86_64

2023-05-08 Thread Sergey Bugaev
--- libps/host.c | 6 +++--- libps/proclist.c | 21 - libps/procstat.c | 18 -- libps/ps.h | 7 --- 4 files changed, 31 insertions(+), 21 deletions(-) diff --git a/libps/host.c b/libps/host.c index 3ef83cae..8b45639f 100644 --- a/libps/host.c ++

[PATCH 05/41] libfshelp-tests: Port to x86_64

2023-05-08 Thread Sergey Bugaev
--- libfshelp-tests/race.c | 2 +- libfshelp-tests/test-fcntl.c | 3 ++- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/libfshelp-tests/race.c b/libfshelp-tests/race.c index f44ef624..376ada23 100644 --- a/libfshelp-tests/race.c +++ b/libfshelp-tests/race.c @@ -33,7 +33,7 @@

[PATCH 03/41] libiohelp: Port to x86_64

2023-05-08 Thread Sergey Bugaev
--- libiohelp/iouser-reauth.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/libiohelp/iouser-reauth.c b/libiohelp/iouser-reauth.c index 9edab7cf..d8fd11d9 100644 --- a/libiohelp/iouser-reauth.c +++ b/libiohelp/iouser-reauth.c @@ -33,7 +33,7 @@ error_t iohelp_reauth (struct io

Re: [PATCH gnumach] Remove host_kernel_version RPC for x86_64

2023-05-08 Thread Samuel Thibault
Hello, Flavio Cruz, le dim. 07 mai 2023 23:35:23 -0400, a ecrit: > We can fast track the simplification of the RPC ABI for x86_64 if we don't > have > MACH_MSG_TYPE_STRING used in RPCs which forces msgt_size to use more than 8 > bits. Doesn't this break builds of hurd/glib code that is trying to

Re: [PATCH hurd] Stop checking if MiG supports retcode.

2023-05-08 Thread Samuel Thibault
Applied, thanks! Flavio Cruz, le dim. 07 mai 2023 23:30:36 -0400, a ecrit: > Due to MiG requiring the subsystem to be defined early in order to know the > size of a port, this was causing a division by zero error during ./configure. > We could have just move subsystem to the top of the snippet, ho

Re: [bug-diffutils] bug#63333: [PATCH] Add hurd-amd64 support

2023-05-08 Thread Jim Meyering
On Sat, May 6, 2023 at 8:34 PM Samuel Thibault wrote: > This adds SIGSEGV_FAULT_STACKPOINTER for the hurd-amd64 case > > --- ./lib/sigsegv.c.original2023-05-05 10:45:54.673751100 + > +++ ./lib/sigsegv.c 2023-05-05 10:48:47.903577554 + > @@ -351,6 +351,17 @@ > "old esp, if trapp