Commit Graph

735 Commits

Author SHA1 Message Date
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
Ingo Weinhold ad6059d89f Added missing flags parameter to _kern_mount().
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@9542 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-10-27 21:42:13 +00:00
Ingo Weinhold d68a188e6d Added class KPath. Convenient wrapper for a fixed-sized path buffer.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@9541 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-10-27 21:41:16 +00:00
Ingo Weinhold 42b568aeb5 Moved to headers/private/kernel/disk_device_manager, since it is included by KDiskDevice.h.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@9540 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-10-27 21:38:01 +00:00
Axel Dörfler 7b5e243a4d Added prototype for the new vfs_get_fs_node_from_path() function. It's
currently only used in devfs for the publication of partitions.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@9533 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-10-27 15:22:00 +00:00
Axel Dörfler f2ea9af307 The boot loader now can tell the x86 serial driver the serial port base
addresses as reported by the BIOS.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@9526 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-10-27 01:02:05 +00:00
Axel Dörfler e76877adae Added a function to find a menu item by label.
Added super item/menu getters, and a new fSuperItem field.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@9524 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-10-27 00:56:46 +00:00
Axel Dörfler cc67a158ee Added function for an early boot message before anything else (because of
an error, there is supposed to be one of these at maximum right now).


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@9517 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-10-26 23:29:00 +00:00
Axel Dörfler 63be222e2f Added a arch_thread_init() function prototype.
Changed return types to status_t where appropriate.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@9507 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-10-25 22:08:48 +00:00
shatty a539f68be5 remove static from non-ARCH_x86 thread function prototypes
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@9474 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-10-24 09:08:37 +00:00
Axel Dörfler 2797f8cf8a Renamed heap_init_postsem() to ..._post_sem(). Added prototype for heap_init_post_thread().
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@9456 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-10-23 13:50:27 +00:00
Axel Dörfler 95e3a7215d Added prototype for vm_free_kernel_args().
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@9455 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-10-23 13:49:19 +00:00
Axel Dörfler b0d8e689ac Renamed some more init2 routines to init_post_vm() to make it clearer when
and why they are called.
Introduced a cpu_init_post_vm() that will now call arch_init_post_vm() instead
of letting main() doing it.
Fixed some return types (mostly from int to status_t).


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@9438 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-10-21 01:41:29 +00:00
Axel Dörfler afad65ded7 Replaced all remaining PAGE_SIZE with B_PAGE_SIZE, addr with addr_t.
Removed the definition of PAGE_SIZE and addr.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@9433 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-10-20 00:33:06 +00:00
Axel Dörfler 67a53f72af - the arch_vm_translation_map.c exported functions now have the arch_ prefix
- the above file now also exports a function to finally complete the kernel's
  address space translation map after semaphores became available (was just
  not done before)
- renamed some functions, especially the *_init2() functions are now called
  like *_init_post_area() to indicate they are called after the area functionality
  became available
- removed the _struct suffix from certain structures
- fixed some return types
- added prototype for vm_free_unused_boot_loader_range() to be called by
  arch code.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@9423 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-10-19 23:19:10 +00:00
