Commit Graph

19467 Commits

Author SHA1 Message Date
Axel Dörfler 70a11cecbd * pages_io() now handles it gracefully in case the fileVec array is too
small to hold the information for the requested I/O size.
* get_file_map() returned B_BUFFER_OVERFLOW already in case the array
  was exactly as large as needed.
* read_chunk_into_cache() and write_chunk_to_cache() will no longer
  override their local "size" variable.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20509 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-04-02 11:13:03 +00:00
Axel Dörfler 65186fec5a Removed duplicated information (the PARAMETER_* constants were already expressed in form
of the OPTION_* constants).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20508 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-04-02 09:22:22 +00:00
Axel Dörfler 325a6253ce * Put the remaining libicon.a classes into the BPrivate::Icon namespace.
* Minor cleanup (like removing the extra blank line between the copyright and the
  header guard).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20507 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-04-02 09:08:57 +00:00
Hugo Santos a073ba1aa8 DHCP: since we are only installing routes while handling an OFFER, request gateway in DISCOVER. Fixes an issue where the gateway address is not configured.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20506 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-04-01 23:46:24 +00:00
Hugo Santos 5d4d5313c7 DHCP: explicitly request the gateway address and domain name servers to the DHCP server. This fixes an issue some people reported regarding obtaining such information.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20505 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-04-01 22:05:35 +00:00
Hugo Santos cb711badc1 some cleanups by introducing get_node_at_offset
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20504 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-04-01 20:23:16 +00:00
Hugo Santos 409b1fc051 use UserBuffer in list_{device,domain}_interfaces
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20503 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-04-01 17:49:41 +00:00
Hugo Santos 5333836f71 use generic UserBuffer in fill_route_entry
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20502 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-04-01 17:36:41 +00:00
Hugo Santos 298a7da920 UserBuffer: generic userspace supplied buffer and copy management
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20501 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-04-01 17:35:43 +00:00
Ingo Weinhold 962b0b887d Added a wrapper function for the invocation of debugger commands. It
sets a fault handler, so that an invalid memory access while executing
the command (address typos always do the trick :-) won't result in
another KDL session on top of the current one, which wouldn't even be
"cont"able.

All pieces of code setting a fault handler do now save and reset the
previous one, so that e.g. a user_memcpy() in a debugger command doesn't
disturb the mechanism.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20500 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-04-01 17:15:37 +00:00
Ingo Weinhold 9bf1f552d9 Enabled setjmp()/longjmp() support in the kernel.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20499 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-04-01 17:05:26 +00:00
Ingo Weinhold c26c2ab28a Fixed TARGET_PLATFORM r5 build.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20498 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-04-01 13:41:19 +00:00
Axel Dörfler b6d25ffbd2 Missed an improvement Hugo sent me a bit later.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20497 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-04-01 12:24:44 +00:00
Axel Dörfler f18d4e1e45 Traceroute: use new SIOCGETRT to obtain the source address to be used when
communicating with the destination, patch by Hugo Santos.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20496 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-04-01 12:14:20 +00:00
Axel Dörfler 289c0791bb Added 'route get' support to the route command (via SIOCGETRT), patch by Hugo Santos.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20495 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-04-01 12:10:20 +00:00
Axel Dörfler 2d55afcdf7 Support getting route information for a specific destination
using SIOCGETRT. Patch by Hugo Santos.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20494 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-04-01 12:06:16 +00:00
François Revol 694e5de9b0 Fix sending data with prolific devices. Seems they weren't initialised correctly. We now send the same stuff Linux does (without telling why), and it seems to work.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20493 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-04-01 11:51:32 +00:00
Axel Dörfler 0786dcba41 Ported latest traceroute, courtesy of Hugo Santos.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20492 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-04-01 11:51:14 +00:00
Axel Dörfler 9c4477d3bf SIOCGIFCONF will now also report the size of the written buffer in ifconf.ifc_len
to cover the case the list of interfaces changed since SIOCGIFCOUNT was called.
Patch by Hugo Santos.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20491 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-04-01 11:48:07 +00:00
Axel Dörfler 51541d38f5 You also have to recompute the checksum in case the source address was updated,
patch by Hugo Santos.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20490 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-04-01 11:38:37 +00:00
Axel Dörfler df0ca8cae0 Updated the pages_io() test with Ingo's latest changes.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20489 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-04-01 11:31:22 +00:00
Ingo Weinhold fd93718c93 BFS can be built for the userland. And it even seems to work. :-P
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20488 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-04-01 00:19:40 +00:00
Ingo Weinhold b5975dbf4e Disabled stealing an unused page from some cache. Unfortunately this
introduced a locking problem, since vm_page_allocate_page() is invoked
with a locked cache. I guess I have to rethink the design. :-/


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20487 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-04-01 00:16:36 +00:00
Ingo Weinhold c1316c8dd3 Synchronized with recent kernel file cache changes up to r20483.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20486 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-03-31 23:52:05 +00:00
Ingo Weinhold 6e442c70cb Reversed locking order of sImageLoadMutex and sImageMutex in
unload_kernel_add_on(). The former one could lead to deadlocks with
load_kernel_add_on() (e.g. occasionally the boot process would hang).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20485 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-03-31 23:06:09 +00:00
François Revol c798dceb5a Add select() support for Dano & Haiku (someone will need to write tty bus manager).
The supported devices list passed to the usb bus manager is now automagically generated from the other list so it's always correct (it was already out of sync).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20484 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-03-31 22:53:42 +00:00
Ingo Weinhold 57a860987a A few more changes to pages_io():
* Added a few comments.
* Simplified the nested while loops by dropping the special handling for the
  first iovec and restructuring the innermost loop. This also rules out
  the possibility of a zero-length temporary vec. IMHO the readability
  has improved quite a bit (YMMV :-). Hopefully without introducing new
  bugs; please review!
