On Wed, 2007-08-22 at 20:09 +0200, Matthias Hopf wrote:
> On Aug 22, 07 17:21:09 +0300, Daniel Stone wrote:
> 
> > > Without a version field, this is made impossible, something that must be
> > > avoided at all costs.
> > 
> > Except that your ioctl then becomes variably-sized unless you add loads
> > of padding and hope for the best.
> 
> If every tag is int32 and its parameter int32 as well, this isn't too
> problematic. 

Right, e.g. the actual ioctl struct could just contain pointers to the
tag arrays.

> Question is whether everything needed can be represented in
> 32 bit values, strings are a completely different concept and don't
> match well here, as pointers are probably difficult to handle over the
> user land / kernel barrier...

They basically need to be passed as 64 bit integers, and care must be
taken wrt alignment of struct members.

But yeah, FWIW I don't think there's any real technical barriers
preventing this approach.


-- 
Earthling Michel Dänzer           |          http://tungstengraphics.com
Libre software enthusiast         |          Debian, X and DRI developer


-------------------------------------------------------------------------
This SF.net email is sponsored by: Splunk Inc.
Still grepping through log files to find problems?  Stop.
Now Search log events and configuration files using AJAX and a browser.
Download your FREE copy of Splunk now >>  http://get.splunk.com/
--
_______________________________________________
Dri-devel mailing list
Dri-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/dri-devel

Reply via email to