Keith Whitwell wrote:

> > I suppose I'm basing my assumptions on sarea usage that is not there right
> > now (a private sarea per context system rather than the temporary copies
> > which we have now), and assuming a full featured t&l card will have
> > somewhere around 4-16k of possible state.  (WARNING: The following is
> > slightly simplified.)  The private sarea version only has 1 read and 1
> > write involved (one read from the sarea in the kernel, and one write to the
> > dma buffer in the kernel), the current sarea version has 2 reads and 2
> > writes involved while I would assume an ioctl version has 2 reads and 3
> > writes (one read from the temporary state, one write to the sarea or ioctl
> > argument structure, one read in the kernel of the sarea or one read and
> > write for the ioctl, one write to the dma buffer.)  All things considered I
> > believe the current sarea usage and the ioctl version are pretty much
> > equal.  Perhaps even with careful implementation the ioctl version can be
> > done with 2 reads and 2 writes as well.
>
> It's possible to consider a scheme that stuffs ioctl numbers and ioctl
> structs into a shared memory area between the 3d client and the kernel.  That
> gets away from the current bad situation of having a fixed but different
> sarea layout for each version of the kernel module, but allows any benefits
> of a reduced-number-of-copy scheme.
>
> I don't propose implementing this, but it could be a future addon to a
> pure-ioctl interface if performance ever turned out to be a problem.
>
> Note that we will get much better performance gains simply by getting 3.5
> into the kernel and xfree (and bringing those drivers that haven't
> implemented all the 3.5 goodies up to speed).

I do agree with you here, and I can invision some interesting things that using
a shared memory area for command passing could do for performance.  This
addresses my concern and no longer see a reason why we need a versioning
scheme.  I personally think that having a backup plan is always a good idea,
however it might be a better idea to remove the versioning ability since it
could incourage bad behavior.  I'll back either way you decide.

-Jeff



_______________________________________________
Dri-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/dri-devel

Reply via email to