RecursiveLock in the kernel.
* Several adjustments according to UserlandFS header changes.
* Re-added reiserfs to image.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29410 a95241bf-73f2-0310-859d-f6bbb57e9c96
new thread and the main thread in this order. Allows to reproduce #2956
quite often.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29301 a95241bf-73f2-0310-859d-f6bbb57e9c96
* Refactored hard-coded group insets.
* Geve second tab BView the standard gray background.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29213 a95241bf-73f2-0310-859d-f6bbb57e9c96
assumption, that the program image is ignored when relocating symbols of
dlopen()ed objects, is incorrect.
* Adjusted the tests that were failing due to that.
* The RTLD_NEXT test also fails with openSuse 10.3 -- apparently the semantics
has changed between the Linux versions.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29111 a95241bf-73f2-0310-859d-f6bbb57e9c96
layout version of that class. (drawing artefacts, wrong scrollbar placement)
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29098 a95241bf-73f2-0310-859d-f6bbb57e9c96
it to the test app. This finally fixes ticket #2594.
* Of course, I neither saw this one before, nor did I accidently reproduce it
with a test :-)
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28967 a95241bf-73f2-0310-859d-f6bbb57e9c96
previous release of BufferQueue. IOW #2594 should be fixed now.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28943 a95241bf-73f2-0310-859d-f6bbb57e9c96
or moving mode when it was shown again. Added a test app HideAndShow which let
you easily reproduce the faulty behaviour (with a previous version of the
app_server, that is).
* Minor cleanup.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28847 a95241bf-73f2-0310-859d-f6bbb57e9c96
to succeed on Linux. FreeBSD fails some tests since it seems to have a
different load order (depth-first instead of breadth-first). Haiku fails
a lot of tests due to its POSIX non-compliant dlopen().
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28556 a95241bf-73f2-0310-859d-f6bbb57e9c96
discarded blocks correctly as well.
* cache_detach_sub_transaction() left cached_block::original_data unchanged even
if the parent data was to become current (in case the sub transaction didn't
change the block yet). This could cause outdated blocks to be written back.
* cache_detach_sub_transaction() also set cached_block::previous_transaction
for all blocks, not just the ones with a previous transaction. This could
cause blocks to be written twice for no reason.
* cache_start_sub_transaction() did not change the num_blocks count for
discarded blocks.
* block_cache_discard() now panics if the block was already changed in the
current transaction.
* Improved test application, added more tests, revealing the above bugs in
cache_detach_sub_transaction().
* Minor cleanup.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28514 a95241bf-73f2-0310-859d-f6bbb57e9c96
cache_end_transaction(), and cache_start_sub_transaction()).
* Further work on the test application, it's now actually usable, first test
passes.
* dump_block() did erroneously print 'B' for the dirty flag; now both dirty and
discard have the 'D' (3rd and 5th column).
* block_cache::LowMemoryHandler() is now private (and got an underscore prefix).
* Minor cleanup, shuffled some methods around.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28508 a95241bf-73f2-0310-859d-f6bbb57e9c96
discarding their changes. This functionality currently only works correctly
when no transactions are used.
* Started test application for the block cache, doesn't do anything yet.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28496 a95241bf-73f2-0310-859d-f6bbb57e9c96
random SHA hashes.
* Moved AdaptiveBuffering into its own file.
* Fixed updating a hash file.
* Implemented the "consistency_check" app that checks if a file has changed,
and prints warnings if there are any.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28419 a95241bf-73f2-0310-859d-f6bbb57e9c96
* Unfortunately, there still seems to be a problem in the hash generation...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28412 a95241bf-73f2-0310-859d-f6bbb57e9c96
* Started a file consistency checker; right now, it will just compute a SHA256
hash value for every file, and dump it to stdout.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28406 a95241bf-73f2-0310-859d-f6bbb57e9c96
* Also renamed it to random_read, but SVN needs two revisions for that...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28400 a95241bf-73f2-0310-859d-f6bbb57e9c96
fixes in my tree to make it compile on R5 still. I don't really want to
check this in, I'd rather adopt the buildsystem to make it run on Haiku
itself...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28298 a95241bf-73f2-0310-859d-f6bbb57e9c96
* Made the StressTest app into a real stress test for the app_server, as the
windows are now randomly changed, ie. moved, resized, hidden, activated, ...
* This already helped identifying two long-hiding bugs in the app_server code!
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28216 a95241bf-73f2-0310-859d-f6bbb57e9c96
something (as reported by Marcus and Bruno on the mailing list).
* AllocationGroup::Allocate() would always invalidate the largest block if
it did not cover the largest part of the group; now it only invalidates it
if it has been cut before.
* Added small test app for the invalidation part.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28162 a95241bf-73f2-0310-859d-f6bbb57e9c96
shows a bug in the app_server event dispatching which is going to be fixed
next.)
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28058 a95241bf-73f2-0310-859d-f6bbb57e9c96
of stealing (not anymore) mouse messages that are important for maintaining
the correct transit.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28003 a95241bf-73f2-0310-859d-f6bbb57e9c96
address can now be specified), in order to be able to do
global broadcasts as well as network (IP-level) broadcasts
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27980 a95241bf-73f2-0310-859d-f6bbb57e9c96
* Extended the BMenuField test to see what happens when the super item label
changes (works fine now).
* Updated TODO.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27586 a95241bf-73f2-0310-859d-f6bbb57e9c96
this test fails under BeOS, while it works just fine under Haiku.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27449 a95241bf-73f2-0310-859d-f6bbb57e9c96
* Parse the command line options posixly correct. Running command lines
that contained options was broken before.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27358 a95241bf-73f2-0310-859d-f6bbb57e9c96
* Scheduling analysis output:
- Sort the threads by total run time.
- Group the locking primitives a thread has waited on by common type
and name. E.g. all "I/O request finished" condition variables are
put in a single group. The sum wait time and wait count is printed
for the group, so it is easy to see how often and how long the
thread had waited for I/O.
- Both the groups and their elements are sorted by wait time.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27313 a95241bf-73f2-0310-859d-f6bbb57e9c96
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
fine, at least in the context of the layout management. I am investigating
a bug though that shows at least in WonderBrush (missing Filter menu).
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27284 a95241bf-73f2-0310-859d-f6bbb57e9c96
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
operation length.
* IORequest: Added owner (IORequestOwner). Also added a SetUnfinished()
method, which is invoked by the I/O scheduler after all operations of
the request have been finished, but the request isn't done yet.
* Added debugger commands "io_request_owner" and "io_scheduler" printing
information for a IORequestOwner and IOScheduler object respectively.
* Implemented an actual I/O scheduling algorithm. It's a simple round
robin strategy (a queue per thread) with a unidirectional elevator
serializing the operations. ATM priorities are ignored, the bandwidth
isn't adjusted to the device, and there are TODOs all over the place.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27216 a95241bf-73f2-0310-859d-f6bbb57e9c96
dynamically assign one when needed. Under the assumption that in most
cases a bounce buffer isn't needed, we can thus prepare a lot more
operations.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27185 a95241bf-73f2-0310-859d-f6bbb57e9c96
BTW: I've added bonnie++ as it is. That is, I just realized that some
unnecessary directory/files (like debian) could have been removed.
They shouldn't harm ;-)
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26920 a95241bf-73f2-0310-859d-f6bbb57e9c96
I'm adding it to the same directory of where bonnie was, but I think
src/test/apps would be a better place.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26919 a95241bf-73f2-0310-859d-f6bbb57e9c96
non-contiguous areas.
* Added a test that allowed to reproduce #2595.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26917 a95241bf-73f2-0310-859d-f6bbb57e9c96
* Moving common functions and macros used in realtime_sem_test1
to a shared header as they are probably going to be used for other test unit
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26854 a95241bf-73f2-0310-859d-f6bbb57e9c96