virglrenderer regression in commit ad4f0f1941677c

Rob Clark robdclark at gmail.com
Sat Jul 30 13:40:45 UTC 2016


On Fri, Jul 29, 2016 at 3:57 PM, Rob Herring <robh at kernel.org> wrote:
> Hi,
>
> This commit in virglrenderer causes a regression in Android for me.
> The parameters that get passed in are last_level = 8, width = 1. I'm
> not really sure if this is valid (I'm guessing there should be some
> min width?), or where I should be looking to fix this. Any ideas?

what is the height?  last mip-map level is basically the number of
times you could half the width+height (round up to 1) until it is 1x1.
So something like 1x512 would have last_level=8.  (I might be off by
one right-shift..)

Try this:

- if (args->last_level > (floor(log2(MAX2(args->width, args->width))) + 1))
+ if (args->last_level > (floor(log2(MAX2(args->width, args->height))) + 1))

BR,
-R

> commit ad4f0f1941677c6cd78bcd14348cd99ae7dd7527
> Author: Marc-André Lureau <marcandre.lureau at redhat.com>
> Date:   Tue Jan 19 14:37:50 2016 +0100
>
>     renderer: reject large LOD values
>
>     Or we could sit for a very long time in some further loops.
>
>     Fix found thanks to american fuzzy lop.
>
>     Signed-off-by: Marc-André Lureau <marcandre.lureau at redhat.com>
>
> Thanks,
> Rob
> _______________________________________________
> dri-devel mailing list
> dri-devel at lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/dri-devel


More information about the dri-devel mailing list