WARN_ON_ONCE() takes a condition, not a message. The string literal is
always true, so the warning still triggers but the message is never
printed.

Use WARN_ONCE(1, ...) instead to print the message and keep the
once-only behavior.

Found with a Coccinelle script. Clang's -Wstring-conversion also flags
such calls but is not enabled in kernel builds.

Fixes: 7554886daa31 ("drm/amdgpu: Fix size validation for non-exclusive domains 
(v4)")
Assisted-by: Claude:claude-fable-5 coccinelle
Signed-off-by: Karl Mehltretter <[email protected]>
---
 drivers/gpu/drm/amd/amdgpu/amdgpu_object.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_object.c 
b/drivers/gpu/drm/amd/amdgpu/amdgpu_object.c
index f98bfba59a2c..f2ea881d39e3 100644
--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_object.c
+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_object.c
@@ -565,7 +565,8 @@ static bool amdgpu_bo_validate_size(struct amdgpu_device 
*adev,
 
        if (!man) {
                if (domain & AMDGPU_GEM_DOMAIN_GTT)
-                       WARN_ON_ONCE("GTT domain requested but GTT mem manager 
uninitialized");
+                       WARN_ONCE(1,
+                                 "GTT domain requested but GTT mem manager 
uninitialized");
                return false;
        }
 
-- 
2.39.5 (Apple Git-154)

Reply via email to