Hi,
I have been validating the userspace tunneling patches for DPDK and have
encountered some problems.
My set-up is as follows:
192.168.1.1/24 192.168.1.2/24
+------------------------+ +------------------------+
| br1 | | br1
|
+------------------------+ +------------------------+
| vxlan1 | | vxlan1
|
+------------------------+ +------------------------+
| tap1 (192.168.1.10) | | tap1(192.168.1.20) |
+------------------------+ +------------------------+
| |
| |
| |
| |
172.168.1.1/24 172.168.1.2/24
+--------------+ +-----------+
| br0 | | br0
|
+--------------+ +-----------+
| dpdk0 |----------------------| dpdk0 |
+--------------+ +-----------+
Host A Host B
The dpdk devices have been connected back to back and the tap devices are used
by VMs on either host.
The main issue I am encountering is the vswitchd appears to be crashing and I
am unable to root cause the issue. One circumstance where the daemon crashes is
if VTEP A is pinged from Host B and vice versa. There have been many other
instances where the vswitchd crashes however I have been unable to trace the
cause.
Secondly, the route added by tnl/route/add seems to silently disappear a couple
of seconds after first adding it, as seen in tnl/route/show. However, once it's
re-added, it appears to remain.
Kind Regards,
Ciara
-----Original Message-----
From: dev [mailto:[email protected]] On Behalf Of Jarno Rajahalme
Sent: Tuesday, October 14, 2014 1:10 AM
To: Pravin Shelar
Cc: [email protected]
Subject: Re: [ovs-dev] [PATCH RFC 2/2] openvswitch: Userspace tunneling.
On Oct 13, 2014, at 2:32 PM, Pravin Shelar <[email protected]> wrote:
>>> + case OVS_ACTION_ATTR_TUNNEL_PUSH:
>>> + if (*depth < MAX_RECIRC_DEPTH) {
>>> + struct dpif_packet *tnl_pkt[NETDEV_MAX_RX_BATCH];
>>> + int err;
>>> +
>>> + if (may_steal) {
>>> + dp_netdev_clone_pkt_batch(tnl_pkt, packets, cnt);
>>> + packets = tnl_pkt;
>>> + }
>>
>> Should this be the reverse? Clone if can NOT take the packets?
> right,
>
>>> +
>>> + err = odp_push_tunnel_action(dp, a, packets, cnt);
>>> + if (err) {
>>> + dp_netdev_drop_packets(tnl_pkt, cnt, may_steal);
>>> + break;
>>> + }
>>> +
>>> + (*depth)++;
>>> + dp_netdev_input(pmd, packets, cnt);
>>> + (*depth)--;
>>> + return;
>>> + }
>>
>> Should “break” here.
> packets are already consumed so we can not break here.
>
Do you really intend to fall through to the TUNNEL_POP case?
Jarno
>>> +
>>> + case OVS_ACTION_ATTR_TUNNEL_POP:
>>> + if (*depth >= MAX_RECIRC_DEPTH) {
>>> + break;
>>> + }
>>> +
>>> + p =
_______________________________________________
dev mailing list
[email protected]
http://openvswitch.org/mailman/listinfo/dev
--------------------------------------------------------------
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
This e-mail and any attachments may contain confidential material for the sole
use of the intended recipient(s). Any review or distribution by others is
strictly prohibited. If you are not the intended recipient, please contact the
sender and delete all copies.
_______________________________________________
dev mailing list
[email protected]
http://openvswitch.org/mailman/listinfo/dev