Commit Graph
613 Commits
Author SHA1 Message Date
Ingo Weinhold 7eb12758ed * Fixed the locking functions: A lock also requires a reference to be
kept.
* Fixed find_{disk_device,partition}().
* Implemented delete_partition(). The device/partition management functions
  should now be complete.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3654 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-25 00:04:55 +00:00
Ingo Weinhold 86e8beea7d Added boolean parameter to IsReadLocked() to specify when a write lock shall not be considered as read lock.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3653 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-25 00:00:34 +00:00
Ingo Weinhold eba400a809 We need the virtualdrive header for the file disk device stuff.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3652 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-24 23:58:25 +00:00
Ingo Weinhold f5650b0a07 No real change. Added and removed debug output. :-)
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3651 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-24 23:57:33 +00:00
Ingo Weinhold b23394f957 * Implemented what was left to do for KDiskDevice and KPartition
management regarding removal and deletion of objects.
* Fixed the file disk system related stuff. KFileDiskSystem now uses the
  virtualdrive driver. The former method was seemed simple and brilliant,
  but the B_SET_PARTITION ioctl wouldn't work.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3650 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-24 23:56:16 +00:00
Axel Dörfler 1b4a09278b A simple heap implementation for the boot loader - already tested, and working well.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3641 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-24 18:05:54 +00:00
Ingo Weinhold 6ab18748f3 Removed invocations of UsePublicHeaders, which was a no-op anyway.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3628 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-23 16:53:22 +00:00
Ingo Weinhold 24d57dc067 Added KFileDiskDevice and the file with the disk device type strings.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3614 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-22 23:28:04 +00:00
Ingo Weinhold 62b9e141e1 Added a find_disk_system(). I first thought, this might be a good idea, but I'm not so sure anymore.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3608 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-22 23:12:20 +00:00
Ingo Weinhold 9007acaee3 Added Dump(). Small fixes.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3605 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-22 23:04:56 +00:00
Ingo Weinhold fcf461b32c Implemented the scanning functionality.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3604 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-22 23:03:58 +00:00
Ingo Weinhold b22221ad17 Minor changes to the KDiskSystem interface.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3603 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-22 23:03:17 +00:00
Ingo Weinhold 38d5e95af9 Support for creating and deleting (the latter not yet implemented) file disk devices. Added file system addition.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3601 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-22 23:00:20 +00:00
Ingo Weinhold bdc530c737 Some small adjustments for KFileDiskDevice. Added Dump().
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3600 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-22 22:57:42 +00:00
Ingo Weinhold 17750c7774 Added a special disk device class, that is responsible for representing
files as disk devices. This will not only be great for testing the
file and partitioning system modules' writing capabilities, it will also
just be a nice feature to have.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3598 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-22 22:54:16 +00:00
Axel Dörfler dcec969499 get_driver_settings_string() now returns the new B_BUFFER_OVERFLOW code
if the buffer is too small for the settings string.
Added/changed some comments.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3548 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-16 22:17:09 +00:00
Axel Dörfler 5133bded7f Fixed some warnings that occured with -Wall - the tests should be compiled
with this by default, like the whole project, too.
Removed the B_FILE_NAME_LENGTH definition, since our headers are now correct.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3546 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-16 19:56:33 +00:00
Axel Dörfler b1b0cf9114 The '=' symbol can now be used without surrounding white space: it will
be accepted between the parameter name and its first value - but it will
be added to any other values for compatibility reasons.
put_string() now correctly quotes strings if needed - the new put_chars()
function puts out a string unchanged (both only used internally anyway).
Added some comments.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3543 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-16 17:13:10 +00:00
Axel Dörfler 2c67210865 Added two more ToDo items so that I do not forget about them.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3531 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-15 21:14:27 +00:00
Axel Dörfler 7862de2e87 Removed the old driver_settings.c file.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3521 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-15 13:22:50 +00:00
Axel Dörfler 5d25f8fb7b Added the new kernel_os_main.o to the kernel build.
Replaced the "hostname" app with the "tls_test" in the standard build.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3520 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-15 13:17:01 +00:00
Axel Dörfler 1907b4d0ca Added libroot/os/driver_settings.c to the build - this is now also part
of the new kernel_os_main.o object file.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3519 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-15 13:14:36 +00:00
Axel Dörfler 3e758cd63f Removed the core/driver_settings.c from the kernel build.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3518 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-15 13:13:24 +00:00
Axel Dörfler 7fc8f0544e Fixed addition of empty parameters in certain situations.
Improved the output of get_driver_settings_string().
Small cleanup.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3516 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-15 13:03:49 +00:00
Axel Dörfler b959dda1b7 This replaces kernel/core/driver_settings.c - its functionality will now
be available to userland applications as well.
Furthermore, the API & grammar has been extended. There is now a '=' allowed
between the key and its values. Also, '\n' can now be replaced with ';'. These
changes allow flat driver_settings strings.
It doesn't work perfectly right now, but it's a start. A test application
will be added soon, the kernel file will be removed soon as well, and the
build updated.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3515 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-15 04:06:43 +00:00
Ingo Weinhold 08427f8cfc Publish partitions in _ScanPartition() and unpublish them in the destructor.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3510 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-14 00:08:56 +00:00
Ingo Weinhold f7672ebc25 * Made {Publish,Unpublish}Device() virtual and implemented them in
KPartition and as no-ops in KDiskDevice.
* Prefixed partition names with "obos_" to not interfere with R5's
  partition names.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3509 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-14 00:06:57 +00:00
Ingo Weinhold 2609ebac90 Several fixes necessary to get the partition scanning working.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3506 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-13 22:08:10 +00:00
Ingo Weinhold ef9b1b52ee Implemented a preliminary disk device scanning in KDiskDeviceManager.
Some changes to KPartition, KDiskDevice, KDiskSystem on this way.
Still missing is KPartition::Publish() and its invocation in
KDiskDeviceManager. Then everything should be in place to start with
porting the scanning parts of our disk system modules.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3486 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-12 22:21:10 +00:00
Axel Dörfler f3df767f76 Added a BeOS compatible strdup() implementation; unlike other strdup()
implementations (and against its standard behaviour), it does now
handle a NULL string parameter gracefully.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3485 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-12 19:35:33 +00:00
Axel Dörfler 0c6fce04e6 Removed the BSD strdup() routine since it is not BeOS compatible.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3484 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-12 19:34:03 +00:00
Axel Dörfler 6b3445e288 Applied NewOS patch 17xx (its repository is currently down...): now sets
the fs register correctly - not that it should have much effect since it's
rarely used anyway (no reason to might be wrong, though) :)


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3483 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-12 03:41:38 +00:00
Ingo Weinhold ac63679417 Small changes in the header, and implemented everything needed for scanning.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3480 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-11 22:04:34 +00:00
Ingo Weinhold 1bf21e6a40 * Added CreateChild().
* Added Publish/UnpublishDevice(). Not implemented yet.
* small fixes


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3479 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-11 22:03:26 +00:00
Ingo Weinhold 13a452eaee Added an Init() amd dealt with the PrettyName().
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3478 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-11 22:00:59 +00:00
Ingo Weinhold 450c7dd609 Added basic disk system management.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3477 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-11 21:59:27 +00:00
Ingo Weinhold ec9690ccf2 Added new files, and we now link against our kernelland_emu library, because modules are used.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3469 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-10 22:47:10 +00:00
Ingo Weinhold 6778f21163 Some fixes in the header and a very basic implementation. In theory the functionality for scanning partitions is implemented, as well as loading/unloading the partition module.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3464 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-10 22:40:09 +00:00
Ingo Weinhold 0b6c74bbe3 Implemented some more bits of KPartition. Added a very useful Open() method.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3463 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-10 22:37:43 +00:00
Ingo Weinhold f254d01839 Implemented KDiskSystem. Should be almost complete.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3461 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-10 22:36:31 +00:00
Ingo Weinhold 29a37d780d Implemented some basics of KDiskDeviceManager.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3460 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-10 22:35:57 +00:00
Ingo Weinhold 537635f1d1 Implemented basic parts of KDiskDevice.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3459 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-10 22:35:12 +00:00
Ingo Weinhold be433342af A read-/write locker. Again, something that might also be useful elsewhere in the kernel.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3457 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-10 22:32:33 +00:00
Ingo Weinhold 86ea6f7f9b A slightly modified BLocker. We should provide something like this for the kernel.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3456 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-10 22:29:52 +00:00
Ingo Weinhold 1844af0bfa Mostly empty implementations for the disk device manager classes. Save KPartition which is partially done.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3455 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-09 23:10:09 +00:00
Axel Dörfler 121a2e82c0 Really fixed build (while keeping the app in the build).
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3277 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-05-21 03:35:56 +00:00
Bruno G. Albuquerque 7be092433c Fixed build.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3276 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-05-21 03:00:38 +00:00
Axel Dörfler cb7bb042d1 Fixed a typo in the Jamfile that prevented "cpuinfo" to build.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3252 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-05-17 15:35:55 +00:00
beveloper 3b3c3547a5 Updated jamfiles to match recent cvs changes.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3249 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-05-16 23:31:38 +00:00
Axel Dörfler 553f11cc8b The cpuinfo command is now locally built and added to the tree.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3238 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-05-13 15:26:28 +00:00