only a read lock on the inode, or without a lock at all (in case of prefetching) - it
is now using the cache_ref's lock to make sure it's retrieved only once and doesn't
waste/corrupts any memory.
- since that fix made it mandatory to fix write_chunk_into_cache() to not call pages_io()
while holding the cache_ref's lock (was a to-do item before), I changed it to make
that possible.
- It now also supports write-through caches in theory - as there is no way yet to tell
a cache to work this way.
- Optimized for the not so uncommon case of writing the last part of a file that is not
a multiple of the page size - it won't call pages_io() anymore then, but zero the rest
of the page directly.
- vm_page_write_modified() is now calling write_page() without holding the cache_ref's
lock as well.
The updated write_chunk_to_cache() is not so well tested, though, but appears to work
so far.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14006 a95241bf-73f2-0310-859d-f6bbb57e9c96
available.
Broken escape sequences are now properly ignored (read one character too much before).
Since the current line buffer is part of the history, we now delete that buffer when
crossing the current line again while traversing the history (restoring the former
buffer would be the nicest way, but that would require another empty buffer and more
copying).
Cleanup.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14005 a95241bf-73f2-0310-859d-f6bbb57e9c96
movement - IOW, the history of kernel debugger calls is now working also from
the on-screen KDL.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14000 a95241bf-73f2-0310-859d-f6bbb57e9c96
in an error message without checking for a NULL pointer (which happens during
early boot, and even though it would be impossible to get there at that time,
it shouldn't be accidently copied to anywhere else this way).
Added a compile time option to monitor the last thread that successfully
acquired a semaphore (disabled, though, only enable it when needed).
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13998 a95241bf-73f2-0310-859d-f6bbb57e9c96
and will only list those threads waiting for that one if used that way.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13996 a95241bf-73f2-0310-859d-f6bbb57e9c96
then shows the stack crawl of that stack instead of the current one).
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13984 a95241bf-73f2-0310-859d-f6bbb57e9c96
it avoids crashing but console apps using a BApplication still show an alert
we might want to keep only a stderr warning
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13979 a95241bf-73f2-0310-859d-f6bbb57e9c96
only under certain conditions.
Now also accepts decimal numbers as IDs.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13973 a95241bf-73f2-0310-859d-f6bbb57e9c96
Simplified parsing the ID (no need to differentiate between hex and decimal, if
we do both anyway).
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13972 a95241bf-73f2-0310-859d-f6bbb57e9c96
draw it.
This fixes the crashing bug when being compiled from Zeta (because of the
different message storage format) - debugged under Haiku thanks to Ingo's
great work :-)
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13969 a95241bf-73f2-0310-859d-f6bbb57e9c96
debugging printf. At least I assume it's for debugging...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13962 a95241bf-73f2-0310-859d-f6bbb57e9c96