Commit d81a2209 authored by Dave Airlie's avatar Dave Airlie Committed by Alex Deucher

amdgfx/gfx: don't use static objects for ce/de meta. (v2)

This isn't safe if we have multiple GPUs plugged in, since
there is only one copy of this struct in the bss, just allocate
on stack, it's 40/108 bytes which should be safe.
Reviewed-by: default avatarChristian König <christian.koenig@amd.com>
Signed-off-by: default avatarDave Airlie <airlied@redhat.com>
Signed-off-by: default avatarAlex Deucher <alexander.deucher@amd.com>
parent 20a3a71d
...@@ -7042,7 +7042,7 @@ static void gfx_v8_0_ring_emit_ce_meta(struct amdgpu_ring *ring) ...@@ -7042,7 +7042,7 @@ static void gfx_v8_0_ring_emit_ce_meta(struct amdgpu_ring *ring)
{ {
uint64_t ce_payload_addr; uint64_t ce_payload_addr;
int cnt_ce; int cnt_ce;
static union { union {
struct vi_ce_ib_state regular; struct vi_ce_ib_state regular;
struct vi_ce_ib_state_chained_ib chained; struct vi_ce_ib_state_chained_ib chained;
} ce_payload = {}; } ce_payload = {};
...@@ -7071,7 +7071,7 @@ static void gfx_v8_0_ring_emit_de_meta(struct amdgpu_ring *ring) ...@@ -7071,7 +7071,7 @@ static void gfx_v8_0_ring_emit_de_meta(struct amdgpu_ring *ring)
{ {
uint64_t de_payload_addr, gds_addr, csa_addr; uint64_t de_payload_addr, gds_addr, csa_addr;
int cnt_de; int cnt_de;
static union { union {
struct vi_de_ib_state regular; struct vi_de_ib_state regular;
struct vi_de_ib_state_chained_ib chained; struct vi_de_ib_state_chained_ib chained;
} de_payload = {}; } de_payload = {};
......
...@@ -3806,7 +3806,7 @@ static void gfx_v9_ring_emit_sb(struct amdgpu_ring *ring) ...@@ -3806,7 +3806,7 @@ static void gfx_v9_ring_emit_sb(struct amdgpu_ring *ring)
static void gfx_v9_0_ring_emit_ce_meta(struct amdgpu_ring *ring) static void gfx_v9_0_ring_emit_ce_meta(struct amdgpu_ring *ring)
{ {
static struct v9_ce_ib_state ce_payload = {0}; struct v9_ce_ib_state ce_payload = {0};
uint64_t csa_addr; uint64_t csa_addr;
int cnt; int cnt;
...@@ -3825,7 +3825,7 @@ static void gfx_v9_0_ring_emit_ce_meta(struct amdgpu_ring *ring) ...@@ -3825,7 +3825,7 @@ static void gfx_v9_0_ring_emit_ce_meta(struct amdgpu_ring *ring)
static void gfx_v9_0_ring_emit_de_meta(struct amdgpu_ring *ring) static void gfx_v9_0_ring_emit_de_meta(struct amdgpu_ring *ring)
{ {
static struct v9_de_ib_state de_payload = {0}; struct v9_de_ib_state de_payload = {0};
uint64_t csa_addr, gds_addr; uint64_t csa_addr, gds_addr;
int cnt; int cnt;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment