Commit Graph
1281 Commits
Author SHA1 Message Date
Axel Dörfler 3dbf98a59a Renamed thread/team syscalls to new scheme.
find_thread() is now correct.
Moved send_data(), has_data(), and receive_data() back into this file.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6874 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-03-03 01:05:13 +00:00
Axel Dörfler 57ffd61845 _kfind_thread_() is now correctly implemented.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6872 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-03-03 01:03:31 +00:00
Axel Dörfler acfdb017dd team_kill_team() is now called kill_team().
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6871 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-03-03 01:02:08 +00:00
Axel Dörfler 0ff38616f4 Renamed syscalls to new scheme.
Changed thread_kill_thread() to the BeOS compatible kill_thread() function.
Added missing _user_kill_thread().


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6870 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-03-03 01:00:16 +00:00
Axel Dörfler 564ffd3da7 Renamed thread/team syscalls to new scheme.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6869 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-03-03 00:58:19 +00:00
Axel Dörfler 98d68e7085 Renamed syscalls to new scheme.
Moved wait_for_team() into the exported kernel API region.
Added missing call for _user_get_current_team().
Made the team_kill_team() call to the BeOS compatible kill_team().


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6868 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-03-03 00:57:00 +00:00
Axel Dörfler 1748ad5db7 Added find_thread() (does not yet work with name != NULL).
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6860 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-03-02 17:40:14 +00:00
Stefano Ceccherini 7667c061fe Simplified an expression (which was even wrong before)
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6859 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-03-02 16:29:04 +00:00
Stefano Ceccherini b2fece1ec0 renamed some global variables to have the "g" prefix
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6858 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-03-02 16:16:11 +00:00
Axel Dörfler f9e9fb76f0 On second thought, it would be strange if the pattern used everywhere
else is not found here. The BeOS kernel also exports these two *_etc()
functions, and we might want to do that, too.
{receive|send}_data() are now interruptible from userland, but not when
called from the kernel.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6700 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-02-23 06:29:59 +00:00
Axel Dörfler 510a1ab1e9 Removed arch_cpu_user_strncpy()/strcpy().
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6698 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-02-23 05:18:51 +00:00
Axel Dörfler 775470756b On second thought, also removed user_strcpy().
Copied over the function description of user_strlcpy() from x86/arch_cpu.h
to this file.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6697 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-02-23 05:13:31 +00:00
Axel Dörfler f4d747d77b No longer uses user_strcpy(), and it's even slightly faster.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6696 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-02-23 05:08:17 +00:00
Axel Dörfler 26b91cb6ec No longer use user_strcpy() but user_strlcpy().
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6695 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-02-23 05:03:04 +00:00
Axel Dörfler 083d73d739 No longer uses strncpy(). Removed the user_strncpy() call - we don't want
to have it in the kernel.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6694 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-02-23 04:40:02 +00:00
Axel Dörfler 0d6f9a67e5 Banned strncpy(), switched return type from "int" to "status_t" for vfs_get_vnode_from_path().
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6693 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-02-23 04:31:51 +00:00
Axel Dörfler c0601b3a79 Cleaned up _get_sem_info() and _get_next_sem_info().
Implemented the B_CURRENT_TEAM mechanism for _get_next_sem_info().


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6691 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-02-23 04:26:44 +00:00
Axel Dörfler faeac94982 Removed <kerrors.h> and the last occurences of ERR_* codes.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6690 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-02-23 04:12:34 +00:00
Axel Dörfler 48f31b9581 Replaced team_get_team_struct() with its safer friend team_is_valid().
Replaced SYS_MAX_OS_NAME_LEN with B_OS_NAME_LENGTH.
Banned strncpy().
Some cleanup.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6689 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-02-23 04:08:09 +00:00
Axel Dörfler 3402b15625 No longer needed.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6688 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-02-23 04:05:47 +00:00
Axel Dörfler 70f0602f2d Cleaned up the _get_port_info() and _get_next_port_info() calls, factored
out the port_info setup to fill_port_info(), implemented the B_CURRENT_TEAM
behaviour as described in the BeBook (well, almost, since B_CURRENT_TEAM
is not defined in R5, it's just "0"), improved error checking.
Cleaned up user syscalls.
Replaced SYS_MAX_OS_NAME_LEN with B_OS_NAME_LENGTH.
Banned strncpy().
Added our license.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6687 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-02-23 04:02:24 +00:00
Axel Dörfler 492e5970b0 Cleaned up the user syscalls: no longer uses strncpy(), replaced SYS_MAX_OS_NAME_LEN
with B_OS_NAME_LENGTH, make use of the IS_USER_ADDRESS() macro, etc.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6685 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-02-23 03:54:00 +00:00
Axel Dörfler 592a6437f2 receive_data() is now interruptible (as reported by Starr Kline) - not tested!
Cleaned up _get_thread_info() & _get_next_thread_info() - factored out
the thread_info setup into fill_thread_info().
Is now using team_is_alive() instead of team_get_team_struct().
Replaced SYS_MAX_OS_NAME_LEN with B_OS_NAME_LENGTH.
Banned strncpy() in favor for strlcpy().


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6683 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-02-23 03:46:42 +00:00
Axel Dörfler 2a3ec096a4 Replaced usage of team_get_team_struct() with team_is_valid().
Replaced some old error codes.
Explained a bit more how to solve a race condition.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6681 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-02-23 03:31:08 +00:00
Axel Dörfler 07f317bf6a Replaced SYS_MAX_OS_NAME_LEN with B_OS_NAME_LENGTH.
Removed old error codes.
Replaced the DEVFS_IOCTL_* with their Be equivalents. Note, the related
functions are not user space safe yet. But since the devfs will be
almost rewritten, there is no point in changing it now.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6679 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-02-23 03:21:59 +00:00
Axel Dörfler 677e35664d Replaced SYS_MAX_OS_NAME_LEN with B_OS_NAME_LENGTH.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6678 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-02-23 03:19:02 +00:00
Axel Dörfler 38afe35e66 Renamed CHECK_USER_ADDRESS() to IS_USER_ADDRESS() to make its function more clear.
Added our license to the updated source files.
Minor cleanup.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6672 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-02-22 14:52:59 +00:00
Axel Dörfler 81e08ae466 kernel_cpp.cpp needs direct access to headers/private/kernel/util in order
to not include our current stdio.h.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6598 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-02-15 18:08:15 +00:00
Axel Dörfler b8c2776bb7 Moved some more functionality into create_new_vnode() to reduce code duplication.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6469 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-02-02 15:09:21 +00:00
Axel Dörfler 6be2590464 Also added "bootfloppy" to build the boot floppy (still available using "boot_floppy", too).
Just for consistency with "installfloppy" and Marcus :).


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6361 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-01-27 20:36:12 +00:00
Axel Dörfler 4472757fb0 Renamed the generic "floppy" target to "boot_floppy" so that it doesn't
clash with the floppy driver anymore.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6325 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-01-26 10:33:13 +00:00
Axel Dörfler daf0126bb2 alarm_event() has sent the signal to the currently running thread instead
of the one that issues the alarm - it now does an ugly cast to get the
real thread structure. It would be nice if we had an additional user
parameter to a timer event.
Thanks to Travis for reporting this one!


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6310 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-01-26 02:01:46 +00:00
Axel Dörfler 016f7b6f32 Fixed compilation when you can't add private/kernel to your include headers.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6301 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-01-25 18:31:04 +00:00
Axel Dörfler 86228d9f03 Applied NewOS change 1914: fixes small bug (one page off), calls
{get|put}_physical_page_tmap() directly.
Also replaced all occurrences of "addr" with "addr_t".


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5938 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-01-06 16:12:52 +00:00
Tyler Dauwalder 581cfaf2c0 - Added declaration and definition of std::nothrow
- Wrapped everything but #includes in #if _KERNEL_MODE to keep from
  redeclaring/definining operator new and nothrow in userland.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5921 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-01-06 00:27:34 +00:00
