Hi, There are some places where kmalloc might not be enough : in dapl_evd_event_alloc there is an allocation: event = kmalloc(evd->qlen * sizeof *event); whereas evd->qlen can be 128k (depends on max_cqe of the hca) and kmalloc would fail. The same goes to dapl_rbuf_alloc. Is it legit to replace those kmallocs with vmallocs ? Thanks, Guy