Re: Disk Device Manager quo vadis?

Ingo Weinhold <bonefish-CFLBMwTPW48UNGrzBIF7/[email protected]> Sat, 21 Jul 2007 23:18:31 +0200
Newsgroups gmane.os.openbeos.kernel.devel
Message-ID <[email protected]>
On 2007-07-18 at 13:00:30 [+0200], jan mate wrote:
> Hello,
> i was just going to write.
> Status is this: we turned in our project about a month and a half ago,
> and it was accepted. However, i don't really think it is finished,
> especially cosidering documentation, and the partitioning client. So i
> decided to work on it a little more. Then more important things got in
> the way.

First of all, it's great you continued with the project! I was afraid you 
dropped the ball. A little more proactive communication would have been 
much appreciated. Anyway, thanks a lot for you work.

> What is done:
> - the intel partitioning addon is functionally complete and rather well
> documented and tested
> - KJobs are finished, but not really well tested.
> - DiskDeviceManager call paths are cleared for most calls, but still
> broken for some.
> - "overview" docs are written and i thing they are quite good
> 
> What isn't:
> - documentation, apart from the addon, is rather sketchy
> - the client is ... really bad. It can list partitions and it can create
> children, but it looks worse than fdisk and the implementation is quite
> weird.
> 
> Which reminds me, we've run into a strange problem : kernel won't
> automatically unlock the partitioning tree when the client exits. I
> don't have any idea how to solve this.

That's indeed a feature that's not implemented yet. The DDM needs to be 
notified when a team is deleted, so that it can free any resources it has 
allocated for the team. One could probably do that in team_delete_team() 
(src/system/kernel/team.c). However, we were thinking about a more 
generalized approach to in-kernel notifications. The DDM would then just be 
a listener for "team deleted" events.

> I will send you what we have, as a patch against some current revision
> ... once i find out where it is stored (did i say that i "accidentally"
> did rm -rf /usr on my favorite OS in the course of events, and then had
> much fun reconstructing one of the other OSes?)
> 
> In other news, i am now sick and in bed, so i have about a week's worth
> of free time. I could try and find out if i can build a gui partitioning
> client in that time.

That would of course be nice, but don't sweat it. Rather get well. :-)

I had a first look through the patch. As our coding style police already 
mentioned, there are some incompatibilities with our coding style. I will 
clean that up while committing the code.

Some files are missing copyright headers, other contain "Copyright: See 
COPYING file that comes with this distribution", which, I assume, means the 
MIT license we use for the project. I'd like to add/change the copyright 
headers so that they comply with our standard header. It would be nice, if 
you could tell me who was responsible for implementing which part, so that 
I can credit the authorship appropriately, where things are unclear.

I'd also like to add you guys to the contributors list in our AboutSystem 
application, unless you object, of course.

Apart from that, I've seen some issues in the DDM (jobs) code, that I'd 
like to solve differently. I'll have to re-familiarize myself with the DDM 
and look into the patch more thouroughly first, though.

I will commit things in smaller chunks over the next days -- I'll see when 
I find time. If you want me to refrain from adjusting the coding style of 
the partitioning app, so you don't get unnecessary conflicts while you're 
working on it, I can as well commit it verbatim for the time being.

CU, Ingo

PS: Niels, shall I check the documentation part of the patch in or do you 
want to look through it yourself?

-------------------------------------------------------------------------
This SF.net email is sponsored by: Splunk Inc.
Still grepping through log files to find problems?  Stop.
Now Search log events and configuration files using AJAX and a browser.
Download your FREE copy of Splunk now >>  http://get.splunk.com/