@@ -144,7 +144,7 @@ static void event_interrupt_poison_consumption_v9(struct kfd_node *dev,
144
144
uint16_t pasid , uint16_t client_id )
145
145
{
146
146
enum amdgpu_ras_block block = 0 ;
147
- int old_poison , ret = - EINVAL ;
147
+ int old_poison ;
148
148
uint32_t reset = 0 ;
149
149
struct kfd_process * p = kfd_lookup_process_by_pasid (pasid );
150
150
@@ -163,17 +163,13 @@ static void event_interrupt_poison_consumption_v9(struct kfd_node *dev,
163
163
case SOC15_IH_CLIENTID_SE2SH :
164
164
case SOC15_IH_CLIENTID_SE3SH :
165
165
case SOC15_IH_CLIENTID_UTCL2 :
166
- ret = kfd_dqm_evict_pasid (dev -> dqm , pasid );
167
166
block = AMDGPU_RAS_BLOCK__GFX ;
168
- if (ret )
169
- reset = AMDGPU_RAS_GPU_RESET_MODE2_RESET ;
167
+ reset = AMDGPU_RAS_GPU_RESET_MODE2_RESET ;
170
168
break ;
171
169
case SOC15_IH_CLIENTID_VMC :
172
170
case SOC15_IH_CLIENTID_VMC1 :
173
- ret = kfd_dqm_evict_pasid (dev -> dqm , pasid );
174
171
block = AMDGPU_RAS_BLOCK__MMHUB ;
175
- if (ret )
176
- reset = AMDGPU_RAS_GPU_RESET_MODE1_RESET ;
172
+ reset = AMDGPU_RAS_GPU_RESET_MODE1_RESET ;
177
173
break ;
178
174
case SOC15_IH_CLIENTID_SDMA0 :
179
175
case SOC15_IH_CLIENTID_SDMA1 :
@@ -184,22 +180,15 @@ static void event_interrupt_poison_consumption_v9(struct kfd_node *dev,
184
180
reset = AMDGPU_RAS_GPU_RESET_MODE2_RESET ;
185
181
break ;
186
182
default :
187
- break ;
183
+ dev_warn (dev -> adev -> dev ,
184
+ "client %d does not support poison consumption\n" , client_id );
185
+ return ;
188
186
}
189
187
190
188
kfd_signal_poison_consumed_event (dev , pasid );
191
189
192
- /* resetting queue passes, do page retirement without gpu reset
193
- * resetting queue fails, fallback to gpu reset solution
194
- */
195
- if (!ret )
196
- dev_warn (dev -> adev -> dev ,
197
- "RAS poison consumption, unmap queue flow succeeded: client id %d\n" ,
198
- client_id );
199
- else
200
- dev_warn (dev -> adev -> dev ,
201
- "RAS poison consumption, fall back to gpu reset flow: client id %d\n" ,
202
- client_id );
190
+ dev_warn (dev -> adev -> dev ,
191
+ "poison is consumed by client %d, kick off gpu reset flow\n" , client_id );
203
192
204
193
amdgpu_amdkfd_ras_poison_consumption_handler (dev -> adev , block , reset );
205
194
}
0 commit comments