Index: [thread] [date] [subject] [author]
  From: Steffen Seeger <s.seeger@physik.tu-chemnitz.de>
  To  : ggi-develop@eskimo.com
  Date: Thu, 5 Aug 1999 11:36:03 +0200 (CEST)

Re: Accelleration: A summary

> On Wed, 4 Aug 1999, Jos Hulzink wrote:
> 
> > One of the pages is mapped into user
> > space, the other only in kernel space. For this needs segfault trapping in
> > the kernel, KGICON is not suitable, but KGI is the way to go.
> 
> 	Actually, I have looked at this lately and I really do not see why 
> this cannot be done in KGIcon as well.  Steffen, please enlighten me if I 
> am missing something, but can't we just use the nopage method in the 
> vm_operations struct to handle page faults in the ping-pong buffer?  If 
> we can do that, we should be able to handle all of the buffer swapping 
> and page remapping right from fbcon-kgi.c

Sure. The drivers are not concerned about page-fault-catching. This is done
by the environment/external mapper; a partly tested sample implementation
can be found in the kgi-0.9 snapshots (/dev/graphic device file driver).
fbcon-kgi may implement this as well. The drivers won't notice what
the environment is. (Well, they MUST not...)

> 	Yes, with the note that you do not have to fix the size of the
> virtual userspace region at 2 pages.  The larger the size of the virtual
> userspace region, the less checking for buffer-full conditions will need to
> be done on the userspace side.  In fact, for 3D applications I would say that
> two pages in far too small.  But the nice thing about this scheme is that you
> do not actually need to allocate more than two physical pages, no matter how
> long your virtual userspace buffer is!

More buffer space may get a better efficiency (more overlap of 
drawing/calculations) for applications that render/calculate/render/calculate..
That's why the generalized scheme implemented in kgi-0.9 can cope with 
arbitrary buffer sizes and buffer numbers. It would be nice if we could share
that code between fbcon-kgi and KGI, just to make sure we fix bugs
in both...

			Steffen

----------------- e-mail: seeger@physik.tu-chemnitz.de -----------------

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