Commit Graph

174 Commits

Author SHA1 Message Date
Ingo Weinhold 7f9c673981 * Introduced a new debugger message B_DEBUGGER_MESSAGE_HANDED_OVER, which
is sent to a debugger when the debugged team has been successfully handed
  over to another debugger.
* Fixed handling of B_DEBUG_MESSAGE_PREPARE_HANDOVER. We don't send a reply.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13683 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-07-15 12:18:33 +00:00
Axel Dörfler 183dee22cb Unlike R5, receive_data() could return an error code under Haiku - this
can now only happen if the thread is killed.
_user_receive_data() will now longer pass B_CAN_INTERRUPT to receive_data(),
but B_KILL_CAN_INTERRUPT - this should fix the problem Stefano experienced
with this function, even if I couldn't reproduce it.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13075 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-12 11:14:37 +00:00
Jérôme Duval 5258e67dff Courtesy of Olivier Coursiere (aka oco), based on documentation (feel free to check against real hardware)
Adds latests IDs from Intel docs
Adds some Sempron IDs
Renamed Athlon 64 to be consistent with Intel names
Adds IDs in cpu_type.h


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12429 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-17 22:46:08 +00:00
Ingo Weinhold 576c52f8b1 Added the gcc printf format attribute for debug_printf(), so that gcc warns about format/parameter inconsistencies.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12096 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-28 15:25:57 +00:00
Ingo Weinhold d2c78559a0 We now also support partial writes to the debugged team's memory.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@11992 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-25 18:23:33 +00:00
Axel Dörfler 34e92cad76 Added and implemented new system calls switch_sem() and switch_sem_etc(); even if
they are public now, they might become private later on.
It's almost the same as acquire_sem() but allows you to release another semaphore
atomically. This makes condvar implementations and the like very simple to do.
Added B_CHECK_PERMISSION flags to the user calls, although it's not honored yet.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@11887 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-17 22:35:00 +00:00
Ingo Weinhold 291e414a9e * Somehow this B_DEBUGGER_MESSAGE_THREAD_STOPPED message bothered me.
Most of the debug events had their own message, but some were grouped
  into this `stopped' message with a `why' field to describe what kind
  of event it actually was. Hence the user had to check two levels until
  they could know what event occurred. So I got rid of this message and
  provided separate messages for the concerned events.
* Got rid of B_DEBUG_MESSAGE_GET_WHY_STOPPED and introduced
  B_DEBUG_MESSAGE_GET_CPU_STATE which is pretty much the same.
