Lines Matching refs:fault
372 struct amdgpu_gmc_fault *fault; in amdgpu_gmc_filter_faults() local
383 fault = &gmc->fault_ring[gmc->fault_hash[hash].idx]; in amdgpu_gmc_filter_faults()
384 while (fault->timestamp >= stamp) { in amdgpu_gmc_filter_faults()
387 if (atomic64_read(&fault->key) == key) in amdgpu_gmc_filter_faults()
390 tmp = fault->timestamp; in amdgpu_gmc_filter_faults()
391 fault = &gmc->fault_ring[fault->next]; in amdgpu_gmc_filter_faults()
394 if (fault->timestamp >= tmp) in amdgpu_gmc_filter_faults()
399 fault = &gmc->fault_ring[gmc->last_fault]; in amdgpu_gmc_filter_faults()
400 atomic64_set(&fault->key, key); in amdgpu_gmc_filter_faults()
401 fault->timestamp = timestamp; in amdgpu_gmc_filter_faults()
404 fault->next = gmc->fault_hash[hash].idx; in amdgpu_gmc_filter_faults()
424 struct amdgpu_gmc_fault *fault; in amdgpu_gmc_filter_faults_remove() local
429 fault = &gmc->fault_ring[gmc->fault_hash[hash].idx]; in amdgpu_gmc_filter_faults_remove()
431 if (atomic64_cmpxchg(&fault->key, key, 0) == key) in amdgpu_gmc_filter_faults_remove()
434 tmp = fault->timestamp; in amdgpu_gmc_filter_faults_remove()
435 fault = &gmc->fault_ring[fault->next]; in amdgpu_gmc_filter_faults_remove()
436 } while (fault->timestamp < tmp); in amdgpu_gmc_filter_faults_remove()