* Corrected computation of totalSize in case less than size has been
  read/written.
* Also set *_numBytes in case all fileVecs have been processed. Only
  relevant in case the request extends beyond the end of file.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20483 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-03-31 22:44:01 +00:00
Ingo Weinhold 08e7fb4054 Fixed build.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20482 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-03-31 20:27:39 +00:00
Stephan Aßmus 84db3be8a9 * put Transformable class into BPrivate::Icon namespace, which
solves the problem that app_server uses the wrong version of
  the class
* TODO: put all the other classes into this namespace as well,
  I'm just eager to close this crucial bug, which Ingo kindly
  tracked down

[darn, this commit stalled before, and I commited the next step
 already from another Terminal...]


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20481 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-03-31 18:24:32 +00:00
Stephan Aßmus d2e5bdb4e8 * re-enabled rendering of vector glyph shapes (when text is rotated,
sheared or put to "false bold"), the actual problem was resolved
  with the last revision


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20480 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-03-31 18:23:11 +00:00
Stephan Aßmus 84cf0edda0 resolved TODO
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20479 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-03-31 18:14:31 +00:00
François Revol 832b831777 Fix BeOS build (the D from -D was left in).
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20478 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-03-31 13:19:26 +00:00
Axel Dörfler 238d7b4ba7 Added small test for the pages_io() function (and the file_map class as well).
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20477 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-03-31 09:55:32 +00:00
Axel Dörfler 061816eefa * Fixed two bugs found by Ingo: the tempVec array bounds weren't checked when
filling them which could have written over the stack, and their iovec length
  was set for the wrong iovec, potentially clobbering any memory.
* The first tempVec was usually empty, anyway, as the wrong iovec was chosen
  to start from (usually one too early).
* The tempVec loop is now repeated until the whole fileVec is completed.
* Minor cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20476 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-03-31 09:54:56 +00:00
Stephan Aßmus dab183a745 * created vector icons
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20475 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-03-30 22:11:00 +00:00
Ingo Weinhold 27d37d4d24 * Optional debug feature for tracking which page queue a page should be
in.
* New debugger command "find_page", which searches all page queues to
  find out, which one a page is actually in.
* Solved nasty race condition between the page scrubber and
  vm_page_allocate_page_run(): The page scrubber didn't mark the pages
  it was processing busy, so that vm_page_allocate_page_run() could claim
  them in the meantime. They would end up in the clear pages queue,
  although being assigned to a cache at the same time. This should
  finally solve bug #1056.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20474 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-03-30 19:48:51 +00:00
Axel Dörfler 9c62a6ed7d Rewritten Debug.h by Vasilis Kaoutsis.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20473 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-03-30 14:43:25 +00:00
Niels Sascha Reedijk e24e2c66c9 Push some doc changes I have on my harddrive. They don't (all) conform to the guidelines, but I wanted to put these in the repository nonetheless.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20472 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-03-30 13:50:00 +00:00
Axel Dörfler 0bfaee2899 parse_line() is now smart enough to detect quoted strings and escaped characters.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20471 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-03-30 13:44:46 +00:00
Axel Dörfler 3a1532ef98 In case the source cache of the current vm_cache_ref was in the process of
being merged in vm_cache_remove_consumer(), fault_find_page() tried again
with the current vm_cache_ref, but didn't realize it might have had inserted
a busy page in this cache already.
This fixes a deadlock, as this page would never get unbusy again.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20470 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-03-30 12:14:43 +00:00
Axel Dörfler 94d37a4b51 * map_backing_store() did not set the private mapping's cache to CACHE_TYPE_RAM.
* Some more debug helpers.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20469 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-03-30 09:45:50 +00:00
Axel Dörfler 673a63dc41 Added more checks regarding page movement for debugging purposes.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20468 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-03-30 09:01:58 +00:00
Axel Dörfler 6da6433598 * common_select() now also clears the sets for B_WOULD_BLOCK and any other error
that returns 0. Patch by Hugo Santos.
* Removed superfluous memset() of select_sync structures.
* Some cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20467 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-03-29 16:09:53 +00:00
Stephan Aßmus 340e1a9702 added broken symlink icon (almost 1:1 copy from zuMi's version,
only slight clean-up and used the colors from my app icon)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20466 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-03-29 10:22:28 +00:00
Stephan Aßmus e6d3d87248 created "volume" icon (started off of zuMi's version)
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20465 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-03-29 07:48:15 +00:00
Philippe Houdoin f0c2e2243f Ooops, should not have been commited in the first place.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20464 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-03-29 02:44:06 +00:00
Philippe Houdoin a8251cf630 Added a GLView direct mode test app, a quick and dirty direct mode version of the BeBook GLView sample app.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20463 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-03-29 02:23:28 +00:00
Ingo Weinhold e04bcee997 Made sources UserlandFS friendly. Can't be used with the fs_shell ATM,
anyway.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20462 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-03-28 23:04:31 +00:00
Ingo Weinhold 563a8c4749 * file_cache_ref::lock was not initialized and destroyed.
* Fixed locking problems.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20461 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-03-28 23:02:10 +00:00
Ingo Weinhold f5a324b063 * Fixed iteration in block_cache::RemoveUnusedBlocks() as in r20459 for
the kernel implementation.
* block_cache::allocated_block_count was not initialized.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20460 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-03-28 22:58:02 +00:00