[openbeosstorage] Re: DiskDevice API v2.3
- From: Tyler Dauwalder <tyler@xxxxxxxxxxxxx>
- To: openbeosstorage@xxxxxxxxxxxxx
- Date: Tue, 27 May 2003 17:44:16 -0700
> > - I left the parameters parameter in ValidateCreateChild() in case
> > the child parameters somehow affect the min/max size of the
> > potential
> > child.
>
> Makes sense.
> BTW, something feels wrong with the last parameter of
> BPartition::CreateChild(): `**BPartition child'.
> Mmh, I can't get hold of what that could be. ;-)
Geeze, looks fine to me... :-P ;-)
> > - int32 CommitModifications(bool synchronously = true,
> > BMessenger progressMessenger = BMessenger(),
> > bool receiveCompleteProgressUpdates = true,
> > BMessage *template = NULL);
> > still exists in BDiskDevice. We kind of talked about this
> > previously,
> > but I was never really convinced we came to a decision. I'm only
> > kind
> > of comfortable moving it into BPartition. Opinions?
> >
> > - I haven't done anything about BPartitionableSpace vs.
> > BPartitioningInfo, as that's still on the table.
>
> It seems we have the following alternatives:
>
> 1) Leave it as it is. That has the drawbacks, that the information
> would be stored in the BPartition hierarchy being of no interest to
> the
> user, and requiring some amount of updates, when BPartitions are
> Resize()d or Move()d.
>
> 2) Introduce a BPartition::GetPartitionableSpaceAt(int32, off_t*,
> off_t
> *), which would
> a) return a data stored in the BPartition object
> b) retrieve the info from the kernel
> Whereas a) has the same drawbacks as 1) (minus that it does use an
> extra object). b) introduces overhead due to the syscall required per
> invocation. Moreover the partition might change between two calls,
> which probably renders the information invalid. One could simply make
> it a requirement that the partition is locked, though.
>
> 3) Introduce a BPartitioningInfo with a similar method and a
> BPartition::GetPartitioningInfo() to get it. Similar to 2 b), with
> less
> syscalls though (one per GetPartitioningInfo()).
>
> 4) Drop the whole partitionable space idea.
>
> 2 b) and 3) would be my favorites.
Well, somehow I managed to miss the fact that GetPartitioningInfo()
lives in BPartition, and that's the only thing about it I didn't like
(the imaginary fact that it *didn't* live there :-). So lets go with
3) then. :-)
-Tyler
- Follow-Ups:
- [openbeosstorage] Re: DiskDevice API v2.3
- From: Axel Dörfler
- References:
- [openbeosstorage] Re: DiskDevice API v2.3
- From: Ingo Weinhold
Other related posts:
- » [openbeosstorage] DiskDevice API v2.3
- » [openbeosstorage] Re: DiskDevice API v2.3
- » [openbeosstorage] Re: DiskDevice API v2.3
- » [openbeosstorage] Re: DiskDevice API v2.3
- » [openbeosstorage] Re: DiskDevice API v2.3
- [openbeosstorage] Re: DiskDevice API v2.3
- From: Axel Dörfler
- [openbeosstorage] Re: DiskDevice API v2.3
- From: Ingo Weinhold