[PATCH] fix drm_i915_flip_t breakage
Brian Paul
brian.paul at tungstengraphics.com
Fri Sep 28 09:27:51 PDT 2007
Jesse Barnes wrote:
> On Thursday, September 27, 2007 3:35:22 pm Jesse Barnes wrote:
>> In one of my overzealous pipe/plane mapping patches, I renamed the pipes
>> field in drm_i915_flip_t to planes, since it's really dealing with
>> planes and so seemed to make sense.
>>
>> However, drm_i915_flip_t has different compatibility requirements than
>> the i915 sarea private. The sarea private is duplicated in the Mesa
>> and DDX trees and used under a different name, so changes to it, as
>> long as they're binary compatible, are fine. drm_i915_flip_t, on the
>> other hand, is used under the same name by both the Mesa and DDX trees.
>>
>> So if you build an old DDX or Mesa against a new DRM, they'll pick up
>> the new drm_i915_flip_t definition (since HAVE_I915_FLIP will be
>> defined) and promptly break. This patch reverts the DRM to the old
>> name and adds comments describing the actual field usage.
>>
>> Sorry for the trouble.
>
> Oh, and for similar reasons, building a new Mesa or DDX against an old DRM
> will break, but keithp is making everything use the installed DRM headers all
> the time, so we can go back to the old drm_i915_flip_t field name then.
I've got a few issues using the git heads of Mesa, DRM and xf86-video-intel:
1. The Mesa 7.0.2 branch doesn't build with drm/master.
Compiling dri_bufmgr.c:
../common/dri_bufmgr.c: In function ‘driFenceBuffers’:
../common/dri_bufmgr.c:102: warning: passing argument 3 of
‘drmFenceBuffers’ makes integer from pointer without a cast
../common/dri_bufmgr.c:102: error: too few arguments to function
‘drmFenceBuffers’
Compiling i915tex/intel_buffers.c:
intel_buffers.c: In function ‘intelWindowMoved’:
intel_buffers.c:290: error: ‘drm_i915_flip_t’ has no member named ‘pipes’
intel_buffers.c:298: error: ‘drm_i915_flip_t’ has no member named ‘pipes’
intel_buffers.c: In function ‘intelPageFlip’:
intel_buffers.c:764: error: ‘drm_i915_flip_t’ has no member named ‘pipes’
Is this supposed to work? If so, please fix it.
If Mesa 7.0.2 is not intended to work with drm/master, what revision of
drm should work?
2. Mesa/master builds and runs but gears, for example, is limping along
at 83 fps (using >90% CPU). Can you test and see what you get?
Other demos are exhibiting rendering errors that I don't recall seeing
before (such as demos/gloss and demos/fogcoord).
Also, I had a total system lock-up when I exited gears at one point.
There's been a lot of changes lately and I don't know who's responsible
for the regressions but they need to be addressed.
-Brian
More information about the xorg
mailing list