Axel Dörfler 11e38cc1d9 Applied the unmount() fix from NewOS change 1906.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5906 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-01-05 01:03:14 +00:00
Axel Dörfler 462e4bb4fa That restriction was superfluous.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5789 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-12-29 02:29:27 +00:00
Axel Dörfler caeef6fada Fixed the broken use of read_request::PutBuffer() - the team's address space
is now honoured: the shortcut is now only made if it's okay to do it. Added
a comment what we could do to further improve performance.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5788 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-12-29 02:27:22 +00:00
Axel Dörfler 6994475d83 Added a comment about a stupidity I did with pipefs - I seem to have completely
forgotten about different address spaces with direct (unbuffered) pipe transfer,
shame on me.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5786 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-12-28 15:27:24 +00:00
Axel Dörfler e9a4e838e8 Added missing vsnprintf() for BSD stdio.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5717 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-12-20 16:00:51 +00:00
Axel Dörfler 65a98eb199 Hacks to get glibc's stdio-common working.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5473 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-11-24 19:59:26 +00:00
Axel Dörfler 348820b57c Hacks to let it compile: disabled/removed wide character stuff, disabled
floating-point output.
Unfortunately, I needed to change the identation etc. to find my way through
it. Could resist to rewrite it completely, though :)


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5472 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-11-24 19:24:21 +00:00
Axel Dörfler 0bcee3c93c Hacks to let it compile. Disabled wide character stuff *and* all number
conversions since they rely on private glibc functions.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5471 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-11-24 19:20:57 +00:00
Axel Dörfler bc659826df t[e]mpnam() stuff now works.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5433 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-11-21 18:25:02 +00:00
Axel Dörfler cc9c5de901 Small changes to let it compile.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5432 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-11-21 18:23:17 +00:00
Axel Dörfler 290ba80867 Hacks to get the libio package working:
- all wide character functions have been disabled or removed
- ftrylockfile() does not yet work
- reformatted code to be readable (sometimes needed for changes)

Note, this code is not able to be simply updated with newer glibc releases! Sorry.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5429 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-11-21 17:01:42 +00:00
Axel Dörfler 1bed4dd008 No longer needed.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5427 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-11-21 16:45:03 +00:00
Axel Dörfler 545237514a We really only allow 0x7fffffff maximum characters, so we now mask out
everything above (not even in an intelligent way).
Now accepts zero bufferSize and NULL buffer - although it should probably
not catch the latter...


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5408 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-11-18 04:12:29 +00:00
Axel Dörfler c29da59747 Moved number() closer to vsnprintf() because it'll need the put_*() functions
once it's fixed.
Renamed some variables.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5407 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-11-18 04:02:59 +00:00
Axel Dörfler ac3863db5e About to move vsprintf() over to vsnprintf() which is more secure since
it allows to specify the buffer size. Not yet finished; number() has to
be fixed - tests have to be written as well.
Implemented snprintf() and vsprintf() using vsnprintf().
Some smaller cleanups.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5406 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-11-18 03:54:14 +00:00