Automatic mipmap generation using glGenerateMipmap (util_gen_mipmap) fills mipmaps with wrong rendering. Piglit tests fbo-generatemipmap* are failing. Software fallback works properly, as does llvmpipe.
rv670 (HD3870), amd64
kernel 2.6.38rc8, mesa from git, libdrm from git
Created attachment 45598 [details] [review]
short patch to test problem
Can you try this patch to mesa and say if it fixes the issue?
Indeed it helps. Piglit test fbo-generatemipmap-formats is still failing, but may be unrelated problem. Basic functionality now works properly.
(In reply to comment #1)
> Created an attachment (id=45598) [details]
> short patch to test problem
> Can you try this patch to mesa and say if it fixes the issue?
It also fixes a rv670 lodbias regression -
Patch is strictly a work-around and a bloody hack (dripping even). Indicates there's something should be happening in the driver code that isn't. "Fixes" was a bad word choice.
Anyway, I can confirm this bug on RS880 (Radeon HD 4200).
This should be fixed by the following patches:
Still doesn't work on RS880 until it's added to the conditional on line 813 of r600_hw_context.c
I wonder if this should apply to rv620, rv635 (and rs780?) also?
fixed in b9f2750900efb2667bc1dfc428b71d8a08b212be.
rv610/630/620/635 all work fine without the additional hack.