Re: looking for open tasks

"Axel Dörfler" <[email protected]> Wed, 28 Feb 2007 08:58:18 +0100 CET
Newsgroups gmane.os.openbeos.kernel.devel
Message-ID <9607327014-BeMail@zon>
Hi Jan,

jan matejek <matejcik-IaeKGDb/[email protected]> wrote:
> > * writing a WiFi driver and a generic module that helps developing 
> > such
> > drivers (ie. port a driver from OpenBSD, look at the WiFi layer of
> > BSDs, Linux, ...)
> This is very interesting, but i am not sure about its difficulty.
> What's the status of this in Haiku? I see you have ipw2100 driver,
> but i found no mention of 802.11 stack (that appears to be quite
> important for wifi to work, at least in linux).
> So how is it?

There is no separate WiFi layer yet. The ipw2100 driver does everything 
of interest in firmware. So doing this would need to be break down into 
several pieces:
* designing the WiFi layer/stack API
* implementing the layer
* implementing a driver using the layer

Unfortunately, the design phase must come before the rest :-)
I think it's a lot of work, so it might be too much as a first project 
with limited time, but it's your choice.

> > * implement DVD-RAM support to the CD driver
> > * implement write support of the disk device manager, and write a
> > partitioning software using it.
> These two look promising. Can you provide more details?
> (what exactly is needed and where in the sources are starting points)

The disk device manager (which lives in src/system/kernel/
disk_device_manager/, with relevant headers in both headers/private/
kernel/disk_device_manager/ and headers/private/storage/) manages all 
disk devices and their partitions.
Currently, it only supports read-only access to those partitions, but 
write access is missing - the API and everything seems to be fleshed 
out, though. It's C++. The most important target would be to get 
creating partitions and file systems to work.
If you need more info, Ingo Weinhold can probably give you more 
insight, though (as he wrote it).

Concerning DVD-RAM support, I'm not sure what needs to be done myself, 
as I haven't looked into it yet. I guess it's mostly recognizing DVD-
RAM drives as being able to write, and then make sure that the CD 
driver allows writing and forward write requests to the SCSI layer. 
Sources are in src/add-ons/kernel/: bus_managers/scsi/, bus_managers/
ide/, generic/scsi_periph/, generic/block_io, and last but not least 
drivers/disk/scsi/scsi_cd/. Most of them just forward the functionality 
to another layer, so you will probably need to change only some of 
them.

> > * implement ZeroConf and/or Bonjour networking services
> i personally very much like this one, but it wouldn't qualify
> for our assignment :e(

Pity :-)

> > Is there anything of interest in that list? If you have any other
> > ideas, even rough ideas, please tell :-)
> I do have many ideas, but most of them are for userspace ;)
> But i like the kind you provided. If you have any more like
> that, please tell ;)

Okay, maybe: write a driver for an ethernet card of your choice, fix 
the (network) rtl8139 and via-rhine drivers, write a HD-audio driver, 
...

> > Of course, if you don't have any idea in particular, you could pick 
> > 10
> > bugs from our bug tracker and solve those ;-)
> I wasn't able to find any open bugs in there ;) Probably an issue 
> with
> the predefined queries.
> But that might be fun. We could pick bugs from some particular area 
> and
> label the project "debug and improve <area name>". Any tips on what 
> area
> could that be?

Try this one:
http://dev.haiku-os.org/query?status=new&status=assigned&status=reopened&group=milestone&component=System%2FKernel&order=priority

That lists all bugs filed under System/Kernel. The biggest problem is 
currently the VM, but I'm working on that right now.
Another thing that is open would be to create a TTY module out of the 
TTY driver (and use that from this one), to be able to let other serial 
modules use that one as well.
And there is this ongoing problem of our heap allocator; but there is 
supposed to be someone working on it (Evan), I just don't know yet if 
anything will come out of it, as he's been very silent the past weeks. 
The basic idea would be to have a slab allocator (with all the nice 
optimizations regarding multiple CPUs and object caching) that 
dynamically allocates its resources (the current allocator just grabs 
16 MB of RAM and lives from that...).

Bye,
   Axel.


-------------------------------------------------------------------------
Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the chance to share your
opinions on IT & business topics through brief surveys-and earn cash
http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV