[Mesa-dev] [PATCH] mesa/virgl: Fix off-by-one and copy-paste error in multisample position evaluation

Erik Faye-Lund erik.faye-lund at collabora.com
Mon Jul 16 10:11:06 UTC 2018


On 13. juli 2018 14:46, Gert Wollny wrote:
> Fixes: 91f48cdfe5c817158c533a8f67c60e9aabbe4479
>         virgl: Add support for glGetMultisample
> Signed-off-by: Gert Wollny <gert.wollny at collabora.com>
> ---
>   src/gallium/drivers/virgl/virgl_context.c | 6 +++---
>   1 file changed, 3 insertions(+), 3 deletions(-)
>
> diff --git a/src/gallium/drivers/virgl/virgl_context.c b/src/gallium/drivers/virgl/virgl_context.c
> index d985bf906f..f5e3832d99 100644
> --- a/src/gallium/drivers/virgl/virgl_context.c
> +++ b/src/gallium/drivers/virgl/virgl_context.c
> @@ -943,11 +943,11 @@ static void virgl_get_sample_position(struct pipe_context *ctx,
>         return;
>      } else if (sample_count == 2) {
>         bits = vs->caps.caps.v2.msaa_sample_positions[0] >> (8 * index);
> -   } else if (sample_count < 4) {
> +   } else if (sample_count <= 4) {
>         bits = vs->caps.caps.v2.msaa_sample_positions[1] >> (8 * index);
> -   } else if (sample_count < 8) {
> +   } else if (sample_count <= 8) {
>         bits = vs->caps.caps.v2.msaa_sample_positions[2 + (index >> 2)] >> (8 * (index & 3));
> -   } else if (sample_count < 8) {
> +   } else if (sample_count <= 16) {

This isn't technically speaking an off-by-one... perhaps adjust the 
commit message a bit?

>         bits = vs->caps.caps.v2.msaa_sample_positions[4 + (index >> 2)] >> (8 * (index & 3));
>      }
>      out_value[0] = ((bits >> 4) & 0xf) / 16.0f;

Reviewed-by: Erik Faye-Lund <erik.faye-lund at collabora.com>


More information about the mesa-dev mailing list