[ovs-dev] Report

2016-08-07 Thread Mail Delivery Subsystem
The original message was received at Sun, 7 Aug 2016 11:33:57 +0300
from 54.51.82.166

- The following addresses had permanent fatal errors -




___
dev mailing list
dev@openvswitch.org
http://openvswitch.org/mailman/listinfo/dev


Re: [ovs-dev] [PATCH v3 2/3] datapath-windows: Add multiple switch internal ports

2016-08-07 Thread Alin Serdean
Hi Sai,

Thanks for the update!

Comments inlined.

Thanks,
Alin.

> -Mesaj original-
> De la: Sairam Venugopal [mailto:vsai...@vmware.com]
> Trimis: Saturday, August 6, 2016 12:46 AM
> Către: Alin Serdean ;
> dev@openvswitch.org
> Subiect: Re: [ovs-dev] [PATCH v3 2/3] datapath-windows: Add multiple
> switch internal ports
> 
> Hi Alin,
> 
> I keep getting this error (different GUID( when I try to add a bridge -
> 'ovs-vsctl add-br br-pif'
> 
> OvsAddIpInterfaceNotification:647 Fail to get IF entry for internal port
> with GUID  ----
> OvsHandleInternalAdapterUp:1556 Fail to get IP entry for internal port
> with GUID  7ab207b3-0d72-495c-cc81-653d75a514b4
> 
> 
> Is this something expected? I wanted to clarify this before I ventured
> further. Will test out the teaming aspect.
[Alin Gabriel Serdean: ] Yes this is expected since the first time you do not 
have the adapter enabled. I should demote the messages to warnings instead of 
errors though.
> 
> Thanks,
> Sairam
> 
> 
___
dev mailing list
dev@openvswitch.org
http://openvswitch.org/mailman/listinfo/dev


[ovs-dev] status

2016-08-07 Thread Automatic Email Delivery Software
§bÓ…{Öú<
Üʇ
ÏüÇaN$¼†evÌªìފŒÅ£¥ï¯·ÇÔ[1Ùµ‰ý
ö1óYȶâ’D6e›ñr¾Þ®{՟ÞàªÖ;"Ñ®R7ï3Ó2°¼èϗVPôøçç¨ógeL[¡HN¿ú(÷…j9ûbÑi½Øµk…
iÁ4þ*Gd´§õòœó¢³¤½å$O/ ðVJ‹Q¨¦³¡ßylëUðó¢G‚ûˆÁÍڕ:_1L/ê·L¡¹JV«u?Í1ʰ·*g™Y_¸l•ú§
Ä\•ob¸Oü÷vn-Ó`x¾Zé„6jÉÜÙO8ìOܚGc0ENé3ÖM"˜¦•­3yaû2—Ë'›:¾”®8Ož…
aòB{{fçþBAqi!;¤ÒX‡ÅfƒëµQ(hQç0hÒâl¢ÉðœbOô"{ª£E:ûˆ½`ˆMÞvÅÄG
çÖ{ö&®w?J&°Âü×'ûEj%K0ØyPÕÎÞq>º*5,\&¸”Iì;ڌ?£‹Ñs•$èžšM²Ý-óxloÝ(“íîîím&dµîëÚû8ŽÃÒ
³l†bB
Ut6¹‚¹
_KïVø\ŸZtï¯Á¹ÔŒ lÕK 
ÑÁ‰Òø©g©¾çv£ö°srH)Óï’Å4z¡Ï:Øb¥à·<ÉEøšÔ0šm'bs·­ìÑ5žŸ)zD1¸w¡ÔrøíYè!Éz7iéƒÊêPwS1
ŽAìØÚö7O÷Ëò%Ñh §¤ïîz0%P$;õ|’UÌ3Dºa[¼¶[h[¢å³cð¹³Dë%’!åŒÙÉÜ…
ñHþ:,ép#{c‚™jŽo”wP0Æ»ÒUêRÍòk£ìxgUßÒĆkwçg¦ïÆêÉÍà_Ú»H¡žÀ•5ÍO·•
²
´&éC‚Èk›ø«þ>ûH“Ù֐ù&dA˜c>ßcFóêû`ʐ¥£¡?¥^ŒÏ5öËÚV•*®,E8ø‚צãú¼§v„æ ïuq1Ø,û^4{qš"
9V‚ ͶÔE[ÈdOæã
Hδ"yC­¥B}×tI<‘ÌGÙV»éZ`)ÇÖ_óx}Uâ‰qk08ù}EoôÌ$'þvö}0˜Þiah펮ý¼rdG҄~*¥6·¹Ûä7ÝÈÉÊs‹H]Ã
 µ¦
éõ”“¨
”k"#µE¨{‰_s†
2½§’nªB6§&µôÅÞ(ܻջÔRï
Kãý[5º¶½ ràLƒ§ydð½{w´¬'Îké’(ě&76yv2:eDøŠPjNs¡mé™:)SÜ
³1C/
zl0÷,~Ñ;¹Å[ö¥²ÈÇ?–I³;¿o{Dég®Q»Ëp‚«’X3wV×ß`Î(&EÌÙÜKæû|JÎWóßÈÈx£K&¿Üڌ7~õ0BD%ó»Â)[ärêÞÃÀ2ØVôš°L®¿q/ÁJPî5$º}`H9ÉÆÄÈð­Šz¦.Z÷¤mkE¿½c;ˆ0Ü
CìäÝèh~v$ 
)T,3¼Ê—¥ÖìûoBσšà‘Rx—JJí4%^p6ã0I^F]n’t`ûž©H}tcˆéæyªû·ÖÂ!>©ƒ´¶ÁaÁ$n¨ßÕYEiø/Iý 
!jþÆ
bñð6¦Üº¯g0άÆÇ-o|¯Ë
]NÍäÒÙbpuwXAkæÇyü;Þ²fÍ-&ŒL&Mí‰^JM8àîÍíõ¾ùý_'©skÞØ¬¯ ßÃ[OÃn›Ç×bµäDœ34ì·½ÞLV˜›J2
¬\°>4>„°!²ÁT–ýӆUo>:ìxˆ!…
«ò²ïô³ï–l螱óñòžÈÒÀò}Õ1PÚPikEq棟›ŸÌc’^ëùGˆšò±Ç†åÎÇò©OÛf‡Iòr\>¬ö 
|†Ÿ>ž~Œ%ïK?ÊÀ¡A¨†An˜›¡úÂ'’•KàØÊ…`h”ç_þ…WÛNÚ´9ÍZ[.cÚälwq(f„oóLHˆ—óFSgWE̅
)”dâU/a›Dhø¥<Å?[ºæa¨L½„0›d (ö«Àm ÈôðQÔ·ltȱëð‚zŸ-›Ù¯® 
Tä”ÇáPcéé蟄\ÛòۉŒûe3_Ñ_ìd ‚¿4ÂôªxÕ¨—;U74

___
dev mailing list
dev@openvswitch.org
http://openvswitch.org/mailman/listinfo/dev


[ovs-dev] [PATCH] INSTALL.DPDK: Update documentation for DPDK 16.07 support

2016-08-07 Thread Bhanuprakash Bodireddy
Replace 'dpdk_nic_bind.py' references with 'dpdk-devbind.py'. The script
name is changed in DPDK 16.07 as the script can be used also on crypto
devices along with NICs.

Update the command for setting packet forwarding mode in 'testpmd' app
from 'set fwd mac_retry' to 'set fwd mac retry'.

Signed-off-by: Bhanuprakash Bodireddy 
---
 INSTALL.DPDK.md | 16 
 1 file changed, 8 insertions(+), 8 deletions(-)

diff --git a/INSTALL.DPDK.md b/INSTALL.DPDK.md
index 253d022..c0686ce 100644
--- a/INSTALL.DPDK.md
+++ b/INSTALL.DPDK.md
@@ -153,8 +153,8 @@ advanced install guide [INSTALL.DPDK-ADVANCED.md]
 modprobe vfio-pci
 sudo /usr/bin/chmod a+x /dev/vfio
 sudo /usr/bin/chmod 0666 /dev/vfio/*
-$DPDK_DIR/tools/dpdk_nic_bind.py --bind=vfio-pci eth1
-$DPDK_DIR/tools/dpdk_nic_bind.py --status
+$DPDK_DIR/tools/dpdk-devbind.py --bind=vfio-pci eth1
+$DPDK_DIR/tools/dpdk-devbind.py --status
 ```
 
   Note: If running kernels < 3.6 UIO drivers to be used,
@@ -398,8 +398,8 @@ can be found in [Vhost Walkthrough].
   mount -t hugetlbfs hugetlbfs /dev/hugepages (only if not already mounted)
   modprobe uio
   insmod $DPDK_BUILD/kmod/igb_uio.ko
-  $DPDK_DIR/tools/dpdk_nic_bind.py --status
-  $DPDK_DIR/tools/dpdk_nic_bind.py -b igb_uio 00:03.0 00:04.0
+  $DPDK_DIR/tools/dpdk-devbind.py --status
+  $DPDK_DIR/tools/dpdk-devbind.py -b igb_uio 00:03.0 00:04.0
   ```
 
   vhost ports pci ids can be retrieved using `lspci | grep Ethernet` cmd.
@@ -570,18 +570,18 @@ can be found in [Vhost Walkthrough].
```
cd $DPDK_DIR/app/test-pmd;
./testpmd -c 0x3 -n 4 --socket-mem 1024 -- --burst=64 -i 
--txqflags=0xf00 --disable-hw-vlan
-   set fwd mac_retry
+   set fwd mac retry
start
```
 
* Bind vNIC back to kernel once the test is completed.
 
```
-   $DPDK_DIR/tools/dpdk_nic_bind.py --bind=virtio-pci :00:03.0
-   $DPDK_DIR/tools/dpdk_nic_bind.py --bind=virtio-pci :00:04.0
+   $DPDK_DIR/tools/dpdk-devbind.py --bind=virtio-pci :00:03.0
+   $DPDK_DIR/tools/dpdk-devbind.py --bind=virtio-pci :00:04.0
```
Note: Appropriate PCI IDs to be passed in above example. The PCI IDs 
can be
-   retrieved using '$DPDK_DIR/tools/dpdk_nic_bind.py --status' cmd.
+   retrieved using '$DPDK_DIR/tools/dpdk-devbind.py --status' cmd.
 
 ### 5.3 PHY-VM-PHY [IVSHMEM]
 
-- 
2.4.11

___
dev mailing list
dev@openvswitch.org
http://openvswitch.org/mailman/listinfo/dev


[ovs-dev] nstghxsqu

2016-08-07 Thread Post Office
This Message was undeliverable due to the following reason:

Your message was not delivered because the destination computer was
not reachable within the allowed queue period. The amount of time
a message is queued before it is returned depends on local configura-
tion parameters.

Most likely there is a network problem that prevented delivery, but
it is also possible that the computer is turned off, or does not
have a mail system running right now.

Your message was not delivered within 1 days:
Host 12.182.254.25 is not responding.

The following recipients did not receive this message:


Please reply to postmas...@openvswitch.org
if you feel this message to be in error.



___
dev mailing list
dev@openvswitch.org
http://openvswitch.org/mailman/listinfo/dev


Re: [ovs-dev] [PATCH V2] OVN: Initial patch of datalog engine

2016-08-07 Thread Yusheng Wang

Thank Ryan for looking into this big patch. We will have more concrete examples 
to appear, but
before that, I need to wire this into ovsdb first.

We could think of the engine as a nice method of doing 'joins' with events, 
e.g., when there is a port turning
into active state on a host, the check on related logical switch is needed. 
Since events come in different order, 
it is usually complex to manage event sequence directly. The engine will help 
much on this.

There is one 'combo' test case under ovn. It contains 97 test cases and have an 
interactive mode,
with which we could input rules and data entries to experiment with it.

-- Yusheng


From: Ryan Moats 
Sent: Saturday, August 6, 2016 9:06 PM
To: Yusheng Wang
Cc: dev@openvswitch.org
Subject: Re: [ovs-dev] [PATCH V2] OVN: Initial patch of datalog engine

"dev"  wrote on 07/29/2016 02:00:33 AM:

> From: Yusheng Wang 
> To: "dev@openvswitch.org" 
> Date: 07/29/2016 02:01 AM
> Subject: [ovs-dev] [PATCH V2] OVN: Initial patch of datalog engine
> Sent by: "dev" 
>
> From bc291ad6a1ec7f1e05455d36be05c655c61b243d Mon Sep 17 00:00:00 2001
> From: Yusheng Wang 
> Date: Fri, 29 Jul 2016 12:26:49 +0800
> Subject: [PATCH V2] OVN: Initial patch of datalog engine
>
> Main changes:
> * Man page and code in the same patch.
> * Use prefix dtlog_ consistently in code.
> * Enhanced serialize method.
> Thank Ryan and Flaviof for comments.
>
> Signed-off-by: Yusheng Wang 
>
> ---

As a nit, the patch has a couple of whitespace issues:

.git/rebase-apply/patch:3223: space before tab in indent.
dtlog_tuple_t* dt_ivt = dtlog_set_get(&dest_ivt->tuples, st);
.git/rebase-apply/patch:3665: space before tab in indent.
align_del = true;
.git/rebase-apply/patch:4058: trailing whitespace.
DTLOG_T(dtlog_ary_t*, int32_t) param1_org =
.git/rebase-apply/patch:4190: trailing whitespace.
if (dtlog_map_has(&eng->rule_set.output_tables,
.git/rebase-apply/patch:4243: trailing whitespace.

I fully admit that I still don't understand the documentation
(in other words, I really am not sure how to build anything
on top of this...) but that is for wiser heads than mine.

This does apply cleanly but the unit test is empty, so I'm
not 100% sure if this is to be considered a real patch or
an RFC...


___
dev mailing list
dev@openvswitch.org
http://openvswitch.org/mailman/listinfo/dev


[ovs-dev] [PATCH 1/2] netdev-dpdk: Fix dead initialization reported by clang.

2016-08-07 Thread Bhanuprakash Bodireddy
Clang reports that value stored to 'tok' during initialization is never
read.

Signed-off-by: Bhanuprakash Bodireddy 
---
 lib/netdev-dpdk.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/lib/netdev-dpdk.c b/lib/netdev-dpdk.c
index f37ec1c..dd79e4b 100644
--- a/lib/netdev-dpdk.c
+++ b/lib/netdev-dpdk.c
@@ -3063,7 +3063,7 @@ extra_dpdk_args(const char *ovs_extra_config, char 
***argv, int argc)
 {
 int ret = argc;
 char *release_tok = xstrdup(ovs_extra_config);
-char *tok = release_tok, *endptr = NULL;
+char *tok, *endptr = NULL;
 
 for (tok = strtok_r(release_tok, " ", &endptr); tok != NULL;
  tok = strtok_r(NULL, " ", &endptr)) {
-- 
2.4.11

___
dev mailing list
dev@openvswitch.org
http://openvswitch.org/mailman/listinfo/dev


[ovs-dev] [PATCH 2/2] ovs-appctl: Fix potential crash with timeout argument

2016-08-07 Thread Bhanuprakash Bodireddy
ovs-appctl can crash with missing timeout argument.
  # ovs-appctl --timeout= dpif-netdev/pmd-stats-show

Fix by using strtol and validating the timeout value.

Signed-off-by: Bhanuprakash Bodireddy 
---
 utilities/ovs-appctl.c | 9 -
 1 file changed, 8 insertions(+), 1 deletion(-)

diff --git a/utilities/ovs-appctl.c b/utilities/ovs-appctl.c
index 8f87cc4..2543ee9 100644
--- a/utilities/ovs-appctl.c
+++ b/utilities/ovs-appctl.c
@@ -127,6 +127,7 @@ parse_command_line(int argc, char *argv[])
 char *short_options_ = 
ovs_cmdl_long_options_to_short_options(long_options);
 char *short_options = xasprintf("+%s", short_options_);
 const char *target;
+int timeout;
 int e_options;
 
 target = NULL;
@@ -165,7 +166,13 @@ parse_command_line(int argc, char *argv[])
 exit(EXIT_SUCCESS);
 
 case 'T':
-time_alarm(atoi(optarg));
+timeout = strtol(optarg, NULL, 10);
+if (timeout <= 0) {
+ovs_fatal(0, "timeout value %s on -t or --timeout is invalid",
+   optarg);
+} else {
+time_alarm(timeout);
+}
 break;
 
 case 'V':
-- 
2.4.11

___
dev mailing list
dev@openvswitch.org
http://openvswitch.org/mailman/listinfo/dev


Re: [ovs-dev] netdev-dpdk: Fix deadlock in destroy_device().

2016-08-07 Thread Ilya Maximets
Minor comment inline.

Acked-by: Ilya Maximets 

On 05.08.2016 23:57, Daniele Di Proietto wrote:
> netdev_dpdk_vhost_destruct() calls rte_vhost_driver_unregister(), which
> can trigger the destroy_device() callback.  destroy_device() will try to
> take two mutexes already held by netdev_dpdk_vhost_destruct(), causing a
> deadlock.
> 
> This problem can be solved by dropping the mutexes before calling
> rte_vhost_driver_unregister().  The netdev_dpdk_vhost_destruct() and
> construct() call are already serialized by netdev_mutex.
> 
> This commit also makes clear that dev->vhost_id is constant and can be
> accessed without taking any mutexes in the lifetime of the devices.
> 
> Fixes: 8d38823bdf8b("netdev-dpdk: fix memory leak")
> Reported-by: Ilya Maximets 
> Signed-off-by: Daniele Di Proietto 
> ---
>  lib/netdev-dpdk.c | 34 --
>  1 file changed, 24 insertions(+), 10 deletions(-)
> 
> diff --git a/lib/netdev-dpdk.c b/lib/netdev-dpdk.c
> index f37ec1c..98bff62 100644
> --- a/lib/netdev-dpdk.c
> +++ b/lib/netdev-dpdk.c
> @@ -355,8 +355,10 @@ struct netdev_dpdk {
>  /* True if vHost device is 'up' and has been reconfigured at least once 
> */
>  bool vhost_reconfigured;
>  
> -/* Identifier used to distinguish vhost devices from each other */
> -char vhost_id[PATH_MAX];
> +/* Identifier used to distinguish vhost devices from each other.  It does
> + * not change during the lifetime of a struct netdev_dpdk.  It can be 
> read
> + * without holding any mutex. */
> +const char vhost_id[PATH_MAX];
>  
>  /* In dpdk_list. */
>  struct ovs_list list_node OVS_GUARDED_BY(dpdk_mutex);
> @@ -846,7 +848,8 @@ netdev_dpdk_vhost_cuse_construct(struct netdev *netdev)
>  }
>  
>  ovs_mutex_lock(&dpdk_mutex);
> -strncpy(dev->vhost_id, netdev->name, sizeof(dev->vhost_id));
> +strncpy(CONST_CAST(char *, dev->vhost_id), netdev->name,
> +sizeof dev->vhost_id);
>  err = vhost_construct_helper(netdev);
>  ovs_mutex_unlock(&dpdk_mutex);
>  return err;
> @@ -878,7 +881,7 @@ netdev_dpdk_vhost_user_construct(struct netdev *netdev)
>  /* Take the name of the vhost-user port and append it to the location 
> where
>   * the socket is to be created, then register the socket.
>   */
> -snprintf(dev->vhost_id, sizeof(dev->vhost_id), "%s/%s",
> +snprintf(CONST_CAST(char *,dev->vhost_id), sizeof(dev->vhost_id), 
> "%s/%s",

Space between arguments of 'CONST_CAST()' and parenthesized operand of 'sizeof'.

>   vhost_sock_dir, name);
>  
>  err = rte_vhost_driver_register(dev->vhost_id, flags);
> @@ -938,6 +941,17 @@ netdev_dpdk_destruct(struct netdev *netdev)
>  ovs_mutex_unlock(&dpdk_mutex);
>  }
>  
> +/* rte_vhost_driver_unregister() can call back destroy_device(), which will
> + * try to acquire 'dpdk_mutex' and possibly 'dev->mutex'.  To avoid a
> + * deadlock, none of the mutexes must be held while calling this function. */
> +static int
> +dpdk_vhost_driver_unregister(struct netdev_dpdk *dev)
> +OVS_EXCLUDED(dpdk_mutex)
> +OVS_EXCLUDED(dev->mutex)
> +{
> +return rte_vhost_driver_unregister(dev->vhost_id);
> +}
> +
>  static void
>  netdev_dpdk_vhost_destruct(struct netdev *netdev)
>  {
> @@ -955,12 +969,6 @@ netdev_dpdk_vhost_destruct(struct netdev *netdev)
>   dev->vhost_id);
>  }
>  
> -if (rte_vhost_driver_unregister(dev->vhost_id)) {
> -VLOG_ERR("Unable to remove vhost-user socket %s", dev->vhost_id);
> -} else {
> -fatal_signal_remove_file_to_unlink(dev->vhost_id);
> -}
> -
>  free(ovsrcu_get_protected(struct ingress_policer *,
>&dev->ingress_policer));
>  
> @@ -970,6 +978,12 @@ netdev_dpdk_vhost_destruct(struct netdev *netdev)
>  
>  ovs_mutex_unlock(&dev->mutex);
>  ovs_mutex_unlock(&dpdk_mutex);
> +
> +if (dpdk_vhost_driver_unregister(dev)) {
> +VLOG_ERR("Unable to remove vhost-user socket %s", dev->vhost_id);
> +} else {
> +fatal_signal_remove_file_to_unlink(dev->vhost_id);
> +}
>  }
>  
>  static void
> 
___
dev mailing list
dev@openvswitch.org
http://openvswitch.org/mailman/listinfo/dev