Michel Dänzer wrote:
On Tue, 2003-07-22 at 23:53, Keith Whitwell wrote:

I don't think we can get away with breaking older clients, though this does look like it would only break the situation where you have old 3d client with new 2d driver, which is a slightly unusual situation.


Yes, I think the 2D driver and in particular the DRM are much more
likely to be old.



The real question is how much does the 3d client actually rely on the radeon memory layout? It gets pointers to most things it cares about in the initialization messages, these could be adjusted to point to the correct places in the new layout.


I'm afraid this doesn't work, e.g.

-   rmesa->hw.ctx.cmd[CTX_RB3D_COLOROFFSET] = rmesa->state.color.drawOffset;
+   rmesa->hw.ctx.cmd[CTX_RB3D_COLOROFFSET] = 
rmesa->state.color.drawOffset+rmesa->radeonScreen->fbBase;

and

rmesa->state.color.drawOffset = rmesa->radeonScreen->frontOffset;

but rmesa->state.color.drawOffset probably needs to stay the same for
software rendering? (it seems to be used as an offset into the
framebuffer mapping)



Further, if a client is known to be old, the kernel can go through its commands & adjust them for the new layout


This might actually work, nifty. :) I wonder how much effort this would
take and/or whether it would have an impact on performance though.

A slight impact, but that's the price you pay for backwards compatibility. If people want max performance, they can upgrade to a newer 3d client. In any case, I doubt it would be measurable.



I'd prefer this approach (in addition to the turn-on ioctl) to anything that involves bumping the major version.


Well, if this works, we might actually get away without bumping the
major, which would be great... let's hope this works out taking into
consideration everything including video capturing, radeonfb, ...

More than great - necessary. We can't be bumping the major number without very good reason, and I just don't see that here.


Keith




------------------------------------------------------- This SF.net email is sponsored by: VM Ware With VMware you can run multiple operating systems on a single machine. WITHOUT REBOOTING! Mix Linux / Windows / Novell virtual machines at the same time. Free trial click here: http://www.vmware.com/wl/offer/345/0 _______________________________________________ Dri-devel mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/dri-devel

Reply via email to