Commit Graph
568 Commits
Author SHA1 Message Date
Jérôme Duval 0018ac6a37 added _user_get_tzfilename
renamed rtc_boot_time to rtc_system_time_offset


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10190 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-11-23 00:10:18 +00:00
Jérôme Duval 6f8c05c381 added _kern_get_tzfilename
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10189 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-11-23 00:06:49 +00:00
Jérôme Duval 4bbf2e4987 added _user_set_tzfilename
removed set_tzspecs, which was useless; now done in user_set_tzspecs


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10176 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-11-22 17:05:17 +00:00
Jérôme Duval d585e91d9d added tzfilename and isGMT fields.
tzfilename is used to keep current timezone filename
isGMT is used to know how to handle rtc clock


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10175 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-11-22 17:02:01 +00:00
Jérôme Duval fbf47a381c added _kern_set_tzfilename, used to set global timezone filename and whether clock is GMT
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10174 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-11-22 16:59:10 +00:00
Jérôme Duval 35bec416bb added timezone_offset and dst_observed fields to real_time_data
added prototypes for set_tzspecs, used for setting these fields


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10132 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-11-22 00:28:12 +00:00
shatty a3a80c27cc change vm_address_space to struct vm_address_space
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10063 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-11-20 23:25:37 +00:00
Axel Dörfler 4cf2317767 Replaced reboot() by arch_cpu_shutdown().
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10043 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-11-19 20:16:20 +00:00
Axel Dörfler 7b380c5b9f Added a comment why debugging kernel stacks doesn't work like one would expect.
Added prototype for new shutdown() function.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10041 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-11-19 20:13:58 +00:00
Axel Dörfler 6a689590ce Removed unneeded includes of ktypes.h.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10036 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-11-19 19:40:05 +00:00
Axel Dörfler 9ebc403c77 Renamed KSTACK_SIZE to KERNEL_STACK_SIZE, STACK_SIZE to USER_STACK_SIZE,
MAIN_THREAD_STACK_SIZE to USER_MAIN_THREAD_STACK_SIZE.
Added support for stack overflow debugging: in userspace, the lower (on x86)
4 pages will be used to detect stack overflows. It's disabled for kernel
stacks by default.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10013 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-11-18 17:49:12 +00:00
Axel Dörfler 704d6e100b Added stack special case to the anonymous store.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10012 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-11-18 17:46:39 +00:00
Axel Dörfler 99daf65959 Added definitions that describe the stack direction.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10007 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-11-18 14:43:28 +00:00
Axel Dörfler 4eaf08ab83 Added B_STACK_AREA and B_KERNEL_STACK_AREA protection values.
vm_store::fault() now returns a status_t.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10004 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-11-18 14:33:13 +00:00
Axel Dörfler 06db250916 vfs_mount_boot_file_system() now also gets the kernel_args.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@9964 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-11-15 20:00:49 +00:00
Axel Dörfler b193fcc716 Some work on the boot disk identification: the kernel_args structure has
now fields that carry information about the boot disk and partition.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@9956 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-11-15 17:59:15 +00:00
Axel Dörfler 0c3888b965 Add a method to get the partition's file descriptor.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@9955 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-11-15 17:56:55 +00:00
Axel Dörfler a7e6b6f35b Added prototype for new hash_remove_first() function.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@9894 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-11-10 01:59:09 +00:00
Axel Dörfler d4f36305b0 Added a comment about the architecture dependency.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@9883 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-11-09 13:34:09 +00:00
Jérôme Duval 78bda9a24d typo
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@9882 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-11-09 12:53:12 +00:00
Axel Dörfler 921c7286c3 Added some missing consts.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@9871 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-11-08 19:23:29 +00:00
Axel Dörfler a49a5623f1 Got rid of regions - we're now back in area-land.
Renamed vm_area::lock to vm_area::protection to be less confusing - wiring
is still called wiring, though (might be renamed to lock later, as that's
how BeOS calls it).


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@9858 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-11-08 14:16:35 +00:00
Axel Dörfler 148a8e0c57 Renamed *_stack_region_id with *_stack_area, also replaced region_id with area_id.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@9853 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-11-08 13:53:34 +00:00
Axel Dörfler 9e78877956 Added the real_time_data structure that extends Jerome's work on the
real time shared page (it contains the boot time offset and the system
time conversion factor for now).


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@9850 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-11-08 11:35:00 +00:00
Axel Dörfler d790daa3cc The status field is no system field; it has to be set by the disk system
(it will be maintained by the system afterwards, though).


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@9849 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-11-08 11:29:12 +00:00
Axel Dörfler c9293f364f vm_get_region_by_id() and vm_put_region() are now private.
Removed vm_find_region_by_name() (superseded by find_area()).


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@9845 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-11-08 11:14:32 +00:00
Axel Dörfler 4ce0cb439a The set_read_time_clock() syscall now returns a status_t to be able to
indicate failure.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@9803 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-11-05 16:06:28 +00:00
Axel Dörfler 8665123697 Added empty arch_fork_arg structure.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@9800 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-11-04 16:46:02 +00:00
Axel Dörfler 024b8e7bd1 Relied on ktypes.h, but didn't include it (because on x86, some arch header
did that already).


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@9795 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-11-04 15:54:47 +00:00
Axel Dörfler b38248e108 Fixed a warning in GCC 3.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@9794 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-11-04 15:51:27 +00:00
Ingo Weinhold 90072e721d Always define the symbols needed for basic C++ features. If we link against libgcc.a the symbols from there are simply overridden.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@9778 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-11-03 17:33:17 +00:00
Axel Dörfler ba44a1e8e1 Changed the way the stores commit their memory: there is no special handling
for temporary memory anymore, it's the store's responsibility to do that
correctly now, and that functionality is reached via the vm_cache using
vm_cache_set_minimal_commitment().
Therefore, the vm_store commit() function now returns a status instead of
the size that could be commited.
Replaced the max_commit mechanism with one that cares about the available
memory, stores can reserve and unreserve such memory. The anonymous_commit()
will now fail in case it could not reserve the needed amount of memory.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@9777 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-11-03 17:24:41 +00:00
Axel Dörfler 424f90aff9 Added prototypes for readv/writev() syscalls.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@9766 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-11-03 14:55:44 +00:00
Axel Dörfler ec5d706492 SetParent() is now a public function (could be made private again and friend of
add_partitions_for(), though).
The partition now also tracks if it refers to a partitioning system or not.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@9745 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-11-03 02:10:10 +00:00
Axel Dörfler eef5d24c90 Changed the last argument of _kern_mount() to be a string rather than a void pointer.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@9691 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-11-01 00:25:25 +00:00
Axel Dörfler 65026923e6 Added prototypes for the new devfs_[un]publish_file_device() calls.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@9641 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-10-29 01:41:49 +00:00
Ingo Weinhold 8ae2a1ef21 Include <storage/DiskDeviceDefs.h> instead of <DiskDeviceDefs.h>. So noone including <syscalls.h> needs to explicitly add the private storage kit header dir to the include search path.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@9633 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-10-29 01:36:07 +00:00
Ingo Weinhold af327271cc Made C-safe. Now no longer declares the syscall prototypes, but the prototypes for the respective _user_*() functions.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@9632 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-10-29 01:33:59 +00:00
Ingo Weinhold 2956802960 Added the DDM syscalls.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@9631 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-10-29 01:27:44 +00:00
Ingo Weinhold 7fb2963ae4 * Added vfs_normalize_path() service call.
* Added resolve_mount_point_to_volume_root() which does what
  resolve_volume_root_to_mount_point() did. IOW the latter one didn't
  do what it advertised.
