History log of /haiku/src/tests/system/kernel/Jamfile
Revision Date Author Comments
# 7be37179 20-May-2023 Trung Nguyen <trungnt282910@gmail.com>

kernel/vm: unlock cache before unmapping addresses

Unlock the current cache in `map_backing_store` before
`unmap_address_range` is called, since `unmap_address_range` may
call `delete_area` which would then also attempt to lock the same
cache if that cache has already been mapped to an area in the
conflicting address range.

Fixes #18422.

Change-Id: I6fc5301c43d11bb6df489a2e6d6bdcd6cd80d2b7
Reviewed-on: https://review.haiku-os.org/c/haiku/+/6392
Reviewed-by: Jérôme Duval <jerome.duval@gmail.com>


# b7cc4167 28-Feb-2023 Augustin Cavalier <waddlesplash@gmail.com>

tests: Add missing Jam rule for mmap_cut_tests.


# a9f415f0 07-May-2020 Jérôme Duval <jerome.duval@gmail.com>

add simple avx test

Change-Id: Ia17524929672b420e20d9b491fdafd21cc5a928f
Reviewed-on: https://review.haiku-os.org/c/haiku/+/2850
Reviewed-by: waddlesplash <waddlesplash@gmail.com>


# b357daa5 30-Mar-2019 Augustin Cavalier <waddlesplash@gmail.com>

build: Deprecate SetSubDirSupportedPlatformsBeOSCompatible.

By default, all targets support the "haiku" platform, and we no longer
support building for BeOS, Dan0, Zeta, or other BeOS-compatible targets,
so this is no longer needed.

Also remove all references to the non-Haiku compatible platforms, and
change all BEOS_COMPATIBLE checks to HAIKU_COMPATIBLE. Removal of
all SetSubDirSupportedPlatformsBeOSCompatible invocations
will be in the next commit.


# fe8b46fb 13-Aug-2018 Kacper Kasper <kacperkasper@gmail.com>

kernel: vm: add unit tests for get_mount_point

Change-Id: I1eb7540ffadb26acf05b695af2e7508c71ac7274
Reviewed-on: https://review.haiku-os.org/460
Reviewed-by: waddlesplash <waddlesplash@gmail.com>


# fb6387f2 21-Jan-2018 Xiang Fan <sfanxiang@gmail.com>

kernel: add /dev/null polling test

Bug: 13965


# 12b5c184 01-Aug-2017 Philippe Houdoin <philippe.houdoin@gmail.com>

kernel: add fifo polling test from #7859


# 663b8004 29-Apr-2017 Axel Dörfler <axeld@pinc-software.de>

Added unit tests for KPath.

* There are a few oddities, and at least one bug.


# 220d0402 31-Jul-2014 Oliver Tappe <zooey@hirschkaefer.de>

Use libstdc++, libsupc++ and libgcc from gcc_syslibs.

* Instead of faking libstdc++.so from libstdc++.a, use libstdc++.so
from the gcc_syslibs build feature for everything except x86_gcc2.
* Use libgcc_s.so from the gcc_syslibs build feature for everything but
x86_gcc2 (which still carries libgcc as part of libroot.so).
* Drop filtering of libgcc objects for libroot, as that is no longer
necessary since we're only using libgcc-as-single-object for libroot
with x86_gcc2, where the filtered object file doesn't exist. Should
the objects that used to be filtered cause any problems as part of
libgcc_s.so, we can always filter them as part of the gcc build.
* Use libsupc++.so from the gcc_syslibs build feature for everything but
x86_gcc2.
* Adjust all Jamfiles accordingly.
* Deactivate building of faked libstdc++.so for non-x86-gcc2. For
x86_gcc2, we still build libstdc++.so from the sources in the Haiku
source tree as part of the Haiku build .
* Put gcc_syslibs package onto the image, when needed.


# 1e0ea42a 24-Jun-2010 Ingo Weinhold <ingo_weinhold@gmx.de>

