On Fri, Oct 30, 2020 at 12:50:01PM +0000, Bernard Metzler wrote: > I see the hfi and ipath drivers similarly using ibv_cmd_post_send > to push the wqe's (while not having them in shared mem). Do they > brake as well? > Do we have an example of decent eventfd usage where I could learn > from how to use it? You'd add a uAPI accepting a eventfd and then call a sequence like: init_waitqueue_func_entry(.., my_func); init_poll_funcptr(..); events = vfs_poll(evfile, ..); And my_func will be called when the user does write() on the event fd. drivers/vfio/virqfd.c has the simplest version of this It could be some core code to do this setup with a new driver callback 'user_doorbell_trigger' or something like that. However, I see at closer inspection that rxe and siw both want the QPN to be passed in, so this doesn't look like it would work - an eventfd per QP is too much overhead. But calling post_send, even with a 0 length, is really slow. Jason