On Sun, 6 Apr 2014 19:58:48 +0200 Daniel Vetter daniel@ffwll.ch wrote:
On Sun, Apr 6, 2014 at 7:28 PM, Lauri Kasanen cand@gmx.com wrote:
This is related to my memory management work. As the VRAM queue is global, it cannot be determined on a per-app basis. If at least one client is running old userspace, the new scoring cannot be used.
Switching live between the two would bring additional complexity. I'd hope to be able to determine by the first 3d app if the userspace is new enough. But that depends on if it's expected to be able to run mixed loads.
At least thus far we've worked under the example that any explicitly-enabled new behaviour is only enabled per-fd. That's also useful when you install all your developer versions into a prefix, so still have 2 versions of X driver, libdrm, mesa, everything else lying around and want to switch at runtime even.
Can't you fake a default score somehow for all legacy userspace and always run with the new code? Reimplementing the old interfaces in terms of the new ones also allows you to kick out duplicated code (usually) compared to having both old and new code around.
Certainly, that can be done.
- Lauri