[dpdk-dev] [PATCH 1/2] virtio: initialize iopl when device is initialized
David Marchand
david.marchand at 6wind.com
Fri Mar 6 17:33:58 CET 2015
Hello Stephen,
On Fri, Mar 6, 2015 at 5:20 PM, Stephen Hemminger <
stephen at networkplumber.org> wrote:
> The issue is that virtio has no place it can do iopl() and have the IRQ
> thread
> work. It only shows up on real code where application is daemon, not in a
> toy
> demo or test application.
>
> Right now:
> gcc start
> rte_virtio_pmd_init
> iopl
> main
> daemon
> fork
> fork
> Process is now child of init not original process
>
> rte_eal_init
> fork (pthread) for irq thread
> irq thread
> (no iopl permssion)
> program start
> rte_pmd_virtio_configure
>
>
> So the only place where iopl() can be done in the proper context
> so that the IRQ (and other helper threads in future) have the correct
> permissions is in eal_init.
>
Is eth_virtio_dev_init() not a better place rather than eal ?
I prefer avoiding #ifdef pmd in eal.
--
David Marchand
More information about the dev
mailing list