On Tue, Dec 17, 2019 at 09:14:00AM -0500, Nicolas Bouliane wrote:
> >
> >
> > type of this port?
> >
> Internal
> 
> We need to have an IP address set on the interface, which is why we use the
> internal type.
> 
> 
> > Can you share your "ovs-vsctl show"
> > If meta0 is "type: internal", then it doesn't work.
> >
> 
>         Port "meta0"
>             Interface "meta0"
>                 type: internal
> 
> >
> > I think other types, such as system or tunnel port
> > should work (the xdpgeneric should see packets)
> >
> 
> Is there a fundamental reason why the 'internal' type doesn't work ?
> Is it something that could be modified at the driver level ?
> Any pointer to get me started in that direction ?
> 
> thanks !
> Nick

because internal port is a loopback device, and packet
does not go through linux tc qdisc. So the attached ebpf
program through tc does not work.
Attach XDP program also does not work. 

see the .send function.
net/openvswitch/vport-internal_dev.c
static struct vport_ops ovs_internal_vport_ops = { 
    .type       = OVS_VPORT_TYPE_INTERNAL,
    .create     = internal_dev_create,
    .destroy    = internal_dev_destroy,
    .send       = internal_dev_recv,
};

May I know your use case?
William
_______________________________________________
dev mailing list
d...@openvswitch.org
https://mail.openvswitch.org/mailman/listinfo/ovs-dev

Reply via email to