Commit Graph

28825 Commits

Author SHA1 Message Date
Rene Gollent
38f4625170 Rework this again due to flaws in the previous optimization - due to its use for things like sorting the visible pose list, it would rely on whatever pose column was being used for sorting, and as such would generate false positives when the view was being ordered by certain attributes. We now use an std::hash_set to track all the nodes that have been added to the current view and use that for a duplicate check instead. Also slightly boost the max number of models per chunk that we read.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29414 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-03-06 13:42:33 +00:00
Stephan Aßmus
7d1d70339a Limit the number for ioctl()s per second to about 125 for mouse transfers. This
fixes the high CPU usage when using USB mice. I experimented with transfers
scheduled at fixed intervals, and with using a fixed pause between transfers.
The fixed pauses, though much less sophisticated, give the smoothest drawing
in WonderBrush. ;-)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29413 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-03-06 11:11:58 +00:00
Rene Gollent
58336b68a9 Add a TODO note.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29412 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-03-06 05:49:56 +00:00
Rene Gollent
75d1cb286f The loop that looks for the next area to add a message to has a somewhat fatal flaw: it checks for a non-zero area size (which is always set to the physical size of the area rather than the number of message commands stored within it). As a consequence, areas would never get cleaned up once allocated, which lead the kernel to steadily bleed memory if any reasonable level of node monitoring activity was going on. We now check whether or not the area's command count is non-zero instead, and use that as the criteria for selection. Fixes ticket #3518.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29411 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-03-06 05:45:32 +00:00
Ingo Weinhold
aa085ffef9 * Removed UserlandFS shared Locker class. Instead use BLocker in userland and
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
2009-03-05 23:27:35 +00:00
Ingo Weinhold
2b0eb640d4 Inline class with BLocker interface wrapping a recursive_lock. Could probably
moved to headers/private/kernel/util.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29409 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-03-05 23:23:01 +00:00
Ingo Weinhold
8dcef9a6ad * Made ASSERT definition conditional to avoid clashes.
* Automatic whitespace cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29408 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-03-05 23:17:18 +00:00
Ingo Weinhold
a7edf1f7c0 Moved RECURSIVE_LOCK_HOLDER() macro to the header and fixed it.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29407 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-03-05 23:15:15 +00:00
Ingo Weinhold
c964442c9b Removed temporarily from the image until I've unbroken the build again.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29406 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-03-05 22:44:12 +00:00
Ingo Weinhold
9a8f8b7b13 Enabled -Werror for userlandfs.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29405 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-03-05 22:06:02 +00:00
Ingo Weinhold
c0509ccc29 Removed several shared userlandfs classes that exist as Haiku shared or kernel
util classes as well.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29404 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-03-05 22:02:59 +00:00
Oliver Ruiz Dorantes
5bf53b09c2 - Use static MessageRunners,
- Banlance the process of retrieving the remote names, which is blocks the Window Looper, as get remote name is an expensive operation.
Now it waits half second between each operation which gives a better feeling(without using extra thread, that will come when there is an standard barberpole)



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29403 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-03-05 21:36:17 +00:00
Ingo Weinhold
97b7c9a091 Handle file cache related requests in the kernel. The actual calls to the
file cache are missing yet -- requires some refactoring in Volume.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29402 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-03-05 21:10:43 +00:00
Ingo Weinhold
0dcccb4986 Implemented the client side of the file cache operations.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29401 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-03-05 00:43:06 +00:00
Joachim Seemer
b8dbc0a275 Forgot one instance of 'Firefox'. Also, being Mozilla, I guess we can dispense with our own documentation for it. Unless there are interesting Haiku-only features. We'll see.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29400 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-03-04 21:01:52 +00:00
Jérôme Duval
ca5c5de225 * Apply patch provided by Monni for bug #3514
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29399 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-03-04 21:00:39 +00:00
Joachim Seemer
bff14db1e8 * Added DiskProbe
* Changed cursor keys to their respective arrow symbol
* As mmadia reminded me: since we cannot use Mozilla's Trademarks I renamed
  everythig firefoxy to BeZillaBrowser.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29398 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-03-04 17:29:50 +00:00
Stephan Aßmus
9801209684 For the filter indices and wheight calculation, never calculate more
pixels than can possibly be visible. Clients may pass very large
view rects to layout a zoomed in bitmap. This doesn't only speed things
up, but also avoids a stack overflow in the app_server, as reported in #3166.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29397 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-03-04 13:46:56 +00:00
Stephan Aßmus
6acf774d2d Patch by JiSheng Zhang:
* Combine the many small areas created by the Firewire bus manager
  into one larger one. Needs further testing. Supposed to fix #1519.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29396 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-03-04 12:41:05 +00:00
Rene Gollent
847af0079c Second attempt at PoseView population optimizations: We still search for the pose in our list, but now rely on a binary search to do it instead, rather than the previous linear search. This considerably boosts population speed for large folders here, while still preserving correct behavior.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29395 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-03-04 03:54:29 +00:00
Ingo Weinhold
497681ca81 Added requests for file cache operations. Not used yet.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29394 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-03-04 01:27:32 +00:00
Ingo Weinhold
02f7a2f4cb Implemented vfs_get_file_map() and vfs_lookup_vnode().
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29393 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-03-04 00:53:57 +00:00
Ingo Weinhold
c74777f3d3 Finished node management.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29392 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-03-04 00:44:13 +00:00
Ingo Weinhold
0234794770 Implemented acquire_vnode() forwarding.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29391 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-03-04 00:01:27 +00:00
Ingo Weinhold
fac733d2f6 Removed the remnants of the dispatcher mechanism.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29390 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-03-03 23:42:20 +00:00
Axel Dörfler
608990b488 * Haiku's VM does not need the swap file to be as large as physical memory
at minimum to be able to work with it.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29389 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-03-03 21:48:59 +00:00
Oliver Ruiz Dorantes
bced01f71f - Use SetSelectionMessage to enable/disable the possibility to add to general list
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29388 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-03-03 19:02:26 +00:00
Axel Dörfler
b82ed10b05 * Minor cleanup.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29387 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-03-03 14:13:23 +00:00
Axel Dörfler
26153d0f67 * The net_domain's lock is now a recursive lock.
* Fixed all route locking problems, of which there were numerous
  ({add|remove}_route(), and list_routes() did not lock at all). Added
  lock assertions in functions that don't do the locking themselves.
* A route will now be removed from the list in remove_route(), not in
  put_route_internal(). Before, a route could easily be removed twice, causing
  remove_route() to release references it did not own. This fixes bug #2706.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29386 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-03-03 14:04:57 +00:00
Alexandre Deckner
f11e13ffa2 * Fix build of ShelfTest
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29385 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-03-03 12:36:41 +00:00
Axel Dörfler
b11680b741 * Cleanup.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29384 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-03-03 10:39:55 +00:00
Stephan Aßmus
61252f516c * Fixed the build and ticket #3515 (multi-line string).
* Automatic white space cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29383 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-03-03 08:53:47 +00:00
Oliver Ruiz Dorantes
11d36ea03d - Add bluetooth kernel addons to build
- keep alphabetic order in network protocols



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29382 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-03-02 21:24:37 +00:00
Rudolf Cornelissen
6042b7b665 added 'block_acc' option in nvidia.settings to completely disable the acceleration engine. This lets my G72 run (not crash) for the first time when enabled. Note: Haiku becomes very slow in drawing in 32bit mode when the driver is running this way compared to vesa mode. I am assuming this is because of (too) fine-grained calling of the engine management functions. Never saw this effect AFAIK in BeOS.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29381 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-03-02 19:55:03 +00:00
Jérôme Duval
54ec265881 * fixed gcc4 build
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29380 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-03-02 19:33:13 +00:00
Oliver Ruiz Dorantes
61c28fd543 Add new bluetooth components to the bluetooth optional package
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29379 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-03-02 18:24:24 +00:00
Axel Dörfler
43b2ca9108 * Fixed wrong use of MutexLocker as pointed out by Korli - nice catch! This
could have caused a number of problems.
* Fixed coding style violation Ingo introduced.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29378 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-03-02 08:23:16 +00:00
Ingo Weinhold
2f1f4f54d6 * Renamed UserlandFSServer to userlandfs_server. It is expected to live in
/system/servers, now.
* Got rid of the dispatcher application. It was the entity the kernel module
  talked to when mounting a yet unknown FS. It started the client FS server
  applications. Now the kernel module starts them directly. They use
  respectively named ports, so the kernel module can find them when already
  running.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29377 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-03-02 00:37:14 +00:00