* Put B_DEBUG_MESSAGE_RUN_THREAD and B_DEBUG_MESSAGE_STEP_THREAD into
  a single B_DEBUG_MESSAGE_CONTINUE_THREAD message with a boolean
  `single_step' field.
* get_debug_why_stopped_string() -> get_debug_message_string().


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11712 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-13 23:43:05 +00:00
Ingo Weinhold 1619a2e5b4 * The exceptions now have their own debugger message. Added
get_debug_exception_string() to get a user-readable string for an
  exception type.
* Added more signal support. Now the debugger can set per thread which
  signals it wishes to be notified of. It can also just ignore the next
  occurrence of a signal.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11701 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-12 21:35:31 +00:00
Ingo Weinhold 9a28130b32 Added (currently only) flag B_WAIT_TILL_LOADED for _kern_load_image()
(maybe this should better go into a private header?). If given the function
waits till the loader is done with loading and relocating the executable.
Otherwise it returns before the loader starts.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11690 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-12 15:01:25 +00:00
Ingo Weinhold 1c7fbde145 Added message def for preparing to hand over a debugged team to another
debugger. After successful reply to the message the debugger won't receive
any more messages from the debugged team. The mechanism is completely
transparent to the target debugger. It simply installs itself as debugger
for the team.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11662 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-10 21:56:23 +00:00
Ingo Weinhold a29ecae5f0 New debug function wait_for_debugger(). Useful when creating teams to be debugged via fork().
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11634 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-09 22:45:41 +00:00
Ingo Weinhold 9b92e8c011 Added missing reply port for message B_DEBUG_MESSAGE_GET_WHY_STOPPED. Removed unnecessary alignment in debug_nub_set_cpu_state.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11632 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-09 22:04:38 +00:00
Ingo Weinhold 7586a0f3d6 Reading memory is more handy, if it allows for partial reads. So now the size is returned with the reply.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11624 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-08 23:09:31 +00:00
Ingo Weinhold 2b3216fc5a Correct terminology.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11518 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-01 23:44:23 +00:00
Ingo Weinhold a67d62f1db Added definitions for supporting single step, break- and watchpoints,
and setting the CPU state.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11502 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-28 00:25:23 +00:00
Ingo Weinhold 540103da09 * New function get_why_stopped_string() to get a human-readable
translation for the debug_why_stopped codes.
* Added nub_port member to debug_origin structure, so that now all
  synchronous messages to the debugger also include the debug nub port.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11489 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-25 14:24:00 +00:00
Ingo Weinhold 17e41f5251 Added new semaphore flag B_KILL_CAN_INTERRUPT. It makes acquire_sem_etc()
interruptable by SIGKILL[THR], even if B_CAN_INTERRUPT is not set. Not
sure, if this is the best solution, but it works.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11484 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-25 14:10:41 +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 c3610c8098 * Architecture specifics live in arch/<arch>/debugger.h now.
* team debug flags:
  - Added flags for team creation, thread events (creation,
    deletion), and image events (creation, deletion).
  - Got rid of B_TEAM_DEBUG_SYSCALL_FAST_TRACE. We always send the syscall
    arguments. The overhead should be neglectable.
  - Added B_TEAM_DEBUG_STOP_NEW_THREADS.
* Added debugger notification messages for signals, team, thread and
  image events.
* Added debug request B_DEBUG_MESSAGE_GET_WHY_STOPPED.
* When continuing a thread, the debugger can now specify how to deal with
  the occurred event (ignore or handle).
* More data in the signal received notification message.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11468 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-24 15:43:28 +00:00
Ingo Weinhold c53b50023a Trashed the old header and started a new one from the scratch.
Unless a good reason appears not to, we'll break binary compatibility here.
BDB could be considered one, but we need a replacement for it anyway. We
strive to port GDB and a couple of changes in the debugger API will make
that easier.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11307 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-10 02:45:18 +00:00
Ingo Weinhold eafe61c06b * Some formatting cleanup.
* Removed ARM support.
* Removed PEF references.
* Added structure and constants for pre syscall tracing.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11245 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-04 14:37:55 +00:00
Ingo Weinhold 06f5fe61a2 * Removed B_USER_CLONEABLE_AREA. The value conflics with other flags and
it does belong to <KernelExport.h> anyway.
* Reverted the protection flags back to decimal for consistency with the
  other places. BTW, since when do we use decimals for flags?


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11047 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-25 22:54:22 +00:00
Ingo Weinhold 6e9582baf1 Introduced new protection flag B_USER_CLONEABLE_AREA. It makes kernel areas cloneable for userland apps.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11044 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-25 22:11:59 +00:00
Ingo Weinhold 57b6c3bcad * Changed return value of read_port[_etc] from status_t to ssize_t. That's
not how it is declared in R5, but it is what actually is returned.
* Temporarily added debug_[v]printf() functions for userland usage,
  equivalent to dprintf() in kernel.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10758 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-15 21:41:14 +00:00
Axel Dörfler c05649ebef Fixed a typo reported by John Drinkwater.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10542 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-12-28 16:38:48 +00:00
Axel Dörfler bc93cc3fa7 Happy source compatibility breaking:
- Removed the OBOS_CPU_TYPE stuff - our types are now always defined.
- Made the cpu types consistent, renamed X86 to x86.
- cpuid_info.eax_1 now also contains the extended family/model info.
- Renamed cpuid_info.eax_0.vendorid to vendor_id.
- changed B_CPU_x86_VENDOR_MASK to 0xff to make some space for future changes.
- added some more CPU types (if anyone knows more Transmeta IDs; I
  couldn't find more of them).


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10319 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-12-01 03:36:48 +00:00
Axel Dörfler d76bee070b Added a note to the new B_TEAM_USAGE_SELF/CHILDREN constants that they
are compatible to sys/resource.h definitions.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10269 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-11-27 12:59:45 +00:00
Axel Dörfler 40bfa3f782 The inline version of find_thread() now references _kern_find_thread() if
__HAIKU__ is defined.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10266 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-11-27 12:52:29 +00:00
Jérôme Duval 83b629e1ad Added Pentium M cpu type
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@9703 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-11-01 14:07:56 +00:00
Axel Dörfler ae4cfab6b9 Since the file system is usually recognized by the disk device manager,
there is no reason to let it appear important by having it as first
parameter; it's only used to override the DDM's decision if the user
so choses.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@9694 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-11-01 01:01:21 +00:00
Jérôme Duval f9b87f230b Patch from Olivier Coursiere, adds Athlon 64 and Opteron values. Thanks!
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@9421 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-10-19 21:48:53 +00:00
Axel Dörfler 9de969006b Added two experimental release_sem_etc() flags (both should stay, but they
may be renamed):
- B_RELEASE_ALL: the semaphore count is set to 0, all waiting threads are released
  (the "count" argument of release_etc_sem() is ignored then)
- B_RELEASE_IF_WAITING_ONLY: the semaphore count is only decreased if there
  are any waiting threads; ie. the semaphore is signaled
Together, they will make the pthread_cond_*() functions easy to implement, and
they come in handy at other places, too.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@9329 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-10-13 15:54:47 +00:00
Axel Dörfler 76b72b95e1 Removed delete_sem_etc() prototypes as that function is no longer available
(and never was in userspace, anyway).


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@9326 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-10-13 14:58:14 +00:00
Axel Dörfler 9fdf5bbb13 Resolved an old ToDo item; thanks to Rogier van der Hee for pointing this out.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8294 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-07-05 00:30:46 +00:00
Axel Dörfler 3f403c721c Since our libroot/os/thread.c already exports this, we can as well just add
it to the header, too :)
(it's a new function in Dano/Zeta)


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8234 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-06-29 20:04:07 +00:00
Axel Dörfler 06e37d1ea5 Fix missing identation.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7488 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-05-10 13:24:14 +00:00
Axel Dörfler 6f3a136e47 Added the inline x86 asm version of find_thread() as it is found on BeOS.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6865 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-03-03 00:44:18 +00:00
Axel Dörfler 7ba272b8b3 Added a B_CURRENT_TEAM constant - it's not available in BeOS, but it's
actually used at several places (like get_next_thread_info(), ...).


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6682 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-02-23 03:32:44 +00:00
Axel Dörfler afa70266a3 Fixed set_real_time_clock() - its time parameter is now uint32 not int32,
that's what real_time_clock() returns as well. I don't know why Be made
it int32, but I don't care too much either.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5144 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-10-24 14:50:15 +00:00
Philippe Houdoin c6f77f6c2c Trying to be quicker than shatty to add more ids, courtesy of pulse 1.07 on bebits.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3566 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-18 21:38:16 +00:00
shatty 3c90558523 okay, last commit for today :-P ... protected non-R5 cpu types with #define OBOS_CPU_TYPES and #ifdef OBOS_CPU_TYPES
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3502 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-13 19:33:22 +00:00
shatty 7aae8aac0e not all iv_model2 are xeon so I am taking it back out...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3500 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-13 18:22:17 +00:00
shatty 9a7fc04885 used xeon name directly, left IV_MODEL2 as another alias
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3499 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-13 18:12:26 +00:00
shatty 09b1f9ddba added some more ids, courtesy of pulse 1.06 on bebits
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3497 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-13 17:56:05 +00:00
Philippe Houdoin 9360e22d50 Add missing cpu_type values for AMD Athlon and Duron processor.
Next step: add B_CPU_INTEL_PENTIUM_IV, when we could boot successfully on such beast ;-)


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3104 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-04-25 21:31:45 +00:00
Axel Dörfler ee478c021b Renamed fs_device.h to fs_volume.h, renamed functions from *_device() to
*_volume().
Added a "volumeName" parameter to the fs_initialize_volume() call.
Introduced a "flags" field to the fs_unmount_volume() call - I have only
defined one flag, B_FORCE_UNMOUNT, right now.
But the unmount behaviour should be discussed anyway first (always force
unmount?).


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2828 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-02-24 13:14:54 +00:00
Ingo Weinhold 75d0aed7ec Removed extended_partition_info::partition_code field.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2747 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-02-18 21:28:30 +00:00
Axel Dörfler 39831bc66e Proposal for mount/unmount/initialize function prototypes.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2707 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-02-14 17:10:49 +00:00
Ingo Weinhold 456d74c6d2 Uncommented extended_partition_info::mounted_at. It looks like we can't get hold of this data, so the field will probably disappear.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2655 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-02-08 00:37:30 +00:00
Ingo Weinhold e3b2e49b00 Renamed fs_device.h to disk_scanner.h.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2621 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-02-02 22:44:44 +00:00
Axel Dörfler f60043082d Unified the look of the different files a bit (their headers in particular).
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2596 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-01-29 14:45:15 +00:00
Axel Dörfler 8b9ceff84b New fs_query.h header.
Now defines a new flag B_QUERY_NON_INDEXED - because querying non-indexed
attributes is a slow operation, it now has to be enabled on demand only.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2595 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-01-29 14:43:38 +00:00
Axel Dörfler c69aed7afc Removed some garbage.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2585 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-01-27 13:58:12 +00:00
Ingo Weinhold 1f293937f5 extended_partition_info: changed partition_code to uint32 and added a field file_system_flags. Added a parameter partitionMapName to get_nth_partition_info() for getting the identifier of the used partition module.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2551 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-01-26 15:01:55 +00:00
Ingo Weinhold 39e8f48cde Er, forgot the prototypes for parameter retrieving for partitioning and volume initialization.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2508 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-01-19 22:58:12 +00:00
Ingo Weinhold 3a69ab6517 Added prototypes for partitioning and volume initialization.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2507 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-01-19 22:54:28 +00:00
Axel Dörfler b6a77342a5 Moved to os/drivers because it's not a userland header.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2473 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-01-17 17:53:28 +00:00
Tyler Dauwalder f9c2a2a243 + Shrank license
+ Changed "#define TRACE(x)" to "#define TRACE(x) ;"


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2467 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-01-17 08:22:35 +00:00
Axel Dörfler 25f83d0202 Added the debugger.h header file (for being able to link it from the web).
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2453 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-01-14 13:41:16 +00:00
Axel Dörfler 6cdae891c3 minor changes.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2417 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-01-12 16:10:28 +00:00
Axel Dörfler 346646a2c7 Moved the files vm_types.h, syscalls.h, and vfs_types.h to the private
kernel header directory - they are by no means public includes.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2349 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-01-02 13:16:35 +00:00
Ingo Weinhold 45b15a27e1 C level device API (disk_scanner).
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2272 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-12-21 19:06:18 +00:00
François Revol 2a03a60a17 Added some B_CPU_ defines, compatible against R5.1.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2184 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-12-08 16:50:28 +00:00
Axel Dörfler 6ba1dc2341 Moved it to private/kernel/, this is no public header.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2139 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-12-03 14:06:21 +00:00
Axel Dörfler c5cf4e87b6 Removed the "path" field in the team structure. Renamed "ioctx" to "io_context".
Added a "page_faults_allowed" field in the thread structure.
Clean up.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2138 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-12-03 14:05:21 +00:00
lillo f2bc61304f replaced sys_kill with general thread-aimed sys_send_signal; cleaned up
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@1740 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-10-28 20:38:16 +00:00
lillo a2117f0bc7 reworked snooze to work in function of the newly added (and kernel exported) snooze_etc. Activated libroot counterpart(s).
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@1723 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-10-27 12:06:40 +00:00
lillo 5cdacbaabb *LOTS* of small changes to make the kernel compatible with Be's KernelExport.h
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@1683 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-10-26 16:13:36 +00:00
beveloper 1be91d1603 added thread_entry for backward compatibility
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@1677 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-10-26 12:58:12 +00:00
lillo 8fe70e8212 beos compatibility fixes: exit_thread now issues a signal; wait_for_thread returns B_INTERRUPTED if target thread gets killed
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@1674 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-10-26 01:11:15 +00:00
lillo 9870ddcea7 kill now sends the signal to the main thread of a process only. To target a specific thread use the new send_signal syscall. Also added set_alarm.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@1662 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-10-25 22:36:08 +00:00
lillo f510e6ce60 posix signals support, 1st pass
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@1623 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-10-23 17:31:10 +00:00
beveloper d734a8ce5a some header files to be R5 compatible
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@1617 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-10-23 13:54:44 +00:00
beveloper d7e489f80a modified to provider better R5 compatibility
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@1615 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-10-23 13:45:47 +00:00
Axel Dörfler 146a3000ee Added syscalls for the index functions.
Corrected the prototype for fs_rewind_index_dir() (don't copy and paste...)
Also checked in the syscall definitions for the signal stuff to save Angelo
some work.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@1562 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-10-17 18:52:04 +00:00
Axel Dörfler 1f87d2b261 Changed parameter type in create_index().
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@1561 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-10-17 16:45:40 +00:00
Axel Dörfler b67f11173f Added syscalls for the attribute VFS calls.
Made some subtle changes to fs_attr.h.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@1546 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-10-16 16:17:28 +00:00
Axel Dörfler 123b5d67ad Moved the seek() functionality back to the VFS.
Renamed read_pages(), and write_pages() to make it more clear.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@1446 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-10-07 23:37:05 +00:00
Axel Dörfler c321cf4929 Completed, rearranged, and cleaned up OS.h. Moved some typedefs from ktypes.h
to this place. Also removed create_sem_etc() from there, that shouldn't be a public call.
Cleaned up image.h.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@1377 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-10-05 01:19:31 +00:00
Axel Dörfler 83efd20846 The private data field in struct file_descriptor is now a union (that can
currently hold a pointer to a fs_mount, or a vnode).
Updated the index_dir part of the fs API.
Added FDTYPE_INDEX_DIR in fd.h.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@1188 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-09-26 03:36:04 +00:00
Axel Dörfler 2217cc8e6a Changed some names (of structures and definitions).
Added exports for the variables a file system add-on has to export.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@1180 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-09-25 16:38:10 +00:00
Axel Dörfler 4dc5ecd3cb Renamed fs_id to mount_id.
Moved typedefs for mount_id and vnode_id to fs_interface.h.
Removed some unused stuff in ktypes.h.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@1173 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-09-25 13:57:06 +00:00
Axel Dörfler ba8080175e Changed the rename_attr() call to allow moving attributes to other files.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@1172 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-09-25 12:14:57 +00:00
Axel Dörfler bae1b21a60 Reworked the fs API a bit, it's quite complete now.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@1167 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-09-25 02:15:00 +00:00
Axel Dörfler 570b6eaeeb Removed the fs_ prefix from the fs_calls.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@1160 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-09-24 16:17:22 +00:00
Axel Dörfler ec152b4fff Some more changes to the attributes fs API:
Since BFS can't resolve a vnode_id to an attribute, fs_create_attr() now
doesn't return a new vnode_id anymore. Changed all fs_vnode variables to
"file" instead of "attr" to avoid any confusion.
That means for BFS that the cookie which fs_open_attr() returns will have
to include a pointer to the real inode, if the attribute is not part of the
file's inode.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@1159 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-09-24 16:09:02 +00:00
Axel Dörfler 10567eeb6e Changed an unused field of struct stat (st_rdev) to st_type, so that we
can use this structure to call fstat() on attributes and indices.
Added more functions to the file system interface (attributes, and indices).
Added header fs_attr.h, and fs_index.h.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@1158 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-09-24 16:02:53 +00:00
Axel Dörfler 366a7cf67c Fixed a prototype.
Updated several structures because of the int/int32/status_t change.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@1139 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-09-24 00:09:38 +00:00
Axel Dörfler 88e54ccc26 Added the fs_ops calls for attribute/index/query handling - not yet finished
or completed, though.
Renamed fs_cookie to fs_volume, and file_cookie to fs_cookie.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@1136 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-09-23 23:22:18 +00:00
Axel Dörfler 822cb704e9 fixed sys_wait_on_thread() prototype.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@1123 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-09-23 02:57:19 +00:00
Axel Dörfler 085320eab2 Fixed some header issues (mostly int, status_t).
Replaced <types.h> with <sys/types.h> because that's what those headers
were looking for.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@1118 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-09-23 02:31:05 +00:00
Axel Dörfler 3f6f3d2921 Added Errors.h, since SupportDefs.h can't be included for now.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@1115 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-09-22 15:58:49 +00:00
Philippe Houdoin 53ae93e6d5 Source compatibility objective: time to add some BeOS specific public headers.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@1091 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-09-19 22:33:58 +00:00
beveloper 90abd04b34 Change int into status_t, and other changes for better BeOS type compatiblitly.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@975 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-09-03 02:19:22 +00:00
lillo 615a79cc3c Implemented send_data/receive_data/has_data thread syscalls
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@815 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-08-19 08:28:39 +00:00
Axel Dörfler 4c405cbdd4 The fs interface functions should now return a "status_t" rather than an "int".
Added syscalls for, and implemented sys_create_link(), sys_remove_dir().
Implemented link(), unlink(), rmdir().
Fixed the inconsistent path buffer handling in the user|sys vfs functions; the
path buffer is now exactly SYS_MAX_PATH_LEN from userland (incl. terminating
null byte).


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@748 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-08-13 20:39:25 +00:00
Axel Dörfler 9c3e90a54e Removed the FS interface functions from vfs.h to a new file fs_interface.h.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@737 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-08-13 13:48:18 +00:00
Axel Dörfler beddff0f56 Replaced opendir.c with directory.c, implemented chdir(), fchdir(), and
getcwd().
Introduced new xyz(int fd, char *path, ...) style of functions for
sys_setcwd(), and sys_write_stat().
Added missing sys_fstat(). Removed duplicated prototypes in syscalls.h
Fixed some minor bugs.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@669 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-08-09 20:20:28 +00:00
Axel Dörfler 14e18e556e getdtablesize() no longer needs a syscall.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@667 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-08-09 17:51:02 +00:00
Axel Dörfler 151edf0672 Removed the know unnecessary BSD-like fcntl.h (a BeOS one is now in posix/)
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@582 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-08-05 01:35:03 +00:00