From d36763b2a45105b2bd4ca714ceb05b488c2d97ce Mon Sep 17 00:00:00 2001 From: Lionel Landwerlin Date: Fri, 4 Oct 2019 19:37:14 +0300 Subject: [PATCH] intel: fix subslice computation from topology data We're missing the offset of the slice in the subslice mask... This worked for most platforms that don't have first slice fused off because we would reread the same mask from slice0 again and again... Signed-off-by: Lionel Landwerlin Fixes: c1900f5b0f ("intel: devinfo: add helper functions to fill fusing masks values") Gitlab: https://gitlab.freedesktop.org/mesa/mesa/issues/1869 Reviewed-by: Mark Janes --- src/intel/dev/gen_device_info.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/intel/dev/gen_device_info.c b/src/intel/dev/gen_device_info.c index 85fa978f9c1..0ab3c354df5 100644 --- a/src/intel/dev/gen_device_info.c +++ b/src/intel/dev/gen_device_info.c @@ -1104,7 +1104,7 @@ update_from_topology(struct gen_device_info *devinfo, for (int b = 0; b < devinfo->subslice_slice_stride; b++) { devinfo->num_subslices[s] += - __builtin_popcount(devinfo->subslice_masks[b]); + __builtin_popcount(devinfo->subslice_masks[s * devinfo->subslice_slice_stride + b]); } n_subslices += devinfo->num_subslices[s]; } -- 2.30.2