Ingo Weinhold
2f8d0984b4 BeOSKernelVolume didn't initialize the fCapabilities base class member.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29376 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-03-02 00:28:17 +00:00
Ingo Weinhold
5ecc4b3775 * Introduced ref-counting for the I/O contexts.
* The I/O context related vfs_*() functions have io_context* instead of void*
  parameters/return values, now.
* vfs_new_io_context(): Lock the parent I/O context before getting its table
  size. Otherwise the table size could change until we do.
* vfs_resize_fd_table(): Fixed use of MutexLocker. We created only a temporary
  object, not one with function scope.
* Renamed load_image_etc() to load_image_internal() and added a parameter for
  specifying the parent team of the one to create.
* Introduced a kernel private load_image_etc() with a few more arguments than
  load_image().


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29375 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-03-02 00:26:22 +00:00
Michael Lotz
9b9aa75aac * Implement basic support for the BSound parts of BSoundPlayer. Only one sound
at a time is supported and volume as well as start time are not taken into
  account. For reasons I don't feel like investigating right now all the
  BMediaTrack calls in the BTrackReader end up as pure virtual function calls
  though, so it's unusable for now.
* Fix leaking the temporary buffer in BSound.
* Whitespace cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29374 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-03-01 23:22:30 +00:00
Michael Lotz
0b2267c921 When searching for audio tracks, we are interested in a raw decoded format, not
a raw encoded format.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29373 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-03-01 20:57:24 +00:00
Michael Lotz
1b921108a7 Rewrote Sound.h and implemented most of BSound. Completely untested yet as the
BSoundPlayer functionality is yet missing.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29372 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-03-01 20:56:19 +00:00
Rene Gollent
376b90d507 Update Vision to version 090301 - changes include various visual tweaks by Stephan Assmus to integrate better with Haiku's updated look. Thanks!
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29371 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-03-01 17:18:45 +00:00
Stephan Aßmus
a27e95e37b Properly integrate the Bluetooth preflet with the build system.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29370 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-03-01 17:09:47 +00:00
Oliver Ruiz Dorantes
d254a0eb2c - Fix gcc4 build(Monni)
- Remove Items added to Remote List from inquiry list, this fixes elements being shared among more than 1 list. Both lists behave better now.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29369 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-03-01 16:01:41 +00:00
Ingo Weinhold
126db05193 Missing return. BeOS style add-ons seem to work again (tested with ramfs).
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29368 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-03-01 15:29:02 +00:00
Ingo Weinhold
9accd619b8 * FileSystem does now have a list of all volumes. This allows to get a volume
by ID.
* Added a three parameters version of UserlandFS::KernelEmu::publish_vnode(),
  which is used by the BeOS new_vnode() emulation. It calls the new
  Volume::GetVNodeType() to get the type of the node.

Theoretically BeOS FS interface style add-ons should work again, but ATM we
crash the kernel when trying to mount.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29367 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-03-01 14:51:05 +00:00
Oliver Ruiz Dorantes
f988be6fbc - Add the retrieval of remote names to the discovered devices
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29366 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-03-01 14:48:11 +00:00
Ingo Weinhold
5b2561a538 A NULL pointer was dereferenced when mounting failed.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29365 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-03-01 14:44:56 +00:00