Hi David,

> This functionality is at least used by virtio-net-pmd.
> So we cannot remove this without a fix for virtio-net-pmd.

It appears that virtio-net-pmd hasn't been merged in yet? At least I can't see 
it in the git tree for 1.6 release.

> Yet, even if we remove this from the eal, I think we should provide a proper
> api to bind/unbind devices to kernel drivers.
> This way PMDs can use this api and forget about OS dependencies
> (linux/bsd).

Please forgive me for repeating myself, but I'm still not convinced that 
binding/unbinding the kernel drivers has to be the responsibility of the 
application in the first place. As far as I know, the reasons why the 
binding/unbinding code was there are purely historical and have no rationale 
behind them other than "this is how it was first implemented". Plus, correct me 
if I'm wrong, but FreeBSD has some issues with port binding/unbinding - i.e. it 
can't do that at all, at least during runtime, so on BSD it's even less of an 
issue.

Anyway, the reason I'm bringing this subject up in the first place is I'm 
preparing a patch to support VFIO driver alongside igb_uio. Among the changes 
I'm preparing to make is getting rid of the device ID list in igb_uio, so that 
any driver could be bound to it (via writing to new_id) - i.e. making it 
similar to how pci_stub, vfio-pci  et al work. A consequence of that will be 
that igb_uio won't try to bind any devices unless the user explicitly asks for 
it, meaning that the virtio device will not be bound to igb_uio by default. I 
think this will remedy the issues with virtio-net-pmd without the need for 
force-unbind logic in the EAL.

Best regards,
Anatoly Burakov
DPDK SW Engineer

--------------------------------------------------------------
Intel Shannon Limited
Registered in Ireland
Registered Office: Collinstown Industrial Park, Leixlip, County Kildare
Registered Number: 308263
Business address: Dromore House, East Park, Shannon, Co. Clare



Reply via email to