* vm_copy_on_write_area() now does no longer overwrite the ref_count, but keeps
it's reference to the cache until it has unlocked it.
* It now also locks its reference from the start, preventing any other thread
to interfere.
* vm_cache_remove_consumer() now detects if it has to remove a foreign busy
page itself in order to preserve a mapped page.
* vm_soft_fault() now keeps a reference to the cache that owns the page to be
mapped until it has actually mapped it.
* vm_unmap_pages() removed the mappings of all pages of the area instead of only
those that are within the requested range.
* Kept (disabled) debug output for convenience.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21482 a95241bf-73f2-0310-859d-f6bbb57e9c96
block everytime it's called - that caused negative reference counts in the block
cache, causing all sorts of problems once they were flushed.
* Changed order of includes in system_dependencies.h to what I prefer: descending from
private to public (resp. from most specific to most generic) headers.
* Minor cleanup.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21480 a95241bf-73f2-0310-859d-f6bbb57e9c96
Gerald.
* Added Gerald Zajac and Jan Kloetzke to the list of contributors.
* Added the s3savage driver and accelerant to the image.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21478 a95241bf-73f2-0310-859d-f6bbb57e9c96
This should be retested on R5 to make sure it'll still work there.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21413 a95241bf-73f2-0310-859d-f6bbb57e9c96
the route table to determine if an address is local or not (BONE incorrectly allows
you to bind against non-existing and non-local interfaces).
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21412 a95241bf-73f2-0310-859d-f6bbb57e9c96
* $PATH is now set differently when booted in safe mode (just like LIBRARY_PATH,
and ADDON_PATH already were).
* This closes ticket #1103.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21406 a95241bf-73f2-0310-859d-f6bbb57e9c96
correctly for out of bounds values.
* BView::ScrollBy() now limits itself to what eventually attached scroll bars allow;
this fixes the problem Stefano was observing after having applied his patch.
* Reenabled the limit check in BScrollBar::SetProportion(); after the above fix, I
could not see any misbehaviour of Tracker anymore; IOW Tracker did not rely on
this before, it was just hiding another bug :)
* Minor cleanup in ScrollBar.cpp
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21336 a95241bf-73f2-0310-859d-f6bbb57e9c96
also works for partial matches (which for example broke "running" and "ready"
when you only entered a part of it).
* Renamed the global args pointer to sArguments.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21324 a95241bf-73f2-0310-859d-f6bbb57e9c96
correctly.
* Got rid of this superfluous cookie stuff - either the VFS behaves correctly, or
we're screwed anyway.
* Made adding debugger commands optional depending on if DEBUG_COMMANDS is defined
or not.
* Minor other cleanup.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21322 a95241bf-73f2-0310-859d-f6bbb57e9c96
doesn't work on i965 yet.
* B_GET_DISPLAY_MODE now returns the mode actually configured in the chip instead
of the last mode set; while this isn't really necessary, it allows to check what
mode was used during startup.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21321 a95241bf-73f2-0310-859d-f6bbb57e9c96
used during early boot. Thanks!
* Fixed open_module_list() so that it can deal with a NULL prefix.
* Added a note that get_next_loaded_module_name() is implemented incorrectly.
* Minor cleanup.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21315 a95241bf-73f2-0310-859d-f6bbb57e9c96
it's own (static) method. In case setting the display mode fails, the returned mode
is now checked for validity as well.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21282 a95241bf-73f2-0310-859d-f6bbb57e9c96
in the vnode hash; that's a bug in the FS that shouldn't be ignored that way.
* Minor cleanup.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21262 a95241bf-73f2-0310-859d-f6bbb57e9c96
see bug #1248.
* Closing a pipe now also removes it from the public namespace and marks it for
deletion, and thus, there are no more left-overs after using a pipe.
* Minor cleanup.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21261 a95241bf-73f2-0310-859d-f6bbb57e9c96
here when trying to build Haiku.
* Also probably fixed a memory hole, at least how BFS is using delete_driver_settings();
it might be a general problem of the implementation with regards to parse_driver_settings_string(),
though.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21240 a95241bf-73f2-0310-859d-f6bbb57e9c96
the terminating null byte as well. This fixes bug #1239.
* Using strlcpy() makes clearing the path buffer superfluous.
* Some more cleanup.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21239 a95241bf-73f2-0310-859d-f6bbb57e9c96
* Removed error code from error messages.
* Simplified the X-Mailer string and version information (we could eventually add
the SVN revision there, though).
* Minor cleanup.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21225 a95241bf-73f2-0310-859d-f6bbb57e9c96
- possible panic in the directory retrieval code because of an invalid
transaction ID. This should fix bug #1025.
- could not been mounted read-only as it was always getting writable
blocks from the cache.
- dosfs_access() tested for O_RDONLY instead of W_OK.
* Added TODO comment about always using writable blocks: this is highly
inefficient.
* Some code cleanup to make it a tiny bit more complying to our coding
style.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21213 a95241bf-73f2-0310-859d-f6bbb57e9c96
manually because of some not-yet-fixed deficiencies in the disk device manager.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21205 a95241bf-73f2-0310-859d-f6bbb57e9c96
node has been created - this is now used in bfs_create() to suppress the new entry
notification in case the file already existed.
* Implemented parameter parsing in bfs_initialize() - does not work in the new bfs_shell
though, as it currently misses driver_settings functionality.
* Attribute::Create() and Attribute::Open() will now honour O_TRUNC correctly.
* Note: Inode::WriteAttribute() still follows R5 semantics for small_data attributes
in this regard and must be fixed (I've opened ticket #1242 for this).
* Some cleanup.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21204 a95241bf-73f2-0310-859d-f6bbb57e9c96
read the files the BeOS cdda wrote, but it handles attributes completely different.
* All attributes are now stored per CD.
* There are some special shared attributes between all CDs (or a specific device)
to improve your Tracker experience.
* An existing buffer is now used to fill a read request.
* Lots of other small changes here and there.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21201 a95241bf-73f2-0310-859d-f6bbb57e9c96
This should allow you to actually unmount /pipe if you so desire.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21199 a95241bf-73f2-0310-859d-f6bbb57e9c96
everywhere in the tree.
* Added the ellipsis to "About Haiku" in Deskbar as well.
* Minor cleanup of Deskbar's StatusView.cpp
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21156 a95241bf-73f2-0310-859d-f6bbb57e9c96
* PowerStatus is now using this API when compiled for Haiku.
* Note, I'm not sure why yet, but running PowerStatus in the background
crashes at least my laptop after some time.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21154 a95241bf-73f2-0310-859d-f6bbb57e9c96
* More or less fixed reading - it now works nicely when you copy the file to the
hard drive first, but MediaPlayer cannot handle the files directly from CD for
some reason yet to investigate.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21153 a95241bf-73f2-0310-859d-f6bbb57e9c96
* Implemented disk scanner to automatically identify the volume.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21150 a95241bf-73f2-0310-859d-f6bbb57e9c96
* Implemented CDDB ID computation (that's what BeOS's cdda-fs is using).
* Some other minor changes.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21144 a95241bf-73f2-0310-859d-f6bbb57e9c96
* Implemented most of the directory retrieval functions of the file system; even renaming
titles should work now.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21139 a95241bf-73f2-0310-859d-f6bbb57e9c96
be rendered before... Thanks zuMi!
Now, only the floppy icon doesn't have a home yet.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21138 a95241bf-73f2-0310-859d-f6bbb57e9c96
* I'm not sure, but neither Joysticks nor PowerStatus is rendered within Haiku
(FlatIconImporter::_ParseSections() - error parsing shapes: Out of memory),
therefore, I didn't commit those yet.
* Also, Joysticks already seem to have a vector icon, but that shows the same
error - stippi? :-)
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21130 a95241bf-73f2-0310-859d-f6bbb57e9c96
* doesn't do anything useful yet, but it compiles (and should be mountable).
* CDDA test app "cdda_text" will dump the table of contents as well as eventually
existing CD-Text - if I had known only so few titles in my collection would come
with those, I probably wouldn't have gone through it (if the samples I used are
representable, it's about 1/10th of the CDs I have) :-)
* cdda_text compiles on BeOS, so if you have known CD-Text CDs, please test it
and report eventual problems - the test app already tries to beautify the names
as much as possible. Usage is "cdda_text <path-to-raw-device>".
* The test app will be removed later, so better test now ;)
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21109 a95241bf-73f2-0310-859d-f6bbb57e9c96
are used at the same time.
* Added a TODO item: pipefs entries aren't deleted yet after usage!
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21108 a95241bf-73f2-0310-859d-f6bbb57e9c96
* scsi_cmds.h declared several variables instead of naming enums.
* the CD-ROM standard retrieval was broken (always checked index 0).
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21105 a95241bf-73f2-0310-859d-f6bbb57e9c96
and add wrappers for watch_node() as well, though.
* Implemented more or less all what is needed for the path monitoring to work.
* Added a test application: works fine under Haiku, but somewhat flaky under BeOS,
dunno why yet.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21066 a95241bf-73f2-0310-859d-f6bbb57e9c96
provides a kernel emulation layer.
* Renamed all private BPlusTree methods to have the '_' prefix.
* Removed useless set_sem_owner() from Lock.h - all semaphores created in the kernel
always belong to the system team automatically.
* Some cleanup.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21054 a95241bf-73f2-0310-859d-f6bbb57e9c96
field was always 1, and therefore, the last allocation group could grow too large.
Thanks to Samuel Rodriguez Perez for reporting the error (bfs_shell was crashing on
larger images).
* Minor cleanup in BlockAllocator::_Initialize().
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21053 a95241bf-73f2-0310-859d-f6bbb57e9c96
* The API is just a proposal at this time, please comment.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21020 a95241bf-73f2-0310-859d-f6bbb57e9c96
also renamed their accelerants and settings files accordingly.
* Added Mandelbrot and GLDirectMode as demo applications.
* Moved CortexAddOnHost to /bin.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21010 a95241bf-73f2-0310-859d-f6bbb57e9c96
and a key down event at the same time, the key repeat timer didn't work.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20978 a95241bf-73f2-0310-859d-f6bbb57e9c96
feature of BClipboard::Commit().
* The file based version is now only used when the Terminal is built for BeOS.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20941 a95241bf-73f2-0310-859d-f6bbb57e9c96
* Tried to fix the usual deadlock on quit, but suspending the thread (to
interrupt read()) doesn't have the expected outcome (might be a kernel
bug).
* Removed superfluous MENU_FILE_QUIT and send a B_QUIT_REQUESTED instead.
* Cleanup.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20816 a95241bf-73f2-0310-859d-f6bbb57e9c96
* Note that r20809 also fixes a bug in Inode::GetAttribute() - it could clobber
the attribute parameter and still fail (which could create problems in WriteAttribute()).
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20810 a95241bf-73f2-0310-859d-f6bbb57e9c96
attribute when its size was 0 - this also fixes calling Index::Update()
with invalid values, and therefore bug #1178.
* Style cleanup: honour 80 column limit a bit more, use doxygen style comments.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20809 a95241bf-73f2-0310-859d-f6bbb57e9c96
close all of its file descriptors), code outside of the core kernel would be executed
in the descriptor's close/free hooks.
Since the semaphore timeout code, and send_data()/receive_data() rely on the
thread being available in the thread hash, they wouldn't work anymore.
This fixes bug #1168. Thanks to Marcus for providing such a nice test case :-)
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20808 a95241bf-73f2-0310-859d-f6bbb57e9c96