On 2023-04-22 2:39, Shashank Sharma wrote:
- KFD process level doorbells: doorbell pages which are allocated by
kernel but mapped and written by userspace processes, saved in struct
pdd->qpd->doorbells
size = kfd_doorbell_process_slice.
We realized that we only need 1-2 doorbells for KFD kernel level stuff
(so kept it one page), but need 2-page of doorbells for KFD process,
so they are sized accordingly.
We have also run kfd_test_suit and verified the changes for any
regression. Hope this helps in explaining the design.
Right, I missed that this was only for kernel doorbells. I wonder
whether KFD really needs its own page here. I think we only need a
doorbell for HWS. And when we use MES, I think even that isn't needed
because MES packet submissions go through amdgpu. So maybe KFD doesn't
need its own kernel-mode doorbell page any more on systems with user
graphics mode queues.
Regards,
Felix
- Shashank