Commit Graph

1500 Commits

Author SHA1 Message Date
Ingo Weinhold
cab58350ac Finally added the UserlandFS. This is the BeOS R5 version (might need minor
modifications for BONE/Dan0). As test file systems are included:
* A Reiser FS 3.6 read-only implementation (should be a virtually unmodified
  version released as 1.0.1 on BeBits).
* A not quite finished RAM FS.
* A BeOS-specific networking FS. It works well as far as I've tested it, but
  is utterly insecure at the moment and missing nice GUI preflets. It's also
  amazingly slow which, I hope, is mainly caused by the UserlandFS layer and
  BeOS R5 net server. We'll see as soon as it can be compiled for the Haiku
  kernel.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20171 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-02-19 22:11:25 +00:00
Ingo Weinhold
5b111b26a3 Don't link against libbe.so anymore. This is only necessary for the version
using the input server.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20143 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-02-16 16:45:33 +00:00
Ingo Weinhold
a6392d3c05 Got rid of wait_sem in the console structure. It was pretty useless.
Added stop_console(), a shutdown procedure for consoled (for cases
when it executes a single command only, like the debugger).

Unfortunately the system kind of freezes when the keyboard is attempted
to be closed. Entering KDL still works. It always shows consoled's
keyboard reader thread running somewhere in the endless loop in
keyboard_read() in the keyboard driver. The main thread is ready in
delete_sem() invoked by keyboard_close(), not advancing any further when
continuing the system. Apparently the scheduler needs a good spanking.
:-P

