Index: [thread] [date] [subject] [author]
  From: Jon M. Taylor <taylorj@gaia.ecs.csus.edu>
  To  : ggi-develop@eskimo.com
  Date: Mon, 23 Aug 1999 12:37:44 -0700 (PDT)

Re: KGIcon multiheading

On Sun, 22 Aug 1999, Marcus Sundberg wrote:

> Jon M. Taylor wrote:
> > 
> >         I tried to find a way to implement multiheading via /proc/kgi/[n],
> > but I could not discover a clean way for the first loaded KGIcon module to
> > create /proc/kgi and the rest of the modules to be able to hook into it.  So
> > I decided to fall back to just creating /proc/gfx[n] instead.  I don't like
> > this solution, but until we get devfs I don't see an alternative.  At least
> > it is an aesthetic problem and not a functional one... the gc and kgicommand
> > mapper files are now created in /proc/gfx[n] on a per-head basis as well,
> > BTW.  Everyone, please let me know if you see anything necessary for the
> > multiheading that I missed.
> > 
> > Jon
> > 
> > P.S. Marcus, can I remove the stuff?  I think we should
> > always be able to use vmops with no problems...?
> 
> Well, personally I find it annoying that we should have to have an
> extra function and a table for something as simple as mapping the GC.

	Yeah, me too, but unfortunately that nopage() handler seems to be the
best/smallest way to handle the page reference counting.  I looked for a way
around this but I could not find one.

> I'd really like to use remap_page_range() or any other functionality
> which would allow us to map the page directly in the mmap() function.

	Rubini's "Linux Device Drivers" states that remap_page_range() cannot
be used to remap conventional addresses, like the ones that get_free_page()
returns.  It can only be used to remap the high PCI memory.  If you use it
with convential memory it will map in the zero page.  A nopage() handler will
cause the kernel to set up a virtual address mapping for us and all we need
to do is give it the (physical) base address of our page.

> Ofcourse - if there really isn't any way to do this we can just as
> well remove the #ifdef USE_VMOPS, as it does work despite it's ugliness.

	OK, I'll remove it.

Jon

---
'Cloning and the reprogramming of DNA is the first serious step in 
becoming one with God.'
	- Scientist G. Richard Seed


Index: [thread] [date] [subject] [author]