On 08/30/2018 06:30 AM, Felix Kuehling wrote: > Hi, > > Currently PT BOs are kmapped in amdgpu_vm_update_directories. That > means, to avoid kernel oopses after page table evictions, I need to call > amdgpu_vm_update_directories before calling amdgpu_vm_bo_update. > > But amdgpu_vm_bo_update can also move PTs on the vm->relocated list > during huge page handling. That means I also need to call > amdgpu_vm_update_directories after amdgpu_vm_bo_update. Not very familiar with huge page handling. But from code, maybe we can kmap the PTE entry right here. Then it will update current non-huge page PTE later in amdgpu_vm_update_ptes(). Regards, Jerry > > I think a better solution is to move kmapping out of > amdgpu_vm_update_directories. But I'm not sure what's the right place > for it. Any suggestions? For a quick fix for kernel oopses after page > table evictions in the ROCm 1.9 release I'll call > amdgpu_vm_update_directories twice. If there are no new entries on the > vm->relocated lists, the second call won't add much overhead anyway. > > Thanks, > Felix >