Commit Graph

2274 Commits

Author SHA1 Message Date
Ingo Weinhold
c8d7534e5d * Made C++ save.
* Made the parameter for restoring the FPU state const.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11522 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-01 23:52:09 +00:00
Ingo Weinhold
ae7c619aae * Added architecture specific structure to thread_debug_info.
* Added event callbacks for break- and watchpoints and single stepping.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11520 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-01 23:47:59 +00:00
François Revol
b1bfc5c69f if you want to return something at least be consistent with the version of usleep which returns an int... (return -1 and set errno)
see http://www.die.net/doc/linux/man/man3/usleep.3.html


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11510 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-28 11:41:39 +00:00
Ingo Weinhold
feeee8dff5 Added function for setting the CPU state (not implemented yet) and
functions for setting break-/watchpoints (implemented).
Break-/watchpoints don't work yet, though. Missing is still the setting
of the debug control register DR7 somewhere in the interrupt code and
the handling of debug exceptions.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11509 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-28 00:48:31 +00:00
Ingo Weinhold
336b15cf0f Added musings about where to deal with debug registers.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11506 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-28 00:42:01 +00:00
Ingo Weinhold
d906f5fc4b * Atomic access to team debug flags.
* thread_exit_args::teamID -> original_team_id.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11505 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-28 00:39:51 +00:00
Ingo Weinhold
9707863cc9 * Changes due to new team debug info locking strategy.
* In team_delete_team() we no longer explicitly destroy the team debug
  info. It is not necessary, since the terminating debug nub thread will
  do that anyway. Moreover we access the debugger port in a safer manner
  now.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11504 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-28 00:37:16 +00:00
Ingo Weinhold
a7ad39fe09 * New locking strategy for the team debug info. It's no longer protected
by the team lock, but by a lock in the structure. This is necessary
  since we can't acquire the team lock while thread switching, for then the
  thread lock is already held.
* Added support for single stepping and break-/watchpoints.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11503 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-28 00:34:06 +00:00
Ingo Weinhold
bd3b16ee7b Fixed warning.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11501 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-28 00:21:59 +00:00
Axel Dörfler
a2634a4246 Actually, ports do support both, B_RELATIVE_TIMEOUT and B_ABSOLUTE_TIMEOUT -
thanks to Ingo for the hint.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11500 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-27 16:18:07 +00:00
Ingo Weinhold
6d3794c0a1 * Correctly set debug_origin::nub_port in all concerned functions.
* Now a debugged thread and the debug nub thread are not longer blocking
  on ports when they receive a SIGKILL[THR] (we couldn't kill a debugged
  team before).
* Small fixes. More correct cleanup when the debug nub thread terminates.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11491 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-25 14:30:16 +00:00
Ingo Weinhold
3b28d367cb Implemented get_why_stopped_string().
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11490 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-25 14:25:10 +00:00
Ingo Weinhold
f75dc555fd * handle_signals(): If a SIGKILL[THR] is pending, ignore other signal.
* Added is_kill_signal_pending(). Can anyone tell me why the compiler
  complains about a missing previous prototype for it? <ksignal.h> is
  included, and when only preprocessing the file, the prototype is clearly
  there. I'm clueless.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11488 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-25 14:20:47 +00:00
Ingo Weinhold
8c37e2348e Added support for new flag B_KILL_CAN_INTERRUPT. (Do ports really not support absolute timeouts?)
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11486 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-25 14:13:00 +00:00
Ingo Weinhold
013d79a1b9 Added support for new flag B_KILL_CAN_INTERRUPT.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11485 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-25 14:11:52 +00:00
Ingo Weinhold
433e1959ae Introduced a debug_origin structure consisting of thread and team ID of the concerned thread, and being first member of all messages sent to the debugger. This simplifies handling of messages in the debugger a good deal.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11482 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-24 18:47:04 +00:00
Ingo Weinhold
013765b30a Added ToDo regarding the handling of search paths like PATH.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11481 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-24 16:34:00 +00:00
Ingo Weinhold
71a2d54820 In case of a page fault we now notify the debugger.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11479 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-24 16:30:17 +00:00
Ingo Weinhold
260ba6fdd3 * Dealt with two debugging related ToDos:
- If the thread's B_THREAD_DEBUG_STOP flag is set, it is now always
    stopped before handling the signals. Unless a SIGKILL[THR] signal is
    pending.
  - Also notify the debugger, when a signal is ignored.
