This can be called while preemption is disabled, for example by
dcn32_internal_validate_bw which is called with the FPU active.

Fixes "BUG: scheduling while atomic" messages I encounter on my Navi31
machine.

Cc: [email protected]

Signed-off-by: Natalie Vock <[email protected]>
---
 drivers/gpu/drm/amd/display/dc/core/dc_stream.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/gpu/drm/amd/display/dc/core/dc_stream.c 
b/drivers/gpu/drm/amd/display/dc/core/dc_stream.c
index 191f6435e7c64..87c0cf7e290ea 100644
--- a/drivers/gpu/drm/amd/display/dc/core/dc_stream.c
+++ b/drivers/gpu/drm/amd/display/dc/core/dc_stream.c
@@ -170,11 +170,11 @@ struct dc_stream_state *dc_create_stream_for_sink(
        if (sink == NULL)
                goto fail;
 
-       stream = kzalloc(sizeof(struct dc_stream_state), GFP_KERNEL);
+       stream = kzalloc(sizeof(struct dc_stream_state), GFP_ATOMIC);
        if (stream == NULL)
                goto fail;
 
-       stream->update_scratch = kzalloc((int32_t) 
dc_update_scratch_space_size(), GFP_KERNEL);
+       stream->update_scratch = kzalloc((int32_t) 
dc_update_scratch_space_size(), GFP_ATOMIC);
        if (stream->update_scratch == NULL)
                goto fail;
 
-- 
2.53.0

Reply via email to