From 75deae59887f3bf201139192b36c2d70b75d5862 Mon Sep 17 00:00:00 2001 From: Faith Ekstrand Date: Mon, 30 Jan 2023 20:12:06 -0600 Subject: [PATCH] nouveau/mme: Fix is_int18 for negative numbers util_mask_sign_extend returns a uint64_t which we need to cast to uint32_t in order to get the right comparison. Otherwise, we risk having ~0 in the top 32 bits and the comparison failing. Part-of: --- src/nouveau/mme/mme_fermi_builder.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/nouveau/mme/mme_fermi_builder.c b/src/nouveau/mme/mme_fermi_builder.c index 2a0a77eb3e8..5d58ca5e771 100644 --- a/src/nouveau/mme/mme_fermi_builder.c +++ b/src/nouveau/mme/mme_fermi_builder.c @@ -200,7 +200,7 @@ mme_fermi_reg(uint32_t reg) static bool is_int18(uint32_t i) { - return i == util_mask_sign_extend(i, 18); + return i == (uint32_t)util_mask_sign_extend(i, 18); } static inline void