Re: [dpdk-dev] Please stop using iopl() in DPDK

From: Thomas Gleixner
Date: Fri Oct 25 2019 - 16:44:08 EST


On Fri, 25 Oct 2019, Stephen Hemminger wrote:
> On Thu, 24 Oct 2019 21:45:56 -0700
> Andy Lutomirski <luto@xxxxxxxxxx> wrote:
> > 3. Use ioperm() instead of iopl().
>
> Ioperm has the wrong thread semantics. All DPDK applications have
> multiple threads and the initialization logic needs to work even
> if the thread is started later; threads can also be started by
> the user application.
>
> Iopl applies to whole process so this is not an issue.

No. iopl is also per thread and not per process. That has been that way
forever. The man page is blantantly wrong.

Both iopl and ioperm are inherited on fork.

Thanks,

tglx