Mesa (master): intel: devinfo: fix assertion on devices with odd number of EUs

Lionel Landwerlin llandwerlin at kemper.freedesktop.org
Tue May 8 14:18:20 UTC 2018


Module: Mesa
Branch: master
Commit: 3cdf1bf97db19b94577b49079cbbc521157d4e03
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=3cdf1bf97db19b94577b49079cbbc521157d4e03

Author: Lionel Landwerlin <lionel.g.landwerlin at intel.com>
Date:   Mon Apr 23 17:52:37 2018 +0100

intel: devinfo: fix assertion on devices with odd number of EUs

I forgot to change the assert in the second helper function in a
previous change.

This hit the assert() on a Broadwell platform with 1 slice, 3
subslices but all EUs disabled in subslice 1 & 2.

Fixes: c1900f5b0fb ("intel: devinfo: add helper functions to fill fusing masks values")
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin at intel.com>
Reviewed-by: Kenneth Graunke <kenneth at whitecape.org>

---

 src/intel/dev/gen_device_info.c | 6 +-----
 1 file changed, 1 insertion(+), 5 deletions(-)

diff --git a/src/intel/dev/gen_device_info.c b/src/intel/dev/gen_device_info.c
index dfeab6e606..aa72d96e17 100644
--- a/src/intel/dev/gen_device_info.c
+++ b/src/intel/dev/gen_device_info.c
@@ -1044,11 +1044,7 @@ gen_device_info_update_from_topology(struct gen_device_info *devinfo,
    for (int b = 0; b < eu_mask_len; b++)
       n_eus += __builtin_popcount(devinfo->eu_masks[b]);
 
-   /* We expect the total number of EUs to be uniformly distributed throughout
-    * the subslices.
-    */
-   assert(n_subslices && (n_eus % n_subslices) == 0);
-   devinfo->num_eu_per_subslice = n_eus / n_subslices;
+   devinfo->num_eu_per_subslice = DIV_ROUND_UP(n_eus, n_subslices);
 }
 
 bool




More information about the mesa-commit mailing list