Bug 35312

Summary: r600g: Automatic mipmap generation doesn't work properly
Product: Mesa Reporter: Gustaw Smolarczyk <wielkiegie>
Component: Drivers/Gallium/r600Assignee: Default DRI bug account <dri-devel>
Status: RESOLVED FIXED QA Contact:
Severity: normal    
Priority: medium    
Version: git   
Hardware: Other   
OS: All   
i915 platform: i915 features:
Attachments: short patch to test problem

Description Gustaw Smolarczyk 2011-03-14 13:04:34 UTC
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
Comment 1 Francis Whittle 2011-04-13 22:36:09 UTC
Created attachment 45598 [details] [review]
short patch to test problem

Can you try this patch to mesa and say if it fixes the issue?
Comment 2 Gustaw Smolarczyk 2011-04-15 00:40:53 UTC
Indeed it helps. Piglit test fbo-generatemipmap-formats is still failing, but may be unrelated problem. Basic functionality now works properly.
Comment 3 Andy Furniss 2011-04-15 04:30:30 UTC
(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 -

Comment 4 Francis Whittle 2011-04-16 00:08:05 UTC
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).
Comment 6 Francis Whittle 2011-05-11 02:00:42 UTC
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?
Comment 7 Alex Deucher 2011-05-11 09:15:29 UTC
fixed in b9f2750900efb2667bc1dfc428b71d8a08b212be.

rv610/630/620/635 all work fine without the additional hack.

Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.