Beginnings of a test for tracking down the file corruptions that still seem
to occur in current revisions. The working hypothesis is that the corruptions
happen below the file system (i.e. in file/block cache or VM). The intended
setup for the test is a device driver -- a loop device kind of thing -- that
also stores check sums for all blocks and a file system that communicates the
check sums to expect via an independent channel (ioctl) to the driver.
Whenever a block arrives at the driver for writing, the block is checked
against its expected check sum. Initially Axel's idea, BTW.
The device driver is done and working as far as tested (save for
unregistering devices). The file system part is still to be done.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37247 a95241bf-73f2-0310-859d-f6bbb57e9c96


# fba84f08 19-Apr-2010 Ingo Weinhold <ingo_weinhold@gmx.de>

Small test program that shows Haiku doesn't deal correctly with resizing
mmap()ed files. Also reproduces #5473.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36359 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 75e7a5ad 19-Feb-2010 Axel Dörfler <axeld@pinc-software.de>

* Added simple test application to be able to see node monitoring messages
in order to reproduce bug #5405.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35526 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 933764d7 30-Dec-2009 Ingo Weinhold <ingo_weinhold@gmx.de>

* Added a framework for unit tests in the kernel. The beast is implemented as
a driver which publishes a device as "/dev/kernel_unit_tests". Commands
can be issued by writing to the device (e.g.
"echo help > /dev/kernel_unit_tests"), output is written to serial port/
syslog.
* Added a few tests for rw_lock.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@34827 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 69725587 16-Dec-2009 Axel Dörfler <axeld@pinc-software.de>

* Added test that has multiple readers on a single port, and that drops into the
same panic as #5119.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@34680 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 56376843 20-Oct-2009 Axel Dörfler <axeld@pinc-software.de>

* Added command line application to use live queries. Useful for testing why
the new mail count is off that much on mail removal.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33677 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 4b6cb4f5 15-Oct-2009 Axel Dörfler <axeld@pinc-software.de>

* Added test application that easily reproduces bug #4778.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33593 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 16d5c24e 07-Jul-2009 Oliver Tappe <zooey@hirschkaefer.de>

* merged 32bit-wchar_t branches of buildtools and haiku back into
the respective trunk

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31443 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 3c3d2b85 18-Apr-2009 Ingo Weinhold <ingo_weinhold@gmx.de>

* Moved the time_stats tool to src/bin/debug.
* Fixed some gcc 4 warnings.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30236 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 91e9d17c 07-Sep-2008 Ingo Weinhold <ingo_weinhold@gmx.de>

Small test program timing our path resolution. Which sucks badly...


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27364 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 49de5a2f 03-Sep-2008 Ingo Weinhold <ingo_weinhold@gmx.de>

* Added "-s" option, which uses the new scheduling analysis feature to
gather additional information on the threads that were running and
what they were doing.
* Added "-o <output>" option for specifying a file to which to print the
statistics to.
* Some beautifications (usage, help, etc.).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27306 a95241bf-73f2-0310-859d-f6bbb57e9c96


# e969748a 30-Aug-2008 Ingo Weinhold <ingo_weinhold@gmx.de>

Added test program "time_stats" which is a "time" on steroids. It prints
not only the times for the child process, but also for all other
threads. Gives some more insight into what was going on in the system.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27249 a95241bf-73f2-0310-859d-f6bbb57e9c96


# d80bf853 21-Aug-2008 Ingo Weinhold <ingo_weinhold@gmx.de>

Added swap support test program. It's currently running into deadlocks.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27110 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 063a092f 04-Jul-2008 Ingo Weinhold <ingo_weinhold@gmx.de>

Test to quickly reproduce bug #2471.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26247 a95241bf-73f2-0310-859d-f6bbb57e9c96


# e72e5275 01-Jun-2008 Ingo Weinhold <ingo_weinhold@gmx.de>

Added test that runs another program and analyzes the contention of the
thread and team spinlocks during that time.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25753 a95241bf-73f2-0310-859d-f6bbb57e9c96


# ccce5afa 20-Apr-2008 Ingo Weinhold <ingo_weinhold@gmx.de>

Added simple test that demonstrates that unblocking threads waiting on a
semaphore after an interrupted one is broken.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25087 a95241bf-73f2-0310-859d-f6bbb57e9c96


# b4c82732 19-Feb-2008 Axel Dörfler <axeld@pinc-software.de>

Added test program for our advisory locking implementation - looks like
it has several issues, and a F_UNLCK semantic different from other OSs,
causing bug #1791.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24017 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 8b3b2b4f 17-Feb-2008 Ingo Weinhold <ingo_weinhold@gmx.de>

Test program for syscall restarts. Only a few syscalls are tested yet.
Nested syscall restarts (interrupted syscall in a signal handler)
aren't tested yet.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23985 a95241bf-73f2-0310-859d-f6bbb57e9c96


# dc5e0118 03-Dec-2007 Ingo Weinhold <ingo_weinhold@gmx.de>

Make the syscall_time test compile under BeOS, too.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23051 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 9121620d 30-Oct-2007 Axel Dörfler <axeld@pinc-software.de>

Added sigsuspend_test, courtesy of Vasilis Kaoutsis - thanks!
It currently fails on Haiku.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22777 a95241bf-73f2-0310-859d-f6bbb57e9c96


# dd980a19 12-Oct-2007 Axel Dörfler <axeld@pinc-software.de>

Started working on a test application for the scheduler; it uses the scheduler
of the kernel directly, and emulates the kernel's API where necessary.
Not complete at all yet, but I already found one serious bug in our current
scheduler with it :-)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22513 a95241bf-73f2-0310-859d-f6bbb57e9c96


# b16fdbd6 02-Oct-2007 Ingo Weinhold <ingo_weinhold@gmx.de>

Little test program for wait_for_objects_etc().


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22417 a95241bf-73f2-0310-859d-f6bbb57e9c96


# f5ede4ec 30-Sep-2007 Ingo Weinhold <ingo_weinhold@gmx.de>

Added two small select() test programs. select_check select()s
stdin/out/err according the what was specified via arguments.
select_close_test select()s a file descriptor that is closed a little
later by another thread.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22390 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 68f20814 30-Aug-2007 Ingo Weinhold <ingo_weinhold@gmx.de>

Little test for set_area_protection()'s B_READ_AREA -> B_WRITE_AREA behavior.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22123 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 68da2499 24-Aug-2007 Ingo Weinhold <ingo_weinhold@gmx.de>

Small test tool printing process/process group and singal info.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22052 a95241bf-73f2-0310-859d-f6bbb57e9c96


# cd957560 24-Apr-2007 Hugo Santos <hugosantos@nowhere.fake>

added test_slab to tests/system/kernel/Jamfile.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20793 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 34ce5866 21-Mar-2007 Ingo Weinhold <ingo_weinhold@gmx.de>

"Clean room" test for a "copy on write" problem leading to bugs #113
and #928. Under certain conditions a fork()ed child process can
write to the parent process' memory.
A fix follows...


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20401 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 56a16fd0 29-Jan-2007 Axel Dörfler <axeld@pinc-software.de>