Axel Dörfler 107f1a6a3f Added an addr_range array for kernel_args.
Removed the "str" field I have no idea what it could have been useful for.
Changed the frame buffer part of the kernel args - "already_mapped" is
no longer there, as it doesn't make a lot of sense.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@9413 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-10-19 17:02:11 +00:00
Axel Dörfler 53ac60d4ea Added the prototype for insert_address_range() that can be used for the
various addr_range arrays in the kernel_args structure.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@9412 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-10-19 16:57:19 +00:00
Axel Dörfler 4976718d0e We now have a memalign() call in the kernel, too (since there already was
some code that relied on malloc() to return memory with some alignment
restrictions fulfilled).


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@9395 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-10-18 15:23:34 +00:00
shatty c811895a7e static functions need static prototypes
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@9390 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-10-18 09:10:20 +00:00
Axel Dörfler e56c30d87d Replaced the old _kern_create_team() syscall with a BeOS style _kern_load_image().
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@9356 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-10-14 17:46:48 +00:00
Axel Dörfler c2452435f2 The group must also know how many wait_for_child() are on it.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@9353 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-10-14 15:40:21 +00:00
Axel Dörfler 67c504a23a Added various session/group/process syscalls.
Changed team_remove_team() to support process groups.
Added new prototype for team_delete_process_group().


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@9347 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-10-14 14:34:30 +00:00
Axel Dörfler 07265ad7c5 Added new process_session/process_group structures, and added all fields
to the team structure to support these concepts.
Moved the dead_children stuff into a sub-structure.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@9346 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-10-14 14:32:58 +00:00
Axel Dörfler b821b7715a Added syscalls for various process/group/session related functions.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@9345 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-10-14 14:31:31 +00:00
Axel Dörfler 7533ce05e9 Moved the thread::sem fields into their own sub-structure for clarity.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@9327 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-10-13 15:16:56 +00:00
Axel Dörfler 2500c27b92 Began work for waitpid() functionality.
Changed the way a dying thread propagates its exit status and reason: we
no longer abuse the semaphore mechanism to carry an extra status value,
instead, wait_for_thread() registers a death_entry with the thread that
will be filled upon exit.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@9322 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-10-13 14:50:52 +00:00
Axel Dörfler a8673f45bf Added prototypes for arch_{store|restore}_fork_frame().
Removed broken arch_thread::current_iframe field.
Introduced new arch_fork_arg structure.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@9295 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-10-12 03:57:31 +00:00
Axel Dörfler 3490a4becc No longer needs the arch_thread.h header.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@9293 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-10-12 03:54:03 +00:00
Stefano Ceccherini 9edda3ec6d cbuf.h now includes OS.h and not kernel.h anymore. This fixes a strange issue in building the ps2 mouse driver. Thanks to Axel for the advice
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@9285 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-10-11 23:14:49 +00:00
Axel Dörfler f3c2082a3d Added prototype for new team_get_address_space() function.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@9278 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-10-10 17:26:34 +00:00
Axel Dörfler 024bab9721 Added vm_delete_aspace() again (although it works a bit differently then before).
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@9273 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-10-10 14:55:36 +00:00
Axel Dörfler a2ff38d818 vm_page no longer keeps a pointer to the vm_cache_ref but to the vm_cache.
This cleans the page handling when having to make an area copy-on-write;
regions belong to vm_cache_ref, pages to vm_cache.
Added prototype for new call vm_copy_area().
Fixed some return types.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@9263 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-10-08 22:54:42 +00:00
Axel Dörfler 1d60efac72 Added a prototype for vm_cache_resize().
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@9258 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-10-08 15:07:57 +00:00
Axel Dörfler 301a2f29ba B_EXACT_KERNEL_ADDRESS doesn't make any sense.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@9257 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-10-08 13:30:04 +00:00
Axel Dörfler 1a705b91b7 Removed team::_aspace_id since it already has a direct pointer to it.
Changed the way a vm_address_space is deleted: instead of having to explicitly
call vm_delete_aspace(), the last vm_put_aspace() will remove it.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@9254 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-10-07 17:11:54 +00:00
Axel Dörfler b1018b0dca Added exec() support function vm_delete_areas().
Fixed some return types.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@9246 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-10-07 15:08:00 +00:00
Axel Dörfler 76dede71c7 Added exec() support function vfs_exec_io_context().
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@9241 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-10-07 14:46:32 +00:00
Axel Dörfler 6acb672431 New syscall for fcntl().
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@9200 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-10-05 13:28:48 +00:00
Axel Dörfler 2130a091c3 Added field for the size of the userland stack; a userland stack is allowed
to have any stack size, it's not a fixed value (well, at least that's what
will happen :)).


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@9189 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-10-04 22:37:44 +00:00
Axel Dörfler 57549ff41e Removed vfs_types.h - it's no longer needed.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@9143 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-10-01 01:31:15 +00:00
François Revol 4a02ef9f55 notify_select_event moved to headers/os/drivers/Drivers.h where it belong
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@9138 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-09-30 23:47:40 +00:00
Ingo Weinhold 5f169e23f4 Added missing syscall _kern_restore_signal_frame().
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@9131 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-09-30 23:24:02 +00:00
Axel Dörfler 85f6117e32 Moved the user_memcpy()/strlcpy()/memset() calls to KernelExport.h.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@9104 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-09-29 10:29:00 +00:00
Axel Dörfler 9ade9e873d Added fields for process group and session IDs.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@9095 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-09-28 19:44:10 +00:00
Axel Dörfler a78a421de8 Renamed sleep() to spin() as that's what it does, and sleep() also doesn't
like unistd.h.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@9040 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-09-23 13:43:57 +00:00
Axel Dörfler 3b00a056c7 Be's native types are no longer allowed in this file (because of the gensyscall utility).
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@9002 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-09-19 18:55:33 +00:00
Axel Dörfler 367fa74ad9 Added needed syscalls for fork(), exec(), and waitpid().
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8971 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-09-15 15:42:02 +00:00
Axel Dörfler e03f6fcfe2 Added the arch_config.h file for PPC, moved some stuff out of arch_cpu.h.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8913 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-09-11 11:04:23 +00:00
Ingo Weinhold b07e2ab15f uint32 -> unsigned int. No need to rely on defined types.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8906 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-09-10 23:12:23 +00:00
Axel Dörfler c2d416e259 Partially covered by arch_config.h and support/ByteOrder.h now/already.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8900 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-09-10 14:18:46 +00:00
Axel Dörfler 1aaaa3689a Moved some arch dependent config information to this new file (from arch_cpu.h).
There is probably more that could be moved in here.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8899 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-09-10 13:08:06 +00:00
Axel Dörfler cfd8ea7832 Added a "cookie" parameter to the vfs_read|write|has_page[s]().
Also added a prototype for the fs_get_file_map() fs call.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8867 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-09-06 21:52:28 +00:00
Axel Dörfler 9f67399eea Made header C++ safe. Also replaced the old "addr" type with "addr_t".
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8866 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-09-06 21:49:38 +00:00
Axel Dörfler 77ca57637e The pnp_node_info structure is now a bit more public and accessible
within the kernel.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8845 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-09-04 17:19:41 +00:00
Axel Dörfler 1b4746c270 Changed the VM store and VFS functions a bit to better match the corresponding driver hooks.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8844 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-09-04 17:18:36 +00:00
Axel Dörfler 3551420440 Eliminated the "data" field in vm_store - since VM stores allocate their structure
themselves, they can just subclass that structure.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8833 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-09-03 19:06:12 +00:00
Axel Dörfler 9d9c6d7de9 No longer in use.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8832 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-09-03 17:07:35 +00:00
Axel Dörfler 5cf089d64f Start of the file cache. For now only exports a vnode store.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8828 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-09-03 16:33:32 +00:00
Axel Dörfler 8b3bd22a1d Added vfs_get_vnode() prototype.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8826 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-09-03 16:00:22 +00:00
Axel Dörfler 36ce5c0164 Changed the way the vnode cache is set - it's now cleaner and can no longer
allocate a cache twice.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8815 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-09-03 14:07:00 +00:00
Ingo Weinhold 75df143732 Introduced a macro specifying the type function parameters are aligned to. Not nice, but seems to help with the automatic generation of syscall code (at least on x86).
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8783 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-09-01 20:15:19 +00:00
Axel Dörfler 655c4f0c99 Resolved the argument type change of _user- vs. _kern_spawn_thread() - introduced
a new thread_entry_func typedef in the kernel only. Unlike thread_func, it accepts
two arguments - that functionality is not exported to the user, though.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8777 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-09-01 15:47:47 +00:00
Axel Dörfler 46365ccea6 Added new syscall _kern_sigprocmask(), renamed other signal syscalls to the
new naming scheme.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8768 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-09-01 12:02:26 +00:00
Ingo Weinhold 383cdedbd2 Several follow-up changes required by the changes either to the VFS
syscalls or to the syscall mechanism (which exposed naming and parameter
inconsistencies).


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8703 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-08-28 20:45:00 +00:00
Ingo Weinhold 9955b99a86 Several VFS related syscalls have been changed, added or removed.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8701 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-08-28 20:38:39 +00:00
Ingo Weinhold 6fec58934a We automatically generate what information are available from syscalls.h,
which from now on relieves us from the duty to maintain syscalls.S and
syscalls.c manually. Either includes a generated file.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8699 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-08-28 20:34:43 +00:00
Ingo Weinhold d7206d7e3b Changes to allow gensyscallinfos to parse it easier (adding markers where the prototypes begin and end, and named all parameters).
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8698 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-08-28 20:29:35 +00:00
Axel Dörfler 364b28a12a Added a call that should exit the boot loader in some way; usually that
would be by rebooting the computer.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8647 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-08-25 15:18:33 +00:00
Axel Dörfler a1b7427b0a A menu item can now be enabled and disabled.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8646 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-08-25 15:17:38 +00:00
Axel Dörfler c28c059292 Added all syscalls needed for the next_dev() call.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8346 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-07-07 16:07:25 +00:00
Axel Dörfler 5c996485b7 Added syscalls for write/read fs info.
Fixed the wrong numbering of the syscall comments.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8306 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-07-05 18:27:31 +00:00
Axel Dörfler 63e846d50d Added a syscall to get a path for a directory node_ref.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8278 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-07-02 18:46:36 +00:00
Axel Dörfler 645e138890 Moved vfs/fd _kern_*() calls to syscalls.h.
Removed some includes from syscalls.h where possible, minor style changes.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8256 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-07-02 01:51:56 +00:00
Axel Dörfler 342e53f418 No longer used; we now have a BeOS compatible replacement in posix/.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8241 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-06-30 02:34:59 +00:00
Axel Dörfler bb45cbbb30 Removed some unneeded includes, making the header easier to swallow.
Renamed the image and node monitor syscalls to the new scheme.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8235 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-06-29 20:12:29 +00:00
Axel Dörfler 649f65cc3a Added help text functionality.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8117 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-06-22 02:52:38 +00:00
Axel Dörfler 3b5e4b4978 New method Target() that returns the previously chosen target.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8115 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-06-22 01:16:43 +00:00
Axel Dörfler 355bc28f32 Added another menu item type (that cannot be chosen in CHOICE_MENUs).
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8109 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-06-22 00:28:28 +00:00
Axel Dörfler 1511772218 Added platform_init_video() prototype.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8108 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-06-22 00:27:04 +00:00
Axel Dörfler 82fc8f393c You can now attach an arbitrary data pointer to a menu item.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8104 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-06-21 21:50:31 +00:00
Axel Dörfler 99192aa450 Work in progress of the boot loader menu.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8093 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-06-21 15:51:59 +00:00
Axel Dörfler f10007bef5 Removed platform_user_menu_requested() call.
Replaced its functionality by a new platform_boot_options() call.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8048 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-06-18 15:25:32 +00:00
Axel Dörfler 746bb367c0 Replaced "addr" with "addr_t", improved other types.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8028 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-06-17 13:22:05 +00:00
Axel Dörfler 9eed5c272c This fixes all "implicit typename" warnings when compiling with GCC 3.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8024 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-06-17 12:51:57 +00:00
Axel Dörfler ede8809e4a This fixes several "implicit typename" warnings with GCC 3.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8023 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-06-17 12:37:40 +00:00
Axel Dörfler 6234c00a97 Added two more platform functions to switch between a logo screen and text mode.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8003 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-06-16 13:25:37 +00:00
Axel Dörfler 10937f43ff Changed the digit '4' to look better with the others.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7999 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-06-16 02:10:27 +00:00
Axel Dörfler 2158ae19ee The kernel_args structure version and size can now be checked and identified
in the kernel.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7986 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-06-15 16:54:04 +00:00
Axel Dörfler e07c1f2cc1 Now stores an inode number along with the other preloaded image data.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7985 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-06-15 16:53:09 +00:00
Axel Dörfler ad3b4b1fad The Node class can now return an inode number.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7984 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-06-15 16:52:19 +00:00
Axel Dörfler 7765cbf6f4 file_system_module_info now contains the module name as well.
The Partition class now maintains a module name, accessible via the new
method ModuleName().


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7983 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-06-15 16:51:33 +00:00
Axel Dörfler d96c1c567e Added new prototypes for publishing/unpublishing partitions.
Made the header C++ safe.
Removed old and no longer needed bootstrap_devfs() prototype.
Removed unused includes.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7971 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-06-15 15:33:53 +00:00
Axel Dörfler 734893f6d2 Renamed all VFS syscalls to the new style.
Improved returned types.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7963 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-06-15 15:18:04 +00:00
Axel Dörfler 57ef9ab8db Fixed return value of some functions.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7962 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-06-15 15:11:37 +00:00
Axel Dörfler f28a7f852d Static variables do have the "s" prefix.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7934 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-06-12 20:59:52 +00:00
Axel Dörfler 960371b741 Replaced <new> with <util/kernel_cpp.h> - this is the kernel.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7913 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-06-11 21:00:10 +00:00
Axel Dörfler c9df0d11c8 Added definition for reserved region's ID.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7885 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-06-10 02:01:59 +00:00
Axel Dörfler 3999c1f3ec Minor cleanup.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7881 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-06-09 18:15:25 +00:00
Axel Dörfler 2705fb7df0 Replaced the regions array with the nicer text_region and data_region members.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7877 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-06-09 02:51:27 +00:00
Axel Dörfler e1f53d9bbe Added prototype for vm_unreserve_address_range().
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7874 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-06-09 02:17:16 +00:00
Axel Dörfler 11727a9c43 B_EXACT_KERNEL_ADDRESS is now the same as B_EXACT_ADDRESS; it will be
removed once it is no longer referenced.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7873 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-06-09 01:06:35 +00:00
Axel Dörfler dd9e837ebd Added prototype for vm_reserve_address_range().
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7872 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-06-09 01:05:32 +00:00
Axel Dörfler ee7e4109ad Removed REGION_WIRING_* and REGION_ADDR_* and replaced them by their
BeOS counterparts.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7849 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-06-08 09:33:51 +00:00
Axel Dörfler dab1088ba3 "addr" to "addr_t", cleanup.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7847 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-06-08 08:35:39 +00:00
Axel Dörfler 3c9e531071 Removed NewOS LOCK_KERNEL and LOCK_RW - replaced by B_READ_AREA, and friends.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7846 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-06-08 08:24:53 +00:00
Axel Dörfler 56b4e8289c We temporarily need a BeOS compatible cache implementation.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7830 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-06-08 05:59:53 +00:00
Axel Dörfler 2defe47a24 Removed no longer used system call.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7814 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-06-07 21:12:30 +00:00
Axel Dörfler aad3f70c86 Moved the public fs functions to fs_interface.h.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7800 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-06-07 14:21:51 +00:00
Axel Dörfler 35c681e031 Ah, that looks better (and actually works...).
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7791 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-06-07 02:06:04 +00:00
Axel Dörfler 67efc07974 MAX_BOOT_CPUS is defined in kernel_args.h so we better include it.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7790 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-06-07 02:03:29 +00:00
Axel Dörfler a8061da698 Removed system_time() prototype; it's already defined in OS.h.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7711 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-05-31 23:31:15 +00:00
Axel Dörfler 2c628d4aef gKernelEntry is no longer necessary.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7708 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-05-31 23:11:47 +00:00
Axel Dörfler 78f42e3f33 Moved the addr_range struct to a separate header.
Changed the kernel image data to a preloaded image as well, to simplify
handling in the kernel.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7704 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-05-31 22:44:24 +00:00
Axel Dörfler ca109e727d Moved the addr_range struct out of kernel_args.h to a separate file.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7703 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-05-31 22:41:25 +00:00
Axel Dörfler 6fccd3b788 Changed elf_lookup_symbol_address() prototype - due to the way it now returns
its information, it's no longer safe to call this function outside the debugger.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7697 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-05-31 21:38:09 +00:00
Axel Dörfler ecfed6a718 Added fields to hold debug symbol information.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7696 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-05-31 21:33:13 +00:00
Axel Dörfler fa1ddc4f0e For debugging purposes, the boot loader is now able to load an additional
symbol table into memory and hand it over to the kernel.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7695 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-05-31 20:30:20 +00:00
Axel Dörfler 0865e4b204 Added syscall for rename_thread(), courtesy of Jack Burton.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7631 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-05-24 12:12:58 +00:00
Axel Dörfler adbaa7817e It's now B_MAX_CPU_COUNT rather than SMP_MAX_CPUS.
Removed unused headers.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7608 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-05-18 09:42:13 +00:00
Axel Dörfler 814291ded8 No need to include <kernel.h>.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7607 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-05-18 09:37:20 +00:00
Axel Dörfler 6e062dd1b5 Added an ID field that connects the real kernel image with the preloaded image structure.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7530 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-05-11 23:41:34 +00:00
Axel Dörfler d81a053b90 Bye, bye elf_lookup_symbol(), hello get_image_symbol().
Also renamed elf_load_kspace() to load_kernel_add_on(), and friends.
The new unload_kernel_add_on() now has an image_id as parameter, no longer
a path (like the former elf_unload_kspace()).


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7529 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-05-11 19:54:10 +00:00
Axel Dörfler 2b6b9a5afb Added a comment (now that we're using a hash table).
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7523 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-05-11 17:20:40 +00:00
Axel Dörfler 11a5baaf67 Updated the private kernel image API to be more efficient (no longer needs
to acquire the team spinlock).
Renamed the user syscalls to the new style.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7521 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-05-11 15:04:36 +00:00
Axel Dörfler d07a6f89a0 Actually, elf_region already contains an area_id field...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7517 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-05-11 13:43:39 +00:00
Axel Dörfler c2c0779e26 Added two fields that ease the kernel initialization of the preloaded images.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7503 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-05-10 16:50:20 +00:00
Axel Dörfler f6de96a7e6 Added kernel_args_strdup() function as a strdup() replacement.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7499 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-05-10 16:46:38 +00:00
Axel Dörfler 5ac1540121 Changed the "stat" related syscalls to have an additional parameter that specified
the size of the stat structure to allow extensions of that structure.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7493 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-05-10 14:31:16 +00:00
Axel Dörfler 44c7b3db82 pcihdr.h can now be found in src/prefs/devices.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7464 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-05-08 18:53:54 +00:00
Axel Dörfler 5ed66da080 Made the header C++ safe.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7460 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-05-08 18:35:30 +00:00
Jérôme Duval 3bf8a54a45 Forgot pcihdr.h, copied from the pci module
The pci module should be fixed to take this one instead


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7446 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-05-07 15:21:02 +00:00
Axel Dörfler f4e3a8d25f This file don't belong here and is not used at all.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7440 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-05-07 00:39:07 +00:00
Axel Dörfler 6e5cac2da6 Private exported kernel functions of the device manager.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7439 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-05-07 00:36:44 +00:00
Axel Dörfler cdbef38048 Changed some return codes to status_t where appropriate.
Renamed vfs_bootstrap_all_filesystems() to vfs_bootstrap_file_systems().
Renamed vfs_register_filesystem() to vfs_register_file_system().
Added new call vfs_mount_boot_file_system().


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7421 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-05-06 01:20:41 +00:00
Axel Dörfler 424c06a163 We've now switched to a BeOS compatible stdio.h in posix/.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7366 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-05-03 12:20:10 +00:00
Axel Dörfler eaa9132647 Changed some function return codes to return a status_t where appropriate.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7330 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-04-27 11:54:00 +00:00
Axel Dörfler 1bde925efe Is now also usable from plain C.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7329 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-04-27 11:53:08 +00:00
Axel Dörfler 337d1d1bab Made C++ safe.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7328 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-04-27 11:52:37 +00:00
Axel Dörfler 179fd09879 Removed the unused argument from module_init().
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7319 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-04-26 21:04:06 +00:00
Axel Dörfler f6a31876ce Added system_info.h header and syscall for get_system_info().
Added support functions in sem.h and port.h that return some stats.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7289 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-04-21 22:46:35 +00:00
Axel Dörfler 4eedc697c3 platform_get_boot_partition() will now also get the boot device as parameter.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7284 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-04-21 11:10:32 +00:00
Axel Dörfler 42033342bc Added kernel_args heap functions.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7282 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-04-21 02:33:07 +00:00
Axel Dörfler 840ed4b067 Added a dummy member of the platform_kernel_args structure: obviously, the
kernel didn't count an empty structure, while the boot loader reserved
4 bytes for it - dunno why, a _PACKED everywhere didn't help; it's probably
a compile option issue.
To be on the safe side always, I've now added this dummy.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7278 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-04-21 01:32:44 +00:00
Axel Dörfler 95bd98d938 Fixed addr_range structure: struct name didn't match typedef name, now uses
addr_t for the address base/size instead of (the non-portable) uint32.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7277 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-04-21 01:29:55 +00:00
Axel Dörfler d9194b620b We also need the size of the dynamic section.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7275 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-04-21 01:27:02 +00:00
Axel Dörfler deb0d0de8a Added platform_start_kernel() prototype.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7264 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-04-20 23:41:38 +00:00
Axel Dörfler 85429b59c0 Added definition for the gKernelEntry variable.
Updated the license; it doesn't contain a single line of the former stage2.h
anymore, and we don't have to blame Travis for it :)


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7263 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-04-20 23:40:57 +00:00
Axel Dörfler 62dbb799d5 Replaced addr with addr_t.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7262 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-04-20 23:38:07 +00:00
Axel Dörfler e1a6f46dc9 Removed ktypes.h dependency; replaced "addr" with "addr_t", some other minor cleanup.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7261 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-04-20 23:37:00 +00:00
Axel Dörfler 54327b01b3 Added prototype for _user_rename_thread().
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7178 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-04-06 21:30:06 +00:00
Axel Dörfler 56c7aeaee8 Fixed a typo, thanks to Jack Burton for pointing this out.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7060 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-03-23 15:37:48 +00:00
Axel Dörfler c04864640e Removed addr_t typedef (it's now in sys/types.h).
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7053 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-03-22 19:23:47 +00:00
Axel Dörfler 1e14a27ee8 Changed prototype for thread_init(), renamed thread_init_percpu() to thread_per_cpu_init().
Removed thread_kill_thread_nowait(), removed prototype for non-existing thread_kill_thread().


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7009 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-03-17 15:27:19 +00:00
Axel Dörfler 14f5ad8ce4 Separated the team functions from the thread.h header into the new team.h.
Fixed fd.h to include that file.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6995 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-03-16 02:40:03 +00:00
Axel Dörfler 8131e02c55 Made C++ safe.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6994 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-03-16 02:24:42 +00:00
Axel Dörfler bbd8e7fbd9 Removed unneeded prototype.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6981 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-03-15 00:56:02 +00:00
Axel Dörfler 4a2e872cca Applied NewOS change 1914: moved APIC setup into the kernel due to a
problem with the APIC clock speed test.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6980 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-03-14 22:54:00 +00:00
Axel Dörfler c27ed74e34 Replaced timer.h with a cpp safe version.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6977 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-03-14 21:08:25 +00:00
Axel Dörfler 188b2566b6 Cleanup, fixed return codes.
Removed the local_timer_cancel_event() function, since it is not used anywhere.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6973 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-03-14 18:03:18 +00:00
Axel Dörfler 7d154f91ff arch_setup_signal_frame() can now fail.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6970 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-03-14 17:58:11 +00:00
Axel Dörfler a2b6866fb9 Fixed compilation without having included boot/kernel_args.h.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6969 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-03-14 17:42:18 +00:00
Axel Dörfler ed3f63ae37 Added a call to move the contents of one list to another.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6957 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-03-12 21:34:20 +00:00
Axel Dörfler 3f7d503ff1 Fixed DoublyLinkedList::Iterator().
Switched back to a pointer to the list in the Iterator internally, so
that it can still be just copied without having to overload "=", etc.
This fixes the boot loader build, too (shame on me).


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6941 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-03-10 00:49:52 +00:00
Axel Dörfler 03d14a728a kernel_cpp.h can now safely be included from C code, great, isn't it?
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6940 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-03-10 00:44:39 +00:00
Axel Dörfler 9e5bff5feb Replaced the syscall for thread_get_current_thread_id() with one for find_thread().
Renamed the thread/team syscalls to the new naming scheme.
Some other minor cleanups.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6867 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-03-03 00:52:47 +00:00
Axel Dörfler 8e623d69b5 Made it a bit nicer to use.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6866 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-03-03 00:50:01 +00:00
Axel Dörfler ac526351a8 Removed user_strncpy()/strcpy() and backends.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6699 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-02-23 05:26:08 +00:00
Axel Dörfler 7d5be143e8 We have status_t.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6692 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-02-23 04:30:46 +00:00
Axel Dörfler 31bedae9ea Replaced SYS_MAX_OS_NAME_LEN with B_OS_NAME_LENGTH.
Replaced "addr" with "addr_t".
And while I was at it, I also added the additional team parent/child members
as found in NewOS change 1930 (not applying the whole change yet).


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6686 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-02-23 03:55:53 +00:00
Axel Dörfler 2e6b261697 Small cleanup.
Replaced SYS_MAX_OS_NAME_LEN with B_OS_NAME_LENGTH.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6677 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-02-23 03:14:49 +00:00
Axel Dörfler 166515d663 Replaced the scary team_get_team_struct() with the more pleasing team_is_valid().
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6676 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-02-23 03:13:54 +00:00
Axel Dörfler 0fc073341c Renamed CHECK_USER_ADDRESS to IS_USER_ADDRESS.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6675 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-02-23 02:18:32 +00:00
Axel Dörfler ab7ada645a Renamed the CHECK_USER_ADDRESS() macro to IS_USER_ADDRESS().
Added a IS_KERNEL_ADDRESS() macro.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6673 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-02-22 14:56:50 +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 9289abf0e4 Added _kern_debug_output() syscall.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5353 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-11-13 22:07:36 +00:00
Axel Dörfler 3d78db8f17 Removed B_KDEBUG_* definitions; they are already part of KernelExport.h.
dbg_register_file[][] reserves now space for SMP_MAX_CPUS CPUs.
Removed old dbg_{set|get}_serial_debug() functions.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5308 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-11-11 04:01:31 +00:00
Axel Dörfler e45975b879 Definitions were doubled in vm_translation_map.h and arch/vm_translation_map.h.
The former now only contains the structure definitions, while the other one
contains the arch-specific function prototypes (which do not have the arch_
prefix).
Added a ToDo comment to remember cleaning this up one day.
Made all headers C++ safe, simplified where possible.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5197 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-10-28 21:10:00 +00:00
Axel Dörfler e5fabd56bf Added prototype for setting OpenFirmware's callback for MMU actions.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5196 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-10-28 21:06:42 +00:00
Axel Dörfler f39e6cd6ec Added a definition for the MSR[EE] bit (MSR_EXCEPTIONS_ENABLED).
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5195 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-10-28 21:05:31 +00:00
Axel Dörfler 69be5fbb93 Removed private functions, made C++ safe.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5192 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-10-28 18:22:37 +00:00
Axel Dörfler 229ad83bf8 Renamed arch_int_is_interrupts_enabled() to arch_int_are_interrupts_enabled().
Replaced definitions for enable_interrupts() and are_interrupts_enabled()
with static inlines.
Made int.h C++ safe.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5190 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-10-28 17:55:20 +00:00
Axel Dörfler 9699c52992 Added the syscall for set_real_time_clock().
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5187 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-10-28 13:30:10 +00:00
Tyler Dauwalder a03a04e027 - Added/moved ddm string-length and buffer-size constants to DiskDeviceDefs.h
- Converted all uses of B_{FILE,OS}_NAME_LENGTH in ddm_userland_interface.cpp
  to appropriate ddm constants.
- Made module names B_PATH_NAME_LENGTH long.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5181 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-10-28 00:13:11 +00:00
Tyler Dauwalder e176a055ac Added max parameter-string buffer-size limit of 32KB.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5178 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-10-27 08:10:52 +00:00
Tyler Dauwalder 2094b5ffbb Updated to use new parametersSize params where applicable.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5156 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-10-25 08:36:17 +00:00
Axel Dörfler f6cb2b865e rtc_set_system_time() is no longer needed.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5146 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-10-24 15:08:02 +00:00
Axel Dörfler a34e8cc39f Applied our style guide, made the headers C++ safe.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5139 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-10-24 11:58:21 +00:00
Axel Dörfler 2218f79ede Added real-time clock support written by Jeff Ward (for the kernel).
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5137 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-10-24 10:21:10 +00:00
Axel Dörfler ace56d68aa Removed the AddNode() method from the Directory class.
Moved gRoot into the private RootFileSystem header.
Added new register_boot_file_system() function.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5098 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-10-21 03:55:53 +00:00
Axel Dörfler db0fd9726e Added functions to set and get the segment register (as segment_descriptor).
Added constructors to block_address_translation and segment_descriptor
that will clear its memory (could be done more efficiently though, it just
uses memset()).
Added definitions for the MSR (machine state register).
Added tlbsync() macro (direct assembler call).


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5092 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-10-21 03:07:44 +00:00
Axel Dörfler 50ba16fccf Made C++ safe.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5075 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-10-17 14:42:45 +00:00
Axel Dörfler 8c1ae50791 Adoption of Travis' PPC code. Changed where needed.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5071 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-10-17 13:58:41 +00:00
Axel Dörfler 78a4f584f5 Added the addr_t typedef (should replace the commonly used addr type some day).
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5068 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-10-17 13:49:41 +00:00
Axel Dörfler fb7bec78e3 Created a new arch-specific vm_translation.h header - it's not included
in this file.
Moved the vm_translation_map_get_pgdir() function to the x86 specific
header.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5066 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-10-17 13:36:38 +00:00
Axel Dörfler db5620838a Moved the vm_translation_map_get_pgdir() function from arch/vm_translation_map.h
into this file (and replaced the prefix with i386_).


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5065 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-10-17 13:35:12 +00:00
Axel Dörfler 57c3918258 Added the arch_cpu_sync_icache() function from NewOS.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5061 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-10-17 12:53:45 +00:00
Axel Dörfler b73b3e5a2d Changes for the ELF loader in the boot loader.
Removed the arch_mmu_alloc() function, added (empty) arch_mmu_free() function.
Added platform prototypes for allocating and freeing a region.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5044 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-10-16 17:55:21 +00:00
Axel Dörfler e44d4929ce Made it independent.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5043 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-10-16 17:52:35 +00:00
Axel Dörfler c550d8537a Cleaned up the ELF header a lot, added missing definitions.
Added some C++ only accessor methods for convenience.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5042 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-10-16 17:51:53 +00:00
Axel Dörfler c3e36ff498 Now uses the DoublyLinked::List class instead of the C list stuff.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5016 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-10-14 00:26:04 +00:00
Axel Dörfler da69f27233 The iterator was broken.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5006 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-10-13 03:19:21 +00:00
Axel Dörfler 8174112d40 Almost straight copy of the list.h doubly linked list implementation to
a C++ one ready for kernel use, but very basic, too.
Has not been tested yet, expect some bug fixes soon.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5001 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-10-13 01:57:05 +00:00
Axel Dörfler d172714dbd Lazy man's GCC 3 adaption.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4996 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-10-12 00:48:49 +00:00
Axel Dörfler 1d8adcd3f6 Added two more arch related calls for the OpenFirmware platform.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4989 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-10-11 18:59:08 +00:00
Axel Dörfler ecc5968ab8 Added some more CPU functions.
Added an alternative page_table_entry::SecondaryHash() signature.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4988 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-10-11 18:57:35 +00:00
Axel Dörfler d3c6ba4606 Added some CPU specific functions ({get|set}_sdr1()).
Added MMU definitions for the PowerPC.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4979 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-10-08 00:28:07 +00:00
Axel Dörfler 5028c44913 Now includes <platform_kernel_args.h> as well as <arch_kernel_args.h>
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4976 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-10-08 00:17:24 +00:00
Axel Dörfler 64881aa93e Added platform_kernel_args.h for the BIOS IA32 platform.
platform_stage2_args.h can now only be included from stage2_args.h.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4973 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-10-07 23:39:45 +00:00
Axel Dörfler b4d2f3a8e7 Renamed arch_stage2.h to arch_kernel_args.h.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4972 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-10-07 23:34:59 +00:00
Axel Dörfler 56ce04ab02 Contents moved to kernel_args.h and platform_kernel_args.h
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4970 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-10-07 23:15:16 +00:00
Axel Dörfler 662cc71f2c heap size is now part of stage2_args.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4961 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-10-07 22:10:55 +00:00
Axel Dörfler bf25fe99f6 Added new platform_kernel_args - might need an arch dependent part as well, though.
Only stage2_args.h can now include platform_stage2_args.h.
Only kernel_args.h can now include platform_kernel_args.h.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4960 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-10-07 22:02:43 +00:00
Axel Dörfler 79dd9caf61 Moved the kernel_args structure to the new kernel_args.h header file.
stage2.h is now of interest for the stage2 boot loader only.
stage2_struct.h is no longer needed.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4959 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-10-07 21:58:48 +00:00
Axel Dörfler f432eca440 Now use the new kernel_args.h header file.
Added C++ guards.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4958 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-10-07 21:56:32 +00:00
Axel Dörfler 774d1ff304 The Directory abstract base class has a new method IsEmpty().
New/changed function prototypes.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4879 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-10-01 01:04:08 +00:00
Axel Dörfler 6e5bc20607 Added some more functions to the platform abstraction API - it's now
possible to select a boot device which is used directly.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4878 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-10-01 01:02:36 +00:00
Axel Dörfler b337ddf60a Added a new method Mount() to Partition, Scan() now takes a parameter to
decide if it should mount file systems on the partition or not.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4877 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-10-01 01:00:53 +00:00
Ingo Weinhold 541c05cc85 We always resize the partition contents.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4867 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-09-29 21:43:11 +00:00
Ingo Weinhold 63c99af405 Added Unset(). Also added some new classes that don't work yet and are uncommented for that reason.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4866 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-09-29 21:42:33 +00:00
beveloper 79f40e4322 renamed line into pin, since in PCI terminology, IRQ interrupt number == line, and the physical interrupt wire == pin
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4862 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-09-29 19:09:32 +00:00
beveloper fb5398b8f7 removed
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4861 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-09-29 19:09:12 +00:00
Ingo Weinhold eae4df8320 Fixed the usage of CHECK_USER_ADDRESS(). R5 has the inverse memory layout, so we need to adjust the KERNEL_BASE macro when compiling for it.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4853 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-09-29 18:50:02 +00:00
Ingo Weinhold 58bdbab626 Added a KPartition listener mechanism and made use of it to keep shadow partitions with the corresponding physical ones in sync.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4848 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-09-28 22:04:13 +00:00
Ingo Weinhold 583f8c1d02 Added set_disk_device_job_error_message() for setting an error message, when an error occurs while executing a job.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4843 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-09-28 19:29:36 +00:00
Ingo Weinhold ac8b60ce67 Added setter/getter for an error message. Should be set to something informative when while executing a job an error occurs.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4842 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-09-28 19:28:27 +00:00
Ingo Weinhold 69cb08c01c UninitializeContents() returns an error code now.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4841 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-09-28 19:26:18 +00:00
Ingo Weinhold e0e5d17627 Handy functions to copy from and to userland reference parameters.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4837 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-09-28 15:12:27 +00:00
Ingo Weinhold 6e855f0317 Removed the resizeContents/force from the resize/move syscalls. Fixed resize/move related bugs (partition was not check for status uninitialized).
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4783 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-09-21 21:26:12 +00:00
Ingo Weinhold dafaf4c360 Added IsUninitialized() convenience method.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4781 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-09-21 21:21:10 +00:00
Ingo Weinhold 20c33ce79b Added syscall for uninitialization.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4778 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-09-21 19:13:54 +00:00
Ingo Weinhold 5c699c6735 Add a field mount_cookie to the partition_data structure and
respective setter/getter methods to the KPartition class.
If a partition is mounted, the field will contain the cookie the
FS's mount() hook passed back to the VFS. This way the FS has
access to its internal data structures. We need the cooperation
of the VFS to get the cookie.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4776 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-09-21 18:25:42 +00:00
shatty 853d2f32a6 moved to public header
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4773 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-09-20 20:50:46 +00:00
shatty b89786b69e change to public resource.h
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4772 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-09-20 20:47:27 +00:00
beveloper f120b01748 added locking
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4743 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-09-17 20:44:10 +00:00