* The signal's sigaction structure is additionally passed to the debugger
  now.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11478 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-24 16:28:45 +00:00
Ingo Weinhold
9c448e2414 * Added debugger notifications for thread creation/deletion events.
* Now we deal correctly with thread debug flags (child threads inherit
  the parent ones, save for syscall tracing in which case it needs to
  be specified explicitly).


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11477 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-24 16:14:18 +00:00
Ingo Weinhold
2ee487c82a Added debugger notifications for team creation/deletion events.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11476 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-24 16:11:25 +00:00
Ingo Weinhold
43ad09219b Added debugger notifications when images are registered/unregistered.
In the first case this is probably too early, since the image is not
really loaded at that time by the loader. We should probably introduce
a syscall the loader can invoke for that purpose.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11475 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-24 16:10:24 +00:00
Ingo Weinhold
e988d66022 * Added B_TEAM_DEBUG_DEFAULT_FLAGS and B_THREAD_DEBUG_DEFAULT_FLAGS for
convenience.
* Added/implemented callbacks for almost all missing debug events (team,
  thread, image creation/deletion, exceptions/faults, signals).
* The debugger can now specify how to deal with the event that stopped an
  event (ignore or handle signals, exceptions/faults).
* Implemented B_DEBUGGED_THREAD_GET_WHY_STOPPED debugger message.
* The cpu_state is now passed to the debugger with
  B_DEBUGGER_MESSAGE_THREAD_STOPPED notifications.