Added some more tests for wait() and waitpid(). Looks like my implementation is
broken (see bug #996), but less broken than Be's.
Also the Linux implementation is not perfect, as test 4 reveals: it waits for a
child with a certain process group, even if there is no child around anymore (because
the last child changed its process group. However, it will still return (and report
the correct error code) once this child exits.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20009 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 5839b2df 27-Jan-2007 Jérôme Duval <korli@users.berlios.de>

the test case for ticket #995
wait() should return with an error when the process has no children


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19983 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 23bd6929 11-Jan-2007 Axel Dörfler <axeld@pinc-software.de>

Added the last of the companion fibo test apps (based on fork/exec - this is just
another test that doesn't work on BeOS, dunno why, but who cares...).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19767 a95241bf-73f2-0310-859d-f6bbb57e9c96


# f9e49fed 10-Jan-2007 Axel Dörfler <axeld@pinc-software.de>

* Fixed fibo_load_image: it actually did not produce the fibonacci numbers.
* Implemented a fibo_fork which uses fork() instead.
* Both tests can pretty easily let the kernel crash!


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19764 a95241bf-73f2-0310-859d-f6bbb57e9c96


# cbe5f245 09-Jan-2007 Axel Dörfler <axeld@pinc-software.de>

* Added fibo_load_image test based on Manuel's fibo test from NewOS - doesn't work yet
due to problems with wait_for_thread().
* Minor cleanup to the Jamfile.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19757 a95241bf-73f2-0310-859d-f6bbb57e9c96


# b12912be 08-Nov-2006 Jérôme Duval <korli@users.berlios.de>

added a 'dm_tree' like test tool, ioctl based.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19235 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 7a9de5d1 02-Jun-2006 Axel Dörfler <axeld@pinc-software.de>

Added simple test for the BNode::Lock()/Unlock() feature.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17698 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 7f832a1d 08-Mar-2006 Marcus Overhagen <marcusoverhagen@gmail.com>

more tests for port functionality


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16648 a95241bf-73f2-0310-859d-f6bbb57e9c96


# da9b743b 08-Mar-2006 Marcus Overhagen <marcusoverhagen@gmail.com>

modified tests. The results on BeOS R5 do not match the BeBook description.

$ /boot/home/develop/haiku/generated/objects/haiku/x86/debug_1/tests/system/kernel/port_close_test_1
created port 2269
write port result 0x00000000 (No Error)
write port result 0x00000000 (No Error)
close port result 0x00000000 (No Error)
write port result 0x80001200 (Bad port ID)
port_buffer_size -2147479552 (0x80001000) (Bad semaphore ID)
read port code 1234, size 10 (0x0000000a) (Unknown Error (10))
port_buffer_size -2147479552 (0x80001000) (Bad semaphore ID)
read port code 5678, size 20 (0x00000014) (Unknown Error (20))
should block now
port_buffer_size -2147479552 (0x80001000) (Bad semaphore ID)
$ /boot/home/develop/haiku/generated/objects/haiku/x86/debug_1/tests/system/kernel/port_close_test_2
created port 2270
write port result 0x00000000 (No Error)
write port result 0x00000000 (No Error)
close port result 0x00000000 (No Error)
write port result 0x80001200 (Bad port ID)
port_buffer_size -2147479552 (0x80001000) (Bad semaphore ID)
read port code 1234, size 10 (0x0000000a) (Unknown Error (10))
port_buffer_size -2147479552 (0x80001000) (Bad semaphore ID)
read port code 5678, size 20 (0x00000014) (Unknown Error (20))
should block now
read port code 5678, size -2147479040 (0x80001200) (Bad port ID)
$ /boot/home/develop/haiku/generated/objects/haiku/x86/debug_1/tests/system/kernel/port_delete_test
created port 2271
write port result 0x00000000 (No Error)
write port result 0x00000000 (No Error)
delete port result 0x00000000 (No Error)
everything should fail now
write port result 0x80001200 (Bad port ID)
port_buffer_size -2147479040 (0x80001200) (Bad port ID)
read port code 0, size -2147479040 (0x80001200) (Bad port ID)
$


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16645 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 89107618 08-Mar-2006 Marcus Overhagen <marcusoverhagen@gmail.com>

added tests for kernel ports


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16644 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 204131dc 30-Jan-2006 Axel Dörfler <axeld@pinc-software.de>

Added a real yield function to the kernel (using the next_priority approach).
The test application lets run a thread at the highest priority that calls
yield all the time - the system stays responsible when it runs, so it seems
to work fine :)
Changed the malloc implementation to use _kern_thread_yield() instead of
snoozing.
We should think about making this call public, too.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16166 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 77b1fd22 20-Dec-2005 Axel Dörfler <axeld@pinc-software.de>

Renamed the tests/kernel/core directory like the main directory tests/system/kernel
and adapted all Jamfiles.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@15630 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 220d04022750f40f8bac8f01fa551211e28d04f2 31-Jul-2014 Oliver Tappe <zooey@hirschkaefer.de>

Use libstdc++, libsupc++ and libgcc from gcc_syslibs.

* Instead of faking libstdc++.so from libstdc++.a, use libstdc++.so
from the gcc_syslibs build feature for everything except x86_gcc2.
* Use libgcc_s.so from the gcc_syslibs build feature for everything but
x86_gcc2 (which still carries libgcc as part of libroot.so).
* Drop filtering of libgcc objects for libroot, as that is no longer
necessary since we're only using libgcc-as-single-object for libroot
with x86_gcc2, where the filtered object file doesn't exist. Should
the objects that used to be filtered cause any problems as part of
libgcc_s.so, we can always filter them as part of the gcc build.
* Use libsupc++.so from the gcc_syslibs build feature for everything but
x86_gcc2.
* Adjust all Jamfiles accordingly.
* Deactivate building of faked libstdc++.so for non-x86-gcc2. For
x86_gcc2, we still build libstdc++.so from the sources in the Haiku
source tree as part of the Haiku build .
* Put gcc_syslibs package onto the image, when needed.


# 1e0ea42a25b9c2c46e90f17a32bebf625522e05e 24-Jun-2010 Ingo Weinhold <ingo_weinhold@gmx.de>

Beginnings of a test for tracking down the file corruptions that still seem
to occur in current revisions. The working hypothesis is that the corruptions
happen below the file system (i.e. in file/block cache or VM). The intended
setup for the test is a device driver -- a loop device kind of thing -- that
also stores check sums for all blocks and a file system that communicates the
check sums to expect via an independent channel (ioctl) to the driver.
Whenever a block arrives at the driver for writing, the block is checked
against its expected check sum. Initially Axel's idea, BTW.
The device driver is done and working as far as tested (save for
unregistering devices). The file system part is still to be done.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37247 a95241bf-73f2-0310-859d-f6bbb57e9c96


# fba84f08b854b61ac65e44d2269667847fd10bcd 19-Apr-2010 Ingo Weinhold <ingo_weinhold@gmx.de>

Small test program that shows Haiku doesn't deal correctly with resizing
mmap()ed files. Also reproduces #5473.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36359 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 75e7a5adaef4b6619083ec554e1fab8d0d7aeb54 19-Feb-2010 Axel Dörfler <axeld@pinc-software.de>

* Added simple test application to be able to see node monitoring messages
in order to reproduce bug #5405.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35526 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 933764d70e74117ea1e4a3cc19184b40a6aa44d1 30-Dec-2009 Ingo Weinhold <ingo_weinhold@gmx.de>

* Added a framework for unit tests in the kernel. The beast is implemented as
a driver which publishes a device as "/dev/kernel_unit_tests". Commands
can be issued by writing to the device (e.g.
"echo help > /dev/kernel_unit_tests"), output is written to serial port/
syslog.
* Added a few tests for rw_lock.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@34827 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 697255873e2abb586afded6a7da4771b4d33ea76 16-Dec-2009 Axel Dörfler <axeld@pinc-software.de>

* Added test that has multiple readers on a single port, and that drops into the
same panic as #5119.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@34680 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 56376843c1d0e389d9616c074d5da156f3ffdea0 20-Oct-2009 Axel Dörfler <axeld@pinc-software.de>

* Added command line application to use live queries. Useful for testing why
the new mail count is off that much on mail removal.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33677 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 4b6cb4f5ad20f85554f8aab4f5acfb5a979980a2 15-Oct-2009 Axel Dörfler <axeld@pinc-software.de>

* Added test application that easily reproduces bug #4778.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33593 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 16d5c24e533eb14b7b8a99ee9f3ec9ba66335b1e 07-Jul-2009 Oliver Tappe <zooey@hirschkaefer.de>

* merged 32bit-wchar_t branches of buildtools and haiku back into
the respective trunk

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31443 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 3c3d2b85cd919d0b23aa22e2188d2ae85941f83c 18-Apr-2009 Ingo Weinhold <ingo_weinhold@gmx.de>

* Moved the time_stats tool to src/bin/debug.
* Fixed some gcc 4 warnings.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30236 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 91e9d17c3f80a741db5e753c36c4c93922494897 07-Sep-2008 Ingo Weinhold <ingo_weinhold@gmx.de>

Small test program timing our path resolution. Which sucks badly...


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27364 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 49de5a2f6508cf06122311fa041aee992b370b3c 03-Sep-2008 Ingo Weinhold <ingo_weinhold@gmx.de>

* Added "-s" option, which uses the new scheduling analysis feature to
gather additional information on the threads that were running and
what they were doing.
* Added "-o <output>" option for specifying a file to which to print the
statistics to.
* Some beautifications (usage, help, etc.).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27306 a95241bf-73f2-0310-859d-f6bbb57e9c96


# e969748a3db14b3b2bd7cd177b6506ef7091b5ac 30-Aug-2008 Ingo Weinhold <ingo_weinhold@gmx.de>

Added test program "time_stats" which is a "time" on steroids. It prints
not only the times for the child process, but also for all other
threads. Gives some more insight into what was going on in the system.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27249 a95241bf-73f2-0310-859d-f6bbb57e9c96


# d80bf853c60a701ca033838175a73588f7b03606 21-Aug-2008 Ingo Weinhold <ingo_weinhold@gmx.de>

Added swap support test program. It's currently running into deadlocks.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27110 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 063a092f93f0609ef1d026f59da6afbc3723e101 04-Jul-2008 Ingo Weinhold <ingo_weinhold@gmx.de>

Test to quickly reproduce bug #2471.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26247 a95241bf-73f2-0310-859d-f6bbb57e9c96


# e72e5275ff57490c6458823b1dec896b1d9b2cb9 01-Jun-2008 Ingo Weinhold <ingo_weinhold@gmx.de>

Added test that runs another program and analyzes the contention of the
thread and team spinlocks during that time.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25753 a95241bf-73f2-0310-859d-f6bbb57e9c96


# ccce5afa3c2e9c0dd1d39c2735851af1fc00dded 20-Apr-2008 Ingo Weinhold <ingo_weinhold@gmx.de>

Added simple test that demonstrates that unblocking threads waiting on a
semaphore after an interrupted one is broken.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25087 a95241bf-73f2-0310-859d-f6bbb57e9c96


# b4c82732fbd3022e7bcbd374741c18ccd91fc204 19-Feb-2008 Axel Dörfler <axeld@pinc-software.de>

Added test program for our advisory locking implementation - looks like
it has several issues, and a F_UNLCK semantic different from other OSs,
causing bug #1791.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24017 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 8b3b2b4ff18e5240ef8efa91ee69f7cefbaf5884 17-Feb-2008 Ingo Weinhold <ingo_weinhold@gmx.de>

Test program for syscall restarts. Only a few syscalls are tested yet.
Nested syscall restarts (interrupted syscall in a signal handler)
aren't tested yet.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23985 a95241bf-73f2-0310-859d-f6bbb57e9c96


# dc5e01180645b73ac62cbd06b6935e864a509ecf 03-Dec-2007 Ingo Weinhold <ingo_weinhold@gmx.de>

Make the syscall_time test compile under BeOS, too.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23051 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 9121620d4151ee3f94c48c235b72393beb74c20c 30-Oct-2007 Axel Dörfler <axeld@pinc-software.de>

Added sigsuspend_test, courtesy of Vasilis Kaoutsis - thanks!
It currently fails on Haiku.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22777 a95241bf-73f2-0310-859d-f6bbb57e9c96


# dd980a197cfe1c74f138588317a3b30c3b571bb6 12-Oct-2007 Axel Dörfler <axeld@pinc-software.de>

Started working on a test application for the scheduler; it uses the scheduler
of the kernel directly, and emulates the kernel's API where necessary.
Not complete at all yet, but I already found one serious bug in our current
scheduler with it :-)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22513 a95241bf-73f2-0310-859d-f6bbb57e9c96


# b16fdbd6615adeb73a3eee96b9add85513619f74 02-Oct-2007 Ingo Weinhold <ingo_weinhold@gmx.de>

Little test program for wait_for_objects_etc().


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22417 a95241bf-73f2-0310-859d-f6bbb57e9c96


# f5ede4ec02f813e6e989b055c76caf9fe03242f0 30-Sep-2007 Ingo Weinhold <ingo_weinhold@gmx.de>

Added two small select() test programs. select_check select()s
stdin/out/err according the what was specified via arguments.
select_close_test select()s a file descriptor that is closed a little
later by another thread.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22390 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 68f2081497d733dc3dc292bb69c01d39b9db56d1 30-Aug-2007 Ingo Weinhold <ingo_weinhold@gmx.de>

Little test for set_area_protection()'s B_READ_AREA -> B_WRITE_AREA behavior.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22123 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 68da24992b8aec1ffa9e4fd3f82c7343190b4efe 24-Aug-2007 Ingo Weinhold <ingo_weinhold@gmx.de>

Small test tool printing process/process group and singal info.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22052 a95241bf-73f2-0310-859d-f6bbb57e9c96


# cd9575604790e140c6fe24df9637ef3184744a08 24-Apr-2007 Hugo Santos <hugosantos@nowhere.fake>

added test_slab to tests/system/kernel/Jamfile.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20793 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 34ce58669229176770ea902db64ca025026fcd67 21-Mar-2007 Ingo Weinhold <ingo_weinhold@gmx.de>

"Clean room" test for a "copy on write" problem leading to bugs #113
and #928. Under certain conditions a fork()ed child process can
write to the parent process' memory.
A fix follows...


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20401 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 56a16fd0f9dbdee3f62f30136b41ec06f950ed36 29-Jan-2007 Axel Dörfler <axeld@pinc-software.de>

Added some more tests for wait() and waitpid(). Looks like my implementation is
broken (see bug #996), but less broken than Be's.
Also the Linux implementation is not perfect, as test 4 reveals: it waits for a
child with a certain process group, even if there is no child around anymore (because
the last child changed its process group. However, it will still return (and report
the correct error code) once this child exits.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20009 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 5839b2df715369d4bc92175eb81cfcb4a3413dec 27-Jan-2007 Jérôme Duval <korli@users.berlios.de>

the test case for ticket #995
wait() should return with an error when the process has no children


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19983 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 23bd6929dc88fe9def4d211d244812317ed2a2c8 11-Jan-2007 Axel Dörfler <axeld@pinc-software.de>

Added the last of the companion fibo test apps (based on fork/exec - this is just
another test that doesn't work on BeOS, dunno why, but who cares...).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19767 a95241bf-73f2-0310-859d-f6bbb57e9c96


# f9e49fed7165de13e7fc375aa47c4ad07104e992 10-Jan-2007 Axel Dörfler <axeld@pinc-software.de>

* Fixed fibo_load_image: it actually did not produce the fibonacci numbers.
* Implemented a fibo_fork which uses fork() instead.
* Both tests can pretty easily let the kernel crash!


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19764 a95241bf-73f2-0310-859d-f6bbb57e9c96


# cbe5f24524ed188e4c0d7aaa4403ab7f22b92c8b 09-Jan-2007 Axel Dörfler <axeld@pinc-software.de>

* Added fibo_load_image test based on Manuel's fibo test from NewOS - doesn't work yet
due to problems with wait_for_thread().
* Minor cleanup to the Jamfile.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19757 a95241bf-73f2-0310-859d-f6bbb57e9c96


# b12912bead367137ee3d458fb18be8b39714fb85 08-Nov-2006 Jérôme Duval <korli@users.berlios.de>

added a 'dm_tree' like test tool, ioctl based.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19235 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 7a9de5d194f5ca338e4b35651b426cc2aec39cec 02-Jun-2006 Axel Dörfler <axeld@pinc-software.de>

Added simple test for the BNode::Lock()/Unlock() feature.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17698 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 7f832a1ddb4210008bf42c53fe7f7428a85f78b2 08-Mar-2006 Marcus Overhagen <marcusoverhagen@gmail.com>

more tests for port functionality


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16648 a95241bf-73f2-0310-859d-f6bbb57e9c96


# da9b743b20f15d5961a5d02f308ec515078e581c 08-Mar-2006 Marcus Overhagen <marcusoverhagen@gmail.com>

modified tests. The results on BeOS R5 do not match the BeBook description.

$ /boot/home/develop/haiku/generated/objects/haiku/x86/debug_1/tests/system/kernel/port_close_test_1
created port 2269
write port result 0x00000000 (No Error)
write port result 0x00000000 (No Error)
close port result 0x00000000 (No Error)
write port result 0x80001200 (Bad port ID)
port_buffer_size -2147479552 (0x80001000) (Bad semaphore ID)
read port code 1234, size 10 (0x0000000a) (Unknown Error (10))
port_buffer_size -2147479552 (0x80001000) (Bad semaphore ID)
read port code 5678, size 20 (0x00000014) (Unknown Error (20))
should block now
port_buffer_size -2147479552 (0x80001000) (Bad semaphore ID)
$ /boot/home/develop/haiku/generated/objects/haiku/x86/debug_1/tests/system/kernel/port_close_test_2
created port 2270
write port result 0x00000000 (No Error)
write port result 0x00000000 (No Error)
close port result 0x00000000 (No Error)
write port result 0x80001200 (Bad port ID)
port_buffer_size -2147479552 (0x80001000) (Bad semaphore ID)
read port code 1234, size 10 (0x0000000a) (Unknown Error (10))
port_buffer_size -2147479552 (0x80001000) (Bad semaphore ID)
read port code 5678, size 20 (0x00000014) (Unknown Error (20))
should block now
read port code 5678, size -2147479040 (0x80001200) (Bad port ID)
$ /boot/home/develop/haiku/generated/objects/haiku/x86/debug_1/tests/system/kernel/port_delete_test
created port 2271
write port result 0x00000000 (No Error)
write port result 0x00000000 (No Error)
delete port result 0x00000000 (No Error)
everything should fail now
write port result 0x80001200 (Bad port ID)
port_buffer_size -2147479040 (0x80001200) (Bad port ID)
read port code 0, size -2147479040 (0x80001200) (Bad port ID)
$


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16645 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 89107618d50f8ee59eb4f4f40e93a14f0357898b 08-Mar-2006 Marcus Overhagen <marcusoverhagen@gmail.com>

added tests for kernel ports


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16644 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 204131dc9755d05c7bb677c1095613d8340ebfb3 30-Jan-2006 Axel Dörfler <axeld@pinc-software.de>

Added a real yield function to the kernel (using the next_priority approach).
The test application lets run a thread at the highest priority that calls
yield all the time - the system stays responsible when it runs, so it seems
to work fine :)
Changed the malloc implementation to use _kern_thread_yield() instead of
snoozing.
We should think about making this call public, too.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16166 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 77b1fd224322628748a663de467af3775a474690 20-Dec-2005 Axel Dörfler <axeld@pinc-software.de>

Renamed the tests/kernel/core directory like the main directory tests/system/kernel
and adapted all Jamfiles.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@15630 a95241bf-73f2-0310-859d-f6bbb57e9c96