* Fixed dir_vnode_to_path(). Basically broken due to the broken
  resolve_volume_root_to_mount_point(), but also compared potentially
  unrelated vnode IDs (belonging to different volumes).
* Fixed get_dir_path_and_leaf(). It didn't deal correctly with paths
  ending in '/' (including the root dir).
* fs_mount() does now accept a NULL fsName, getting the FS name from
  the DDM in this case.
* fs_mount() now also supports mounting file images; it lets the DDM
  create a file device for them.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@9629 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-10-28 22:31:43 +00:00
Ingo Weinhold c06238cbd6 * Reworked publishing/unpublishing of the device. This is now basically
done by (currently not existing) devfs functions.
* Overridden GetMediaStatus() and GetGeometry() to return useful data.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@9627 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-10-28 22:22:04 +00:00
Ingo Weinhold 1e2e4b3c71 Re-added support for file devices.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@9626 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-10-28 22:18:20 +00:00
Ingo Weinhold cba3b01fdf Added support for path normalization.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@9625 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-10-28 22:16:41 +00:00
Ingo Weinhold 0402530222 Extended Append() to also allow adding parts of path components. Added leaf component manipulation. Now always chop trailing slashes off the path.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@9560 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-10-28 15:09:48 +00:00
Ingo Weinhold 5de8542789 Since the kernel links against libgcc.a and we use some C++ features that cause functions of libgcc.a to be included that use a couple of formerly undefined symbols (stderr, fprintf, abort, debugger) those had to be added to kernel_cpp.cpp. We don't build the kernel utils as static library anymore, since libgcc.a is listed at the end of the link command line and trying to change that would be a bit ugly. For C++ in the boot loader nothing changes.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@9554 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-10-27 22:07:00 +00:00
Ingo Weinhold 92221d2425 KPath is used now where possible.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@9549 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-10-27 21:56:05 +00:00
Ingo Weinhold 3f3f9cb61a Added Unlock() (an nicer sounding alias for Unset()) and Detach() (the lock is kept when the object is destroyed) to AutoLocker.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@9547 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-10-27 21:54:12 +00:00
Ingo Weinhold 1b5f626633 * Changes to use KPath where possible now.
* Made GetMediaStatus() a bit more robust. If the ioctl fails (e.g. if it
  is not implemented as in Thomas' drivers), it gets the device geometry
  and does not fail, if the device is not removable.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@9546 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-10-27 21:52:33 +00:00
Ingo Weinhold 0707c10377 KPartition::GetPath() now uses the new KPath class, which makes it more convenient to use.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@9545 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-10-27 21:48:47 +00:00
Ingo Weinhold 1d5b7e0b23 _user_mount() now has a flags parameter, too.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@9544 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-10-27 21:45:04 +00:00