Generally it also doesn't help that the keyboard driver code is
completely cookie ignorant.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20135 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-02-15 22:59:38 +00:00
Stefano Ceccherini
d619599aa3 some more forgotten style changes
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20117 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-02-09 10:29:13 +00:00
Michael Pfeiffer
91b6c45560 Added argument --pictures to print contents of unflattened pictures in
spool file.
Clean up.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20087 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-02-06 20:52:48 +00:00
Michael Pfeiffer
180028f5af Link against libprintutils.a to fix linking errors.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20085 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-02-06 18:21:53 +00:00
Travis Geiselbrecht
5c3d21086c whew, the numbers were looking terrible for sycalls, but it was just the app being off by a factor of 1000.
It's still somewhat slower, but workable. null syscall speed on p3 500:
haiku  6800 nanosecs
beosr5 2200 nanosecs
linux  680  nanosecs


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20071 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-02-04 21:57:56 +00:00
Travis Geiselbrecht
bee597ebfb Rewrote the syscallbench app. It now will figure the overhead of a simple test loop,
then the overhead of a call into libroot, and finally the overhead of a syscall 
(using is_computer_on).
The numbers are totally abysmal right now. :(


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20070 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-02-04 21:12:54 +00:00
Ingo Weinhold
c392233749 Fixed RosterShell build for Haiku.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20056 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-02-03 11:26:48 +00:00
Ingo Weinhold
ef9c618c66 The RosterShell can be compiled for all BeOS compatible platforms.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20018 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-01-30 13:05:30 +00:00
Ingo Weinhold
adc44678a3 Added simple "launch" command to the roster shell.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20017 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-01-30 13:04:26 +00:00
Axel Dörfler
56a16fd0f9 Added some more tests for wait() and waitpid(). Looks like my implementation is
broken (see bug #996), but less broken than Be's.
Also the Linux implementation is not perfect, as test 4 reveals: it waits for a
child with a certain process group, even if there is no child around anymore (because
the last child changed its process group. However, it will still return (and report
the correct error code) once this child exits.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20009 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-01-29 13:40:52 +00:00
Axel Dörfler
af0e9c1cb8 * Added some calls to waitpid() which should result in the same error code.
* Fixed comment, as Haiku now behaves properly at least for most cases :-)
* Style guide update.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20007 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-01-29 12:43:21 +00:00
Jérôme Duval
5839b2df71 the test case for ticket #995
wait() should return with an error when the process has no children


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19983 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-01-27 16:00:19 +00:00
Axel Dörfler
0013964388 Ported r19825 back to the R5 version of BFS.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19826 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-01-16 14:40:15 +00:00
Axel Dörfler
d60fa6c96f Now checks the return value of wait_for_thread() and print out an error message if it fails.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19804 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-01-15 10:11:03 +00:00
Axel Dörfler
23bd6929dc Added the last of the companion fibo test apps (based on fork/exec - this is just
another test that doesn't work on BeOS, dunno why, but who cares...).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19767 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-01-11 17:00:30 +00:00
Axel Dörfler
f9e49fed71 * Fixed fibo_load_image: it actually did not produce the fibonacci numbers.
* Implemented a fibo_fork which uses fork() instead.
* Both tests can pretty easily let the kernel crash!


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19764 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-01-10 10:33:01 +00:00
Axel Dörfler
e90cdf4e48 fibo_load_image now notices if spawn_thread() fails, and puts a warning to stderr.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19763 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-01-10 10:02:46 +00:00
Axel Dörfler
cbe5f24524 * Added fibo_load_image test based on Manuel's fibo test from NewOS - doesn't work yet
due to problems with wait_for_thread().
* Minor cleanup to the Jamfile.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19757 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-01-09 23:53:40 +00:00
Axel Dörfler
22e7921700 Build fix after the latest changes in net_socket.h (moving certain parts into a
private struct).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19659 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-12-31 12:15:04 +00:00
Axel Dörfler
6d23dfa6c0 Build fix for non-Haiku targets.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19658 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-12-31 12:14:25 +00:00
Ryan Leavengood
908b5c2034 Removed the dependency in the registrar on an input_server header file which I
had previously inroduced. It is not needed anymore.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19511 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-12-14 07:07:30 +00:00
Ryan Leavengood
9289e25b25 Changed a few references to OpenBeOS in the unit tester to Haiku. There are
still tons of OpenBeOS references in various source files (especially in
comments), but this was more overt.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19461 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-12-11 21:11:27 +00:00
Axel Dörfler
442c097946 Renamed class TCPConnection to TCPEndpoint.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19418 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-12-04 14:49:58 +00:00
Axel Dörfler
9cbe6ce200 Rewrote how bind() works:
* there are now two hash tables: one for connections, and one for ports
* the first one is used to find the endpoint for incoming connections
* the latter is used to check if the address to bind() to is still available
  (incl. support for SO_REUSEADDR, and SO_REUSEPORT). Specialising an existing
  socket is not allowed, though; wildcard sockets need to be started last.
* the TCPConnection class now has a pointer to the next endpoint with the
  same port number - this list is scanned for the existing bound sockets
  on that port.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19416 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-12-04 13:44:35 +00:00
Axel Dörfler
f7d2a39699 Binding the server shouldn't have worked before - sin_len was set to zero...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19415 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-12-04 13:32:47 +00:00
Axel Dörfler
b9a724e79f panic() now results in a debugger call - it now longer exits the app.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19405 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-12-01 08:31:54 +00:00
Axel Dörfler
1d891ef80b Changed the default server port to be used to 1234.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19402 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-11-30 20:48:16 +00:00
Axel Dörfler
94fb808a48 * socket_spawn_pending() forgot to set the socket's parent field.
* socket_recv[from]() now accept a NULL buffer in case there was nothing to read.
* the tcp_tester's server thread now actually reads the data it receives.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19400 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-11-30 20:43:24 +00:00
Axel Dörfler
2bd388f696 Added two more utility functions to the timer service:
* cancel_timer() cancels a timer, and returns true if the timer was running
* is_timer_active() determines if the timer is currently running or not.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19393 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-11-29 19:09:19 +00:00
Ingo Weinhold
69b1f76d66 FreeBSD build platform support. Original patches courtesy of
Samuel Rodriguez Perez, somewhat hacked by myself.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19392 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-11-29 18:08:00 +00:00
Stephan Aßmus
264fe59ded * introduced IntPoint and IntRect, which are just like BPoint and BRect,
but use integer coordinates. These are now used in ViewLayer for the
  coordinate system (layout, scrolling offset, view bitmap layout)
* modest performance improvements by inlining some very often used
  methods, and by preventing to go down the entire layer tree too often,
  for example InvalidateScreenClipping was always called in the deep
  mode, therefor it is save to assume that the tree does not have to
  be traversed as soon as the clipping is already invalid


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19390 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-11-29 03:20:07 +00:00
Axel Dörfler
03ac1086c1 Made sure that the colors are reset more often; it should now happen much less often
that the terminal's color is changed when the app is quit (or interrupted).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19381 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-11-28 22:00:12 +00:00
Axel Dörfler
a9a07b7215 * Now disables debug output after startup (can be reenabled using the dprintf command)
* added a socket_notify() dummy.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19377 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-11-28 02:12:03 +00:00
Axel Dörfler
817a7408d4 * Added new BufferQueue.cpp sources.
* The MTU returned by the domain was too large; it should already take the
  IP header into account.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19373 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-11-25 16:14:40 +00:00
Axel Dörfler
b38e841106 Added support for simulating simultaneous connect (via the -s option).
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19365 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-11-23 18:40:04 +00:00
Axel Dörfler
bed835af1e The TCP tester now also allows you to reorder random or specific packets.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19364 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-11-22 19:13:07 +00:00
Axel Dörfler
719aa9ff8c Decoupled receiving threads, so that the server as well as the sender get their own
receiving thread. While this steals away a test case for now (dead lock), it will
allow to reorder packets in a better way.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19363 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-11-22 17:39:54 +00:00
Axel Dörfler
cc5496e34a Extended the TCP tester app a bit:
* you can now instruct it to drop specific packets
* you can now also define a round trip time for the packets
* added a "send" command to send arbitrarily sized buffers over TCP.
Not surprising, the current implementation of TCP doesn't do anything with
those (other than crashing as soon as you try to send data).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19362 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-11-22 16:57:22 +00:00
Axel Dörfler
a7470d6bd5 * The kernelland_emu now supports turning off debug output; tcp_tester can toggle
this option now using the "dprintf" command
* Added dump_block() function to kernelland_emu
* Added tcpdump-like output to tcp_tester for each TCP segment, lines from the
  server are red, lines from the client are black.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19334 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-11-20 17:38:21 +00:00
Axel Dörfler
6ff565b0d6 * Moved the private kernel locking functions into kernelland_emu.cpp because the
actual versions cannot work in userland.
* Extended the tcp_tester to be able to connect and quit connections.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19330 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-11-19 23:35:07 +00:00
Stephan Aßmus
c26c0b24e5 * fix build of the haiku_registrar in app_server test environment
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19321 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-11-18 07:18:00 +00:00
Stefano Ceccherini
3f4cc718eb Some more updates from Marc Flerackers. Text drawing should work
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19277 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-11-14 14:15:03 +00:00
Philippe Houdoin
2177785876 Allowed GLInfo to build for BeOS too.
Locking GL context is better, even if it's not mandatory under Be's R5 OpenGL stack.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19259 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-11-12 15:04:52 +00:00
Stefano Ceccherini
c087e0e364 cleaned up a bit the code, shaped it into a SVG2PictureView class. Added
a window to the PictureTest which should show the svg lion, but doesn't 
work yet for some reason


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19243 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-11-09 22:58:09 +00:00
Jérôme Duval
b12912bead added a 'dm_tree' like test tool, ioctl based.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19235 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-11-08 20:16:55 +00:00
Axel Dörfler
e3c14348aa Some more work in progress towards a working test stack environment - if TCP would be
able to connect to itself, this should already work at this point.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19234 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-11-08 19:11:28 +00:00
Axel Dörfler
de6b43cd7c Now prints debug output in blue, so that you can easily differentiate it from other output.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19233 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-11-08 19:07:38 +00:00
Axel Dörfler
0b3ee1ecc8 Added an empty (and incomplete) shell for a TCP test application. When ready, it provides
a set of commands that can be thrown at a listening and a client end of a TCP connection.
This will allow for an easier and faster implementation of the TCP module, as well as
regression tests, etc.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19232 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-11-08 15:43:20 +00:00