Mesa (main): iris: declare padding for iris_vue_prog_key

GitLab Mirror gitlab-mirror at kemper.freedesktop.org
Wed Aug 18 07:32:00 UTC 2021


Module: Mesa
Branch: main
Commit: fae1e99a15d12b82f65c77c90425335fec7562f1
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=fae1e99a15d12b82f65c77c90425335fec7562f1

Author: Mao, Marc <marc.mao at intel.com>
Date:   Wed Aug 18 07:56:58 2021 +0300

iris: declare padding for iris_vue_prog_key

Otherwise with some compilers/environments (Android) padding
may contain garbage and memcmp of the key will fail.

Cc: mesa-stable
Signed-off-by: Tapani Pälli <tapani.palli at intel.com>
Reviewed-by: Kenneth Graunke <kenneth at whitecape.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12438>

---

 src/gallium/drivers/iris/iris_context.h | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/src/gallium/drivers/iris/iris_context.h b/src/gallium/drivers/iris/iris_context.h
index d820cb094c9..60d2cd2fcfa 100644
--- a/src/gallium/drivers/iris/iris_context.h
+++ b/src/gallium/drivers/iris/iris_context.h
@@ -202,10 +202,15 @@ struct iris_base_prog_key {
    unsigned program_string_id;
 };
 
+/**
+ * Note, we need to take care to have padding explicitly declared
+ * for key since we will directly memcmp the whole struct.
+ */
 struct iris_vue_prog_key {
    struct iris_base_prog_key base;
 
    unsigned nr_userclip_plane_consts:4;
+   unsigned padding:28;
 };
 
 struct iris_vs_prog_key {



More information about the mesa-commit mailing list