* Completed _user_debugger() implementation.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11474 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-24 16:07:19 +00:00
Ingo Weinhold
05916979f9 Export i386_get_current_iframe() so it can be used in arch_user_debugger.cpp.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11472 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-24 15:49:41 +00:00
Ingo Weinhold
08fd6d69aa Beginning of the x86 debugging support.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11470 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-24 15:46:20 +00:00
Jérôme Duval
abd010bc61 Moved mbstate to wchar.h
Restored glibc/wcsmbs/wchar.h


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11451 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-22 18:06:35 +00:00
Jérôme Duval
834f7878aa FindString is better than FindData (thanks axeld)
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11412 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-18 17:27:34 +00:00
Jérôme Duval
997aa9ac18 error handling
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11410 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-18 11:05:33 +00:00
Axel Dörfler
db5fbf2a6b Fixed a possible crashing bug in case of a corrupt inode: the vnode was
removed twice from its mount's list.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11409 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-18 03:57:08 +00:00
Jérôme Duval
76fa831165 fixes sscanf for decimal values, enables keymap to actually load source keymaps
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11407 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-17 16:57:12 +00:00
Axel Dörfler
4b72e95292 getcwd() is actually implemented like elsewhere, and not strictly after
POSIX demands: if you pass in a NULL pointer, a buffer will now be
allocated for you.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11388 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-16 03:51:34 +00:00
Axel Dörfler
86e404324f Fixed the build of the boot floppy and removed all input_server headers
when USE_INPUT_SERVER is not defined.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11387 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-16 03:22:12 +00:00
Axel Dörfler
a1537049b7 Changed the way we're resetting the machine: we're now first trying the
keyboard controller method, and only if that fails we fall back to what
we have before.
At least my SiS laptop now properly reboots, and doesn't just halt
anymore - doesn't seem to have a negative impact on other machines, but
please report any regressions :-)


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11386 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-16 02:12:14 +00:00
Jérôme Duval
82698ec120 added support for arrows (from our Terminal impl)
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11383 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-15 16:58:28 +00:00
Axel Dörfler
133c5b73a2 Obviously, my laptop (SiS 630 based) only reports all VESA modes when there
was one mode change before - took me quite some time to figure this out; now
we just do a mode change to the standard text mode; this is probably a good
idea anyway to make sure we're running in the correct text mode for the boot
menu.
The error check for the VESA BIOS calls were not really correct, even if
they worked. The vbe_mode_info structure is now cleared before the mode
info is requested (as suggested in Ralf Brown's interrupt list).


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11382 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-15 15:35:59 +00:00
Axel Dörfler
f7958e552d Now only echoes the input if ECHO is defined.
Ignores a "--login" argument (that's what consoled does).


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11381 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-15 01:18:58 +00:00
Axel Dörfler
23cf00de23 Now starts consoled instead of a shell directly.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11380 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-15 01:17:52 +00:00
Axel Dörfler
ca347bfce3 We report ourselves now as "beterm", so that we don't look as dumb as before.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11378 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-15 00:28:43 +00:00
Axel Dörfler
c016d92ea1 Added the new console/vga_text driver/module stuff to the old boot floppy
method as well.
Removed libdrivers.a from the kernel, added kernel_debug.o to the kernel.
Renamed the boot floppy shell "sh", so that consoled doesn't need to be
changed.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11377 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-15 00:25:32 +00:00
Axel Dörfler
a621f3b6c1 Added the new (built-in) frame_buffer_console module to the build.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11375 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-15 00:18:27 +00:00
Axel Dörfler
f80973f6c2 Replaced the old frame buffer console driver with a built-in frame buffer
console module which is used by the console driver, and will be used by
the on-screen KDL.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11350 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-12 03:45:01 +00:00
Axel Dörfler
1252c6cfae No longer computes a wrong frame buffer size for 15 bit modes.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11347 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-12 03:12:19 +00:00
Jérôme Duval
ec4fd18f03 _sPrintf implemented
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11346 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-11 13:04:13 +00:00
Ingo Weinhold
73df3c0847 * Turned off debug output.
* The syscall arguments are copied into the respective messages to the
  debugger now.
* Optimized the nub thread memory reading command. Now only as many bytes
  are sent to the debugger as were actually read.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11343 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-11 05:00:31 +00:00
Ingo Weinhold
6b2dcef3ec Explicitly declare the inclusion of the syscall table file generated by gensyscalls.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11342 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-11 04:57:38 +00:00
Ingo Weinhold
6432752755 Include the syscall info array generated by gensyscalls.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11341 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-11 04:56:11 +00:00
Axel Dörfler
90bce836e0 Changed the way user/kernel time is tracked for threads. Now, thread_at_kernel_entry()
and thread_at_kernel_exit() are always called for userland threads at the appropriate
situation (note, I've renamed those from *_atkernel_*).
The timing should be more accurate this way, and the thread::last_time_type field
is no longer needed: all interrupts are now added to the kernel time (where the
time is actually spent).


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11331 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-11 03:10:21 +00:00
Axel Dörfler
71aa315c95 First round of hoard changes to change it exactly to what we need.
Removed the arch-specific stuff for all other platforms.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11326 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-10 18:47:16 +00:00
Ingo Weinhold
e23a6f58af Added syscall tracing support.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11318 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-10 03:06:05 +00:00
Ingo Weinhold
a102c86e08 Init and cleanup the thread related debugging structure.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11317 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-10 03:04:53 +00:00
Ingo Weinhold
bea87e89d4 Init and cleanup the team related debugging structure. Send the debugger
a respective message, when the debugged team has been deleted.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11316 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-10 03:03:53 +00:00
Ingo Weinhold
734e07cedb Added user_debugger.cpp to the kernel.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11313 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-10 02:57:46 +00:00
Ingo Weinhold
4661ae6c69 Added/implemented debugging related API functions.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11312 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-10 02:56:49 +00:00
Ingo Weinhold
6b13343035 Some additions for user debugger support. Several of ToDos. This is far from being final, but just something we can work with for the moment.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11310 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-10 02:53:48 +00:00
Ingo Weinhold
bc797a9ee5 The beginnings of userland debugger support. Currently basically only what is needed for strace is implemented.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11308 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-10 02:47:46 +00:00
Axel Dörfler
8f0882a2e1 Some cleanup.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11306 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-10 01:11:44 +00:00
Axel Dörfler
f4a87ad575 As Ingo pointed out correctly, B_INTERRUPTED is never returned when a semaphore
goes away; therefore we must not return B_BAD_PORT_ID in this case.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11305 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-10 01:08:55 +00:00
Axel Dörfler
942d411b67 Fixed kernel version of load_driver_setting(): the lock was not properly
released under certain conditions.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11298 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-09 17:56:21 +00:00
Axel Dörfler
b885799ce7 Support for the input_server (R5 style) instead of using the (old) keyboard driver
directly, done by Jerome Duval.
When the USE_INPUT_SERVER constant is defined, it will try to get its input from
there. Currently disabled since it's not yet working.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11297 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-09 17:53:16 +00:00
Axel Dörfler
29ad57a6c0 Renamed main.c to console.cpp and link it against libbe.so
(in anticipation of future changes).


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11296 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-09 17:20:08 +00:00
Jérôme Duval
db3e07c9e8 implemented _xdebugPrintf and _debugPrintf
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11294 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-09 16:02:05 +00:00
Axel Dörfler
54d6c54090 Moved over to new node monitor API.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11231 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-03 02:54:12 +00:00
Axel Dörfler
de8432edeb Moved over to Ingo's new DoublyLinkedList - I miss my static list::Remove() :-))
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11230 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-03 02:27:04 +00:00
Axel Dörfler
09e756fbf7 Moved over to the new notification API.
Fixed rename implementation - it should now actually work (and also notify
the move which didn't happen before).


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11229 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-03 02:18:25 +00:00
Jérôme Duval
aafd5156d4 Updated to tzcode2005c.tar.gz
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11228 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-02 22:42:24 +00:00
Ingo Weinhold
9965d18a07 Implemented all notify_*() functions. As soon as no longer used anywhere,
notify_listener() and send_notification() can be dropped.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11219 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-02 15:19:35 +00:00
Axel Dörfler
f9c5546a16 unistd/open.c should be changed to contain this variable when it's compiled
for the kernel - but since we still compile libroot.so with kernel build
rules, I place it there for now.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11210 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-02 06:49:45 +00:00
Axel Dörfler
92ce7b918a Improved capabilities of the file cache modules.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11209 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-02 06:30:07 +00:00
Axel Dörfler
2ab3ff4495 _kern_open() now has one more argument.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11207 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-02 06:23:38 +00:00
Axel Dörfler
72b8a30907 _kern_open() now has an additional parameter and replaces _kern_create().
Fixed permission handling - the umask is now correctly applied.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11206 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-02 06:22:40 +00:00
Axel Dörfler
503950421d Added two more convenience VFS calls: vfs_stat_vnode(), and vfs_get_vnode_name().
Removed *_create() and *_create_entry_ref() syscalls - they are now handled by
*_open() and *_open_entry_ref() calls which get another parameter for the permissions.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11205 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-02 06:21:31 +00:00
Axel Dörfler
faa1f9368a Changed return type of relocate_image() from bool to status_t.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11202 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-02 06:15:19 +00:00
Axel Dörfler
12691b61c5 That's how the build fix should have looked alike :-)
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11201 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-02 06:11:27 +00:00
Nathan Whitehorn
46300880d2 Fixed a build error.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11200 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-02 05:50:15 +00:00
Axel Dörfler
9465cd7465 Got the separation between start_dyn.o and libroot.so wrong:
__libc_argc and __libc_argv are initialized in libroot's startup code.
That fix now makes BApplication::ArgvReceived() work as it should.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11198 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-02 04:36:16 +00:00
Axel Dörfler
b460825e1f Fixed the bug that prevented the boot loader from running on many current
systems: good old A20 gate was not properly enabled on all hardware. Even
if it's not perfect now, either, it seems to work on many more systems
(all I have access to, anyway).
Please report if you have any issues with the 0x92 port A20 gate method.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11196 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-02 03:15:26 +00:00
Axel Dörfler
5042346db6 Fixed broken conditional ENABLE_SERIAL handling.
Also added a comment about what ENABLE_SERIAL is for.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11195 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-02 03:01:39 +00:00
Axel Dörfler
21bdfb9cf9 Moved the "random spots" for the first two page tables to 0x91000 and 0x92000
respectively; the area from 0x9f000-0x100000 is not really usable anyway, so
we can safely cut down the maximum size of the boot loader to around 500 kB.
Therefore, the first free physical page is now at 0x100000 straight.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11194 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-02 02:59:04 +00:00
Ingo Weinhold
164d84bb10 Switched to new DoublyLinkedList class.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11193 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-02 02:35:16 +00:00
Ingo Weinhold
b0f7c84522 Switched to new DoublyLinkedList class.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11191 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-02 02:19:23 +00:00
Ingo Weinhold
be6294af4b Switched to new DoublyLinkedList class.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11189 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-02 01:53:00 +00:00
Axel Dörfler
a82d0abbd6 "it cannot fail"?? Hello, we're in the kernel here :-))
Actually, it would be quite possible for another thread to specifically
ask for space in that reserved range, so we're playing safe now.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11177 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-01 00:07:26 +00:00
Axel Dörfler
b18fc6654c transfer_area() now reserves the address range of the old area after removing
it, so that it can guarantee readding it again, in case the transfer is failing.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11173 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-31 18:36:05 +00:00
Ingo Weinhold
242ebd2030 The reduced area size was used for testing only.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11165 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-30 23:40:17 +00:00
Ingo Weinhold
576ca13ddb Added debug output. No functional change. Surprisingly things seem to work.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11164 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-30 23:28:49 +00:00
Ingo Weinhold
d06fe82117 Exemplarily implemented notify_entry_moved(). Untested.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11160 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-30 16:13:35 +00:00
Ingo Weinhold
244f03dc1c * Moved the autolocking code for recursive lockers to <util/AutoLock.h>.
* Added resolve_mount_point_to_volume_root() version for external use
  (by the node monitor).


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11159 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-30 16:11:46 +00:00
Ingo Weinhold
3424c4fea4 Renamed node_monitor.c to node_monitor.cpp and fixed implicit conversions from void*.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11155 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-30 14:09:01 +00:00
Philippe Houdoin
4220e676ba Added more fields length safety.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11124 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-29 15:24:49 +00:00
Axel Dörfler
04b59e02dd team_id == aspace_id.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11087 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-27 07:17:01 +00:00
Axel Dörfler
e6a3e8011c Added and implemented transfer_area() syscall; for now, transfer_area() is
not exported, only the syscall is.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11086 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-27 07:13:41 +00:00
Axel Dörfler
bde6836aff vm_create_aspace() now also get the team_id of the owner of the address
space to be created - this replaces the internal ID they had before.
Now, team_id == aspace_id.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11085 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-27 07:11:45 +00:00
Axel Dörfler
0b111f38f9 read_port() and write_port() must accept a NULL pointer as buffer if
the bufferSize is zero.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11084 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-27 07:08:17 +00:00
Axel Dörfler
82e4378f29 Added missing include.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11081 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-27 01:01:16 +00:00
Axel Dörfler
b15a05da82 Added empty arch_dbg_con_init_settings().
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11079 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-26 18:40:57 +00:00
Axel Dörfler
6c59a0b5bd Added empty arch_cpu_shutdown() (just returns EOPNOTSUPP for now).
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11078 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-26 18:40:16 +00:00
Axel Dörfler
4cf3e70f94 Added empty arch_system_info functions, added arch_system_info.c to the build.
Removed grist from libppc source files.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11077 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-26 18:39:25 +00:00
Axel Dörfler
f2e40399c2 Moved initialization of the arch depending real_time_data fields into the arch
depending section by calling arch_rtc_init().


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11076 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-26 18:30:50 +00:00
Axel Dörfler
72c01a1b3b Added arch_rtc_init() function.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11075 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-26 18:29:41 +00:00
Axel Dörfler
ca0b0a4857 Replaced old VM *_region() calls with current calls.
KSTACK_SIZE has been renamed to KERNEL_STACK_SIZE.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11073 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-26 18:22:38 +00:00