NR_REG_ONE_NIC can only be set if parent didn't register the NIC. If not, packets will notify the fd of the parent (NR_REG_ALL_NIC) and not the one we're registering now. Example bug is the current pkt-gen with multiple threads : no packets are received, because the poll should be on g->fd.