Keith Whitwell wrote: >> Major bumps once stuff went into the kernel weren't allowed at all. >> You'd need to fork the driver in any case. So we did this once or >> twice on drivers in devel trees like mach64. >> However upstream first policy should avoid this need. I'd also prefer >> to see getparam for new features instead of version checks. The linear >> version check sucks. > > This is an interesting concept that opens up some ideas for dealing > with feature deprecation, etc. > > Think about opengl's extension mechanism -- features can be exposed > through that mechanism without ever providing a guarantee of future > availability -- in fact there is no guarantee of any availability > outside the current session. Future versions of a GL driver might add > or remove extensions as desired, within the constraints of the GL > version number advertised.
Would you want to have the ioctl numbers dynamically allocated, like the event and error bases in the xserver? Otherwise you could run out of them if you statically allocate numbers for extensions which are then later removed. Or would you rather create a single entry point for the extension commands and the multiplex everything through that? Also, you'll have to distinguish between extensions supported by the kernel and userspace (like GLX server and client side extensions), and provide drm_get_proc_address() to get the userspace library entry points. I think the extension mechanism that OpenGL/GLX uses is much better then simple linear versioning. If the userspace code is properly written, you can deprecate and remove extensions without breaking anything (at worst the driver will simply refuse to work, but no crashes etc). No more 5 years waiting to remove old features - take that Linus! :) tom ------------------------------------------------------------------------- This SF.Net email is sponsored by the Moblin Your Move Developer's challenge Build the coolest Linux based applications with Moblin SDK & win great prizes Grand prize is a trip for two to an Open Source event anywhere in the world http://moblin-contest.org/redirect.php?banner_id=100&url=/ -- _______________________________________________ Dri-devel mailing list Dri-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/dri-devel