Ingo Weinhold
ec4ef3525f
Added a KDiskDevice* parameter to the constructor.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4172 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-07-31 22:46:38 +00:00
Ingo Weinhold
57c8af057e
Replaced the Vector parameter of CreateMoveJob() by a simple array. Added CreateUninitializeJob() (empty implementation).
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4171 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-07-31 22:45:26 +00:00
Ingo Weinhold
68f12c0221
Implemented job related functions.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4138 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-07-30 17:49:50 +00:00
Ingo Weinhold
fe05b0ac95
Added and implemented job related syscalls.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4137 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-07-30 17:48:08 +00:00
Ingo Weinhold
c34b4f49f4
Added ActiveJobIndex().
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4136 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-07-30 17:46:59 +00:00
Ingo Weinhold
c30e81a7bc
Added partition_data::content_size, job cancel statuses and a function needed to support canceling an pausing of jobs (not implemented yet).
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4130 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-07-30 00:27:25 +00:00
Ingo Weinhold
71346466b8
Added user_partition_data::content_size field. Small change to support a NULL parameter in _kern_supports_resizing_partition().
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4129 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-07-30 00:24:22 +00:00
Ingo Weinhold
738e4a700b
Support for the added partition content size attribute.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4128 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-07-30 00:21:21 +00:00
Ingo Weinhold
ace55d9bfc
Implemented the job related functionality. Moved scanning of partitions into the respective job class.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4127 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-07-30 00:18:16 +00:00
Ingo Weinhold
6eaec7ddda
Some changes to the interface (added missing methods and such). Implemented the class almost completely. Basically only the notification stuff is still missing.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4126 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-07-30 00:16:15 +00:00
Ingo Weinhold
a31533cbec
Brought the interface up to date. Added empty implementations for all methods, save the one creating a job for scanning, which is complete.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4125 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-07-30 00:14:27 +00:00
Ingo Weinhold
38bd13fcf9
Some changes to the interface. Implemented most of the methods. The notification stuff is still missing.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4124 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-07-30 00:12:39 +00:00
Ingo Weinhold
95152e1e98
Implemented remaining partition modification syscalls. Some small fixes. Some refactoring.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4068 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-07-24 22:58:06 +00:00
Ingo Weinhold
1d8675355f
Added some more support for tracking changes.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4067 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-07-24 22:56:53 +00:00
Ingo Weinhold
073eb9aead
Added constants identifying operations on partitions.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4066 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-07-24 22:55:22 +00:00
Ingo Weinhold
ee1ebe375c
* Added ShadowPartitionChanged() to KDiskSystem and respective hooks
...
to the module interfaces. So the disk system will be informed, when a
shadow partition has changed and it is allowed to do necessary
adjustions (e.g. adjusting the cookie, the parameters, or on
partitioning system initialization even creating special child
partitions (apple partitioning system)).
* Added `int32 *index' parameter to ValidateCreateChild(). So the
partitioning system can report at which index the new child shall be
inserted.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4065 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-07-24 22:53:23 +00:00
Ingo Weinhold
5ee968b3df
* Added a change counter parameter to all partition querying and
...
modification functions. Don't know why I didn't right from the start.
* Implemented _kern_resize_partition().
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4045 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-07-22 00:11:03 +00:00
Ingo Weinhold
f865306260
Some comments regarding the partition_data struct.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4044 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-07-22 00:05:38 +00:00
Ingo Weinhold
f985036e31
Reordered for aesthetical reasons. :-)
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4043 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-07-22 00:04:27 +00:00
Ingo Weinhold
02885b7d6e
* Got rid of SetContentType(). It is set automatically now, to the
...
PrettyName() of the responsible disk system.
* Added change counter support and changes tracking.
* Added UninitializeContents().
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4042 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-07-22 00:03:35 +00:00
Ingo Weinhold
c0b8ba64fd
_kern_supports_moving_partition() now returns the list of partitions that need to be unmounted for moving.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4040 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-07-21 14:17:03 +00:00
Ingo Weinhold
df3b8c625e
Added partition modification syscalls with empty implementations.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4035 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-07-20 22:39:37 +00:00
Ingo Weinhold
71a5281923
Implemented _kern_get_partitionable_spaces(). Got rid of user_partitionable_space_data.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4031 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-07-20 17:18:48 +00:00
Ingo Weinhold
3ee6c178d5
Some fixes of/changes to the API. Shortened names where possible.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4030 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-07-20 17:17:00 +00:00
Ingo Weinhold
2a596c013a
Implemented all read-only (more precisely: not writing) methods. Small changes.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4029 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-07-20 17:15:35 +00:00
Ingo Weinhold
752cec6459
Several changes to the _kern_{supports,validate}_*() calls:
...
* Removed the disk_system_id parameter where superfluous.
* Got rid of the `child' variants of the _kern_{supports,validate}_*()
syscalls for moving and resizing. Reimplemented the real ones to do the
the right thing, i.e. they check all concerned disk systems now.
* Added _kern_supports_setting[_content]_parameters().
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4020 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-07-19 20:37:00 +00:00
Ingo Weinhold
708a31badf
Added SupportsSetting[Content]Parameters() to the KDiskSystem interface and respective functions to the module interface. Some re-ordering of methods/functions for aesthetical reasons. :-)
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4019 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-07-19 20:29:58 +00:00
Ingo Weinhold
24fa6c601b
Added LoadDiskSystem() version, that takes a disk system name.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4018 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-07-19 20:26:48 +00:00
Ingo Weinhold
18b90323d9
Added flags for disk systems.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4009 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-07-18 18:41:21 +00:00
Ingo Weinhold
a1a7d37e2c
Added syscall for validating the initialization parameters.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4000 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-07-17 00:04:22 +00:00
Ingo Weinhold
3f60a01369
Added "name" parameter to KDiskSystem::[Validate]Initialize() and the respective module API functions.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3999 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-07-17 00:03:17 +00:00
Ingo Weinhold
8bc0bd912a
Added and implemented the remaining disk system syscalls.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3997 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-07-16 21:01:14 +00:00
Ingo Weinhold
1f3f1294a8
Added a IsSubSystemFor() method to the KDiskSystem interface and respective calls for the module interfaces.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3996 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-07-16 21:00:01 +00:00
Ingo Weinhold
1863de6785
Added and implemented the first part of the disk system querying syscalls (_kern_supports_*()).
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3988 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-07-15 21:42:59 +00:00
Ingo Weinhold
0fbb290f51
Some changes to/fixes of the KDiskSystem interface and the disk system module interface.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3987 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-07-15 21:41:32 +00:00
Ingo Weinhold
a97769a5d3
Added {Read,Write}Lock{Device,Partition}().
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3986 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-07-15 21:39:34 +00:00
Ingo Weinhold
dd43c7769f
* Added shadow_id field to user_partition_data.
...
* Implemented several new syscalls (_kern_find_{disk_device,partition}(),
{prepare,cancel}_disk_device_modifications(),
[un]register_file_device()),
* Fixed some details in existing syscalls.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3976 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-07-15 01:10:32 +00:00
Ingo Weinhold
2438192b6c
Added a deviceOnly flag to {Find,Register}Device(). Minor {Create,Delete}FileDevice() changes.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3975 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-07-15 01:05:50 +00:00
Ingo Weinhold
5d22fa967a
Shadow partition related changes:
...
* Fixed handling of the deletion (removal) of shadow partitions. Formerly
the shadow partition corresponding to the disk device wasn't removed
properly.
* Added a shadow_id field to the user_partition_data structure which
contains the ID of the shadow partition, if it is one. The id field
will hold the ID of the physical partition.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3974 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-07-15 01:00:24 +00:00
Ingo Weinhold
e1302deadb
Damn, accidentially deleted the changed header via "cvs rm -f". Here it comes again: Disk system iteration functions added.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3910 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-07-08 23:45:53 +00:00
Ingo Weinhold
995d5c53be
* Renamed ddm_user_interface.cpp to ddm_userland_interface.cpp which
...
matches the name of the header much better. :-)
* Implemented the syscalls for iterating through and finding disk systems.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3902 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-07-08 23:23:27 +00:00
Ingo Weinhold
621e29d0b5
Added a DiskSystemLoader class.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3901 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-07-08 23:21:34 +00:00
Ingo Weinhold
c54d68a84e
Should have waited a few more minutes... Renamed the methods {B,K}Partition::Is{Mountable,Partitionable}() to Contains{File,Partitioning}System(). Similar change for the respective flags (B_PARTITION_{MOUNTABLE,PARTITIONABLE}).
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3899 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-07-08 17:38:45 +00:00
Ingo Weinhold
55bf93d80d
Fixed handling of partition and device flags and statuses.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3898 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-07-08 17:25:32 +00:00
Ingo Weinhold
c0455c33b8
* More shadow partition support.
...
* Writing disk device/partition data into userland buffer added.
* Migration of some definitions into <DiskDeviceDefs.h> header.
* Small bug fixes.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3882 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-07-06 23:01:22 +00:00
Ingo Weinhold
64cf9ebc08
Made PartitionRegistrar visible.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3881 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-07-06 22:57:40 +00:00
Ingo Weinhold
d885284414
First implementations of Disk Device API related syscalls (iterating through disk devices and retrieving disk device data). As long as we work in userland these aren't real syscalls, of course.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3880 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-07-06 22:56:39 +00:00
Ingo Weinhold
a162af3b0e
Made KPartition abstract and derived two classes, KPhysicalPartition
...
and KShadowPartition from it. KPhysicalPartition represents a partition
that exists on-disk, while KShadowPartition is a partition edited by the
API user, but not yet written to disk. Related changes in other classes.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3851 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-07-04 23:45:26 +00:00
Ingo Weinhold
5b489f6f16
Got rid of the List template class in the disk device manager source dir. Instead we use the Vector based Kernel Utils classes now. Various related changes.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3810 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-07-02 16:29:33 +00:00
Ingo Weinhold
83744ac99d
Added the ImplicitKey entry strategy, which allows the key to be calculated on the fly.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3802 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-07-02 03:17:43 +00:00