[haiku] Re: GSoC 2009 -- some more TODO, requesting help.

  • From: Ingo Weinhold <ingo_weinhold@xxxxxx>
  • To: haiku@xxxxxxxxxxxxx
  • Date: Tue, 10 Mar 2009 15:16:42 +0100

On 2009-03-10 at 15:03:46 [+0100], Stephan Aßmus <superstippi@xxxxxx> wrote:
> David McPaul schrieb:
> > 2009/3/10 Stephan Aßmus <superstippi@xxxxxx>:
> >> David McPaul schrieb:
> >>> On 2009-03-10, Matt Madia <mattmadia@xxxxxxxxx> wrote:
> >>>> In addition to the application, there are a few more issues that need
> >>>> to be sorted out.  I'd appreciate help with these.
> >>>>
> >>>> Cleaning up our ideas list:
> >>>> Basically adding more detail to each of the projects listed.
> >>> Improve "ata" bus_manager (adding DMA and ATAPI support). -- I think
> >>> this is a good project for someone who is into the low level driver
> >>> development and has enormous benefit for haiku on modern hardware.
> >>>
> >>> A quick test project for prospective applicants can be to add a switch
> >>> to bootman to change between ide and ata.
> >> But you cannot simply add a switch there. This is way more involved than 
> >> you
> >> think. Effectively, you would have to hack a kernel setting into the 
> >> kernel
> >> to ignore certain modules and then make sure you got every place.
> > 
> > Really, I was just thinking that the 2 add-ons can just check for a
> > config setting and just return B_ERROR in identify
> 
> Yes, maybe that's indeed another possibility. But it gets more involved
> with regard to modifying this setting from the boot menu.

One of the problems is that both modules have the same module name and the 
files consequently need to have the same path. This could probably be solved 
by using a symlink and setting it in the boot loader, but the boot loader 
doesn't have FS write support. Since the bus manager is required for booting, 
it is already loaded by the boot loader itself -- there's a directory with 
symlinks to the modules required for booting, which are all loaded by the 
boot loader -- so one would have to change the symlink even before, or at 
least load the right module and leave the symlink change to the kernel. Not 
particularly beautiful in either case.

As an alternative a reparse point could be used. That would require adding 
support for those in the kernel and the boot loader first, though.

CU, Ingo

Other related posts: