2018-12-06 16:26:10 UTC
we are interested to run DPDK 18.11 on POWER8 based server. I've read
the recent release notes update regarding P8 support. At the same time
after some playing I was able to run l2fwd with huge pages normally by
hacking following commits:
Exact modifications are:
< #ifdef RTE_ARCH_PPC_64
<flags |= MAP_HUGETLB;
< static uint64_t baseaddr = 0;
static uint64_t baseaddr = 0x100000000;Without the modifications above, l2fwd with huge pages fails. The reason
is following mmap() in alloc_seg() failing with EBUSY.
mmap(0x101000000, 34376515584, PROT_READ, MAP_PRIVATE|MAP_ANONYMOUS, -1,
0) = 0x101000000 // first mmap in alloc_va_space() ->
mmap(0x101000000, 16777216, PROT_READ|PROT_WRITE,
MAP_SHARED|MAP_FIXED|MAP_POPULATE, 136, 0) = -1 EBUSY (Device or
resource busy) // this mmap in alloc_seg() fails.
My goal is to get DPDK 18.11 + support for POWER8 based machines. I'm
new to DPDK and I'd like to ask your feedback if the hacks above could
harm any DPDK functionality? (so far I do not see any obvious issue). If
not, can we go further with POWER8 support in new DPDK versions?
thanks in advance,