Hello Christophe, Found one more thing. It looks like change ulimit for normal user without modifying system configs is not possible. And default mlock size is 64 kb. If I understand right - it's value per process. It will be good at least for linux-generic do not trap execution on failed mlock. Will remove mlock break any of your logic (drv) ?
[pid 29700] munmap(0x7f0f332ec000, 4096) = 0 [pid 29700] mmap(NULL, 71827456, PROT_READ|PROT_WRITE, MAP_SHARED, 11, 0) = 0x7f0efc841000 [pid 29700] mlock(0x7f0efc841000, 71827456) = -1 ENOMEM (Cannot allocate memory) [pid 29700] munmap(0x7f0efc841000, 71827456) = 0 [pid 29700] write(2, "_ishmphy.c:137:_odp_ishmphy_map("..., 70_ishmphy.c:137:_odp_ishmphy_map():mlock failed:Cannot allocate memory ulimit -a |grep locked max locked memory (kbytes, -l) 64 Thank you, Maxim.