[PATCH 14/14] add tests to make check

2023-12-28 Thread Luca Dariz
--- tests/user-qemu.mk | 10 +- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/tests/user-qemu.mk b/tests/user-qemu.mk index 50b04736..669eb77a 100644 --- a/tests/user-qemu.mk +++ b/tests/user-qemu.mk @@ -178,7 +178,15 @@ clean-test-%: USER_TESTS := \ - tests/test-

[PATCH 11/14] add raw mach_msg tests

2023-12-28 Thread Luca Dariz
--- tests/test-machmsg.c | 390 +++ 1 file changed, 390 insertions(+) create mode 100644 tests/test-machmsg.c diff --git a/tests/test-machmsg.c b/tests/test-machmsg.c new file mode 100644 index ..c262f5f4 --- /dev/null +++ b/tests/test-machmsg.c @@

[PATCH 12/14] add basic task tests

2023-12-28 Thread Luca Dariz
--- tests/test-task.c | 149 ++ 1 file changed, 149 insertions(+) create mode 100644 tests/test-task.c diff --git a/tests/test-task.c b/tests/test-task.c new file mode 100644 index ..da9289ff --- /dev/null +++ b/tests/test-task.c @@ -0,0 +1,149

[PATCH 13/14] add basic thread tests

2023-12-28 Thread Luca Dariz
--- tests/test-threads.c | 88 1 file changed, 88 insertions(+) create mode 100644 tests/test-threads.c diff --git a/tests/test-threads.c b/tests/test-threads.c new file mode 100644 index ..659aaf3b --- /dev/null +++ b/tests/test-threads.c @@

[PATCH v2 00/14] add user tests to gnumach

2023-12-28 Thread Luca Dariz
This patch set adds simple user-space tests as part of gnumach's make check, running on qemu, and some fixes found in the meantime. The tests are far for complete and currently mostly cover issues I found working on x86_64, but they are quite minimal and only require a working MIG. They will be def

[PATCH 03/14] add mach_host tests

2023-12-28 Thread Luca Dariz
--- tests/test-mach_host.c | 54 ++ 1 file changed, 54 insertions(+) create mode 100644 tests/test-mach_host.c diff --git a/tests/test-mach_host.c b/tests/test-mach_host.c new file mode 100644 index ..99fc4aca --- /dev/null +++ b/tests/test-mach_ho

[PATCH 09/14] add syscall tests

2023-12-28 Thread Luca Dariz
--- tests/test-syscalls.c | 149 ++ 1 file changed, 149 insertions(+) create mode 100644 tests/test-syscalls.c diff --git a/tests/test-syscalls.c b/tests/test-syscalls.c new file mode 100644 index ..7e4234ac --- /dev/null +++ b/tests/test-syscalls.

[PATCH 07/14] add basic vm tests

2023-12-28 Thread Luca Dariz
--- tests/test-vm.c | 52 + 1 file changed, 52 insertions(+) create mode 100644 tests/test-vm.c diff --git a/tests/test-vm.c b/tests/test-vm.c new file mode 100644 index ..ba52876b --- /dev/null +++ b/tests/test-vm.c @@ -0,0 +1,52 @@ + +#in

[PATCH 02/14] add basic user-space tests with qemu

2023-12-28 Thread Luca Dariz
* configure.ac: move test fragment to have USER32 * tests/Makefrag.am: add user tests * tests/README: add basic info on how to run and debug user tests * tests/configfrag.ac: allow the test compiler/flags to be autoconfigured or customized * tests/grub.cfg.single.template: add minimal grub config

[PATCH 06/14] adjust range when changing memory pageability

2023-12-28 Thread Luca Dariz
* vm/vm_map.c: if the start address is not in the map, try to find the nearest entry instead of failing. This caused the initial vm_wire_all(host, task VM_WIRE_ALL) in glibc startup to fail with KERN_NO_SPACE. --- vm/vm_map.c | 21 - 1 file changed, 16 insertions(+), 5 delet

[PATCH 10/14] expose MACH_MSG_USER_ALIGNMENT for manually-built messages

2023-12-28 Thread Luca Dariz
--- include/mach/message.h | 19 ++- 1 file changed, 10 insertions(+), 9 deletions(-) diff --git a/include/mach/message.h b/include/mach/message.h index 0b8b34d4..9790ef98 100644 --- a/include/mach/message.h +++ b/include/mach/message.h @@ -401,6 +401,16 @@ typedef integer_t mach_

[PATCH 08/14] add thread creation helper to tests

2023-12-28 Thread Luca Dariz
--- tests/include/testlib.h | 1 + tests/testlib.c | 53 + 2 files changed, 54 insertions(+) diff --git a/tests/include/testlib.h b/tests/include/testlib.h index 2b7a67c0..52605047 100644 --- a/tests/include/testlib.h +++ b/tests/include/testlib.h

[PATCH 04/14] add gsync tests

2023-12-28 Thread Luca Dariz
--- tests/test-gsync.c | 87 ++ 1 file changed, 87 insertions(+) create mode 100644 tests/test-gsync.c diff --git a/tests/test-gsync.c b/tests/test-gsync.c new file mode 100644 index ..80701606 --- /dev/null +++ b/tests/test-gsync.c @@ -0,0 +1,

[PATCH 01/14] USER32: change default to disabled and make it a general option

2023-12-28 Thread Luca Dariz
* configfrag.ac: add the global option USER32; although it makes sense for 64-bit versions only, it can be used by future 64-bit architectiures and not only x86_64. Also, change the default setting to be disabled; now that we have a working full 64-bit system, it makes sense to consider it

[PATCH 05/14] add mach_port tests

2023-12-28 Thread Luca Dariz
--- tests/test-mach_port.c | 80 ++ 1 file changed, 80 insertions(+) create mode 100644 tests/test-mach_port.c diff --git a/tests/test-mach_port.c b/tests/test-mach_port.c new file mode 100644 index ..4f095047 --- /dev/null +++ b/tests/test-mach_po