]> review.fuel-infra Code Review - openstack-build/neutron-build.git/commitdiff
Imported Translations from Transifex
authorOpenStack Proposal Bot <openstack-infra@lists.openstack.org>
Fri, 1 Aug 2014 06:06:53 +0000 (06:06 +0000)
committerOpenStack Proposal Bot <openstack-infra@lists.openstack.org>
Fri, 1 Aug 2014 06:06:53 +0000 (06:06 +0000)
Change-Id: Ic168d306e76c0404184bb3636f51e257749cb8b0

neutron/locale/en_GB/LC_MESSAGES/neutron-log-critical.po [new file with mode: 0644]
neutron/locale/en_GB/LC_MESSAGES/neutron-log-error.po
neutron/locale/en_GB/LC_MESSAGES/neutron-log-info.po
neutron/locale/en_GB/LC_MESSAGES/neutron-log-warning.po
neutron/locale/en_US/LC_MESSAGES/neutron.po
neutron/locale/neutron.pot
neutron/locale/te_IN/LC_MESSAGES/neutron-log-critical.po [new file with mode: 0644]
neutron/locale/te_IN/LC_MESSAGES/neutron-log-error.po [new file with mode: 0644]
neutron/locale/te_IN/LC_MESSAGES/neutron-log-info.po [new file with mode: 0644]
neutron/locale/te_IN/LC_MESSAGES/neutron-log-warning.po [new file with mode: 0644]

diff --git a/neutron/locale/en_GB/LC_MESSAGES/neutron-log-critical.po b/neutron/locale/en_GB/LC_MESSAGES/neutron-log-critical.po
new file mode 100644 (file)
index 0000000..f738cbc
--- /dev/null
@@ -0,0 +1,20 @@
+# Translations template for neutron.
+# Copyright (C) 2014 ORGANIZATION
+# This file is distributed under the same license as the neutron project.
+#
+# Translators:
+msgid ""
+msgstr ""
+"Project-Id-Version: Neutron\n"
+"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
+"POT-Creation-Date: 2014-08-01 06:06+0000\n"
+"PO-Revision-Date: 2014-05-30 06:24+0000\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: English (United Kingdom) (http://www.transifex.com/projects/p/"
+"neutron/language/en_GB/)\n"
+"Language: en_GB\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Generated-By: Babel 1.3\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
index ed7ef1d3a4419aa1e78cbc3b442ded6553b3dcbe..0d947c649532022b92b14f947153c85a28c6a870 100644 (file)
@@ -3,13 +3,14 @@
 # This file is distributed under the same license as the neutron project.
 #
 # Translators:
+# Andi Chandler <andi@gowling.com>, 2014
 msgid ""
 msgstr ""
 "Project-Id-Version: Neutron\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2014-07-22 06:06+0000\n"
-"PO-Revision-Date: 2014-06-30 20:07+0000\n"
-"Last-Translator: openstackjenkins <jenkins@openstack.org>\n"
+"POT-Creation-Date: 2014-08-01 06:06+0000\n"
+"PO-Revision-Date: 2014-07-25 23:10+0000\n"
+"Last-Translator: Andi Chandler <andi@gowling.com>\n"
 "Language-Team: English (United Kingdom) (http://www.transifex.com/projects/p/"
 "neutron/language/en_GB/)\n"
 "Language: en_GB\n"
@@ -25,17 +26,21 @@ msgid ""
 "Backward compatibility unavailable for deprecated policy %s. The policy will "
 "not be enforced"
 msgstr ""
+"Backward compatibility unavailable for deprecated policy %s. The policy will "
+"not be enforced"
 
 #: neutron/policy.py:280
 #, python-format
 msgid "Policy check error while calling %s!"
-msgstr ""
+msgstr "Policy check error while calling %s!"
 
 #: neutron/cmd/sanity_check.py:58
 msgid ""
 "Nova notifications are enabled, but novaclient is not installed. Either "
 "disable nova notifications or install python-novaclient."
 msgstr ""
+"Nova notifications are enabled, but novaclient is not installed. Either "
+"disable nova notifications or install python-novaclient."
 
 #: neutron/openstack/common/excutils.py:76
 #, python-format
@@ -47,7 +52,7 @@ msgstr "Original exception being dropped: %s"
 msgid "Unexpected exception occurred %d time(s)... retrying."
 msgstr "Unexpected exception occurred %d time(s)... retrying."
 
-#: neutron/openstack/common/periodic_task.py:179
+#: neutron/openstack/common/periodic_task.py:202
 #, python-format
 msgid "Error during %(full_task_name)s: %(e)s"
 msgstr "Error during %(full_task_name)s: %(e)s"
index ac0baf8ef9f4cc90eeb1962e4fe14adec4a921dd..1399ebb49dc07177ce4df3b04fff9489b47a9e5c 100644 (file)
@@ -3,13 +3,14 @@
 # This file is distributed under the same license as the neutron project.
 #
 # Translators:
+# Andi Chandler <andi@gowling.com>, 2014
 msgid ""
 msgstr ""
 "Project-Id-Version: Neutron\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2014-07-21 06:06+0000\n"
-"PO-Revision-Date: 2014-07-18 20:49+0000\n"
-"Last-Translator: openstackjenkins <jenkins@openstack.org>\n"
+"POT-Creation-Date: 2014-08-01 06:06+0000\n"
+"PO-Revision-Date: 2014-07-25 15:11+0000\n"
+"Last-Translator: Andi Chandler <andi@gowling.com>\n"
 "Language-Team: English (United Kingdom) (http://www.transifex.com/projects/p/"
 "neutron/language/en_GB/)\n"
 "Language: en_GB\n"
@@ -24,13 +25,14 @@ msgstr ""
 msgid ""
 "Inserting policy:%(new_policy)s in place of deprecated policy:%(old_policy)s"
 msgstr ""
+"Inserting policy:%(new_policy)s in place of deprecated policy:%(old_policy)s"
 
-#: neutron/openstack/common/periodic_task.py:125
+#: neutron/openstack/common/periodic_task.py:126
 #, python-format
 msgid "Skipping periodic task %(task)s because its interval is negative"
 msgstr "Skipping periodic task %(task)s because its interval is negative"
 
-#: neutron/openstack/common/periodic_task.py:130
+#: neutron/openstack/common/periodic_task.py:131
 #, python-format
 msgid "Skipping periodic task %(task)s because it is disabled"
 msgstr "Skipping periodic task %(task)s because it is disabled"
@@ -47,7 +49,7 @@ msgstr "Parent process has died unexpectedly, exiting"
 #: neutron/openstack/common/service.py:271
 #, python-format
 msgid "Child caught %s, exiting"
-msgstr ""
+msgstr "Child caught %s, exiting"
 
 #: neutron/openstack/common/service.py:310
 msgid "Forking too fast, sleeping"
@@ -80,7 +82,7 @@ msgstr "Caught %s, stopping children"
 
 #: neutron/openstack/common/service.py:408
 msgid "Wait called after thread killed.  Cleaning up."
-msgstr ""
+msgstr "Wait called after thread killed.  Cleaning up."
 
 #: neutron/openstack/common/service.py:424
 #, python-format
index 9e6b5d45f71e82f6c263918800966cc62e61d195..dc71a276498b2a466102aa38f22db02f5472845a 100644 (file)
@@ -3,13 +3,14 @@
 # This file is distributed under the same license as the neutron project.
 #
 # Translators:
+# Andi Chandler <andi@gowling.com>, 2014
 msgid ""
 msgstr ""
 "Project-Id-Version: Neutron\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2014-07-21 06:06+0000\n"
-"PO-Revision-Date: 2014-06-30 19:27+0000\n"
-"Last-Translator: openstackjenkins <jenkins@openstack.org>\n"
+"POT-Creation-Date: 2014-08-01 06:06+0000\n"
+"PO-Revision-Date: 2014-07-25 23:10+0000\n"
+"Last-Translator: Andi Chandler <andi@gowling.com>\n"
 "Language-Team: English (United Kingdom) (http://www.transifex.com/projects/p/"
 "neutron/language/en_GB/)\n"
 "Language: en_GB\n"
@@ -25,11 +26,13 @@ msgid ""
 "Found deprecated policy rule:%s. Please consider upgrading your policy "
 "configuration file"
 msgstr ""
+"Found deprecated policy rule:%s. Please consider upgrading your policy "
+"configuration file"
 
 #: neutron/policy.py:137
 #, python-format
 msgid "Unable to find data type descriptor for attribute %s"
-msgstr ""
+msgstr "Unable to find data type descriptor for attribute %s"
 
 #: neutron/openstack/common/service.py:364
 #, python-format
index 621a5297fe78f6e0806da65d18fe3ad7131b7439..e0b23497d9373a37a6ce1c1fe690155c581d0d1f 100644 (file)
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Neutron\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2014-07-22 06:06+0000\n"
+"POT-Creation-Date: 2014-08-01 06:06+0000\n"
 "PO-Revision-Date: 2013-01-28 21:54+0000\n"
 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 "Language-Team: English (United States) "
@@ -409,7 +409,7 @@ msgstr ""
 msgid "Number of threads to use during sync process."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:65 neutron/agent/l3_agent.py:335
+#: neutron/agent/dhcp_agent.py:65 neutron/agent/l3_agent.py:391
 #: neutron/agent/metadata/namespace_proxy.py:165
 msgid "Location of Metadata Proxy UNIX domain socket"
 msgstr ""
@@ -489,22 +489,23 @@ msgid ""
 "port %(port_id)s, for router %(router_id)s will be considered"
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:580 neutron/agent/l3_agent.py:1163
-#: neutron/agent/metadata/agent.py:362
+#: neutron/agent/dhcp_agent.py:580 neutron/agent/l3_agent.py:1751
+#: neutron/agent/metadata/agent.py:363
 #: neutron/services/metering/agents/metering_agent.py:272
 msgid ""
 "Neutron server does not support state report. State report for this agent"
 " will be disabled."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:586 neutron/agent/l3_agent.py:1168
-#: neutron/agent/metadata/agent.py:367
+#: neutron/agent/dhcp_agent.py:586 neutron/agent/l3_agent.py:1756
+#: neutron/agent/metadata/agent.py:368
 #: neutron/plugins/ibm/agent/sdnve_neutron_agent.py:111
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:794
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:248
 #: neutron/plugins/nec/agent/nec_neutron_agent.py:182
-#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:266
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:250
+#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:268
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:261
+#: neutron/plugins/sriovnicagent/sriov_nic_agent.py:131
 #: neutron/services/loadbalancer/agent/agent_manager.py:121
 #: neutron/services/metering/agents/metering_agent.py:277
 msgid "Failed reporting state!"
@@ -515,191 +516,223 @@ msgstr ""
 msgid "Agent updated: %(payload)s"
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:595 neutron/agent/l3_agent.py:1173
+#: neutron/agent/dhcp_agent.py:595 neutron/agent/l3_agent.py:1761
 #: neutron/services/metering/agents/metering_agent.py:280
 #, python-format
 msgid "agent_updated by server side %s!"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:309 neutron/debug/debug_agent.py:41
+#: neutron/agent/l3_agent.py:352
+msgid ""
+"The working mode for the agent. Allowed modes are: 'legacy' - this "
+"preserves the existing behavior where the L3 agent is deployed on a "
+"centralized networking node to provide L3 services like DNAT, and SNAT. "
+"Use this mode if you do not want to adopt DVR. 'dvr' - this mode enables "
+"DVR functionality and must be used for an L3 agent that runs on a compute"
+" host. 'dvr_snat' - this enables centralized SNAT support in conjunction "
+"with DVR.  This mode must be used for an L3 agent running on a "
+"centralized node (or in single-host deployments, e.g. devstack)"
+msgstr ""
+
+#: neutron/agent/l3_agent.py:365 neutron/debug/debug_agent.py:41
 msgid "Name of bridge used for external network traffic."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:313
+#: neutron/agent/l3_agent.py:369
 msgid "TCP Port used by Neutron metadata namespace proxy."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:317
+#: neutron/agent/l3_agent.py:373
 msgid ""
 "Send this many gratuitous ARPs for HA setup, if less than or equal to 0, "
 "the feature is disabled"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:320
+#: neutron/agent/l3_agent.py:376
 msgid ""
 "If namespaces is disabled, the l3 agent can only configure a router that "
 "has the matching router ID."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:325
+#: neutron/agent/l3_agent.py:381
 msgid "Agent should implement routers with no gateway"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:327
+#: neutron/agent/l3_agent.py:383
 msgid "UUID of external network for routers implemented by the agents."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:330
+#: neutron/agent/l3_agent.py:386
 msgid "Allow running metadata proxy."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:332
+#: neutron/agent/l3_agent.py:388
 msgid "Delete namespace after removing a router."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:355
+#: neutron/agent/l3_agent.py:411
 #, python-format
 msgid "Error importing interface driver '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:381 neutron/agent/linux/dhcp.py:740
+#: neutron/agent/l3_agent.py:443 neutron/agent/linux/dhcp.py:740
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:89
 msgid "An interface driver must be specified"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:386
+#: neutron/agent/l3_agent.py:448
 msgid "Router id is required if not using namespaces."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:403
+#: neutron/agent/l3_agent.py:465
 msgid "RuntimeError in obtaining router list for namespace cleanup."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:435
+#: neutron/agent/l3_agent.py:494
 #, python-format
 msgid "Failed to destroy stale router namespace %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:456 neutron/agent/linux/dhcp.py:225
+#: neutron/agent/l3_agent.py:512 neutron/agent/linux/dhcp.py:225
 #, python-format
 msgid "Failed trying to delete namespace: %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:486
+#: neutron/agent/l3_agent.py:596
 msgid ""
 "The 'gateway_external_network_id' option must be configured for this "
 "agent as Neutron has more than one external network."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:510
+#: neutron/agent/l3_agent.py:620
 #, python-format
 msgid "Info for router %s were not found. Skipping router removal"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:559
+#: neutron/agent/l3_agent.py:687
 #: neutron/services/firewall/agents/varmour/varmour_router.py:102
 #, python-format
 msgid "Router port %s has no IP address"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:561 neutron/db/l3_db.py:997
+#: neutron/agent/l3_agent.py:689 neutron/db/l3_db.py:1002
 #: neutron/services/firewall/agents/varmour/varmour_router.py:105
 #, python-format
 msgid "Ignoring multiple IPs on router port %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:617
+#: neutron/agent/l3_agent.py:749
 #, python-format
 msgid "Deleting stale internal router device: %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:646
+#: neutron/agent/l3_agent.py:778
 #, python-format
 msgid "Deleting stale external router device: %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:765
+#: neutron/agent/l3_agent.py:949
 #, python-format
 msgid "Unable to configure IP address for floating IP: %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:795
+#: neutron/agent/l3_agent.py:993
 #, python-format
 msgid "Failed sending gratuitous ARP: %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:904
+#: neutron/agent/l3_agent.py:1055
+msgid "DVR: no map match_port found!"
+msgstr ""
+
+#: neutron/agent/l3_agent.py:1235
+msgid "DVR: error adding redirection logic"
+msgstr ""
+
+#: neutron/agent/l3_agent.py:1247
+msgid "DVR: removed snat failed"
+msgstr ""
+
+#: neutron/agent/l3_agent.py:1338
+msgid "Missing subnet/agent_gateway_port"
+msgstr ""
+
+#: neutron/agent/l3_agent.py:1450
 #, python-format
 msgid "Got router deleted notification for %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:910
+#: neutron/agent/l3_agent.py:1470
+msgid "DVR: Failed updating arp entry"
+msgstr ""
+
+#: neutron/agent/l3_agent.py:1497
 #, python-format
 msgid "Got routers updated notification :%s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:920
+#: neutron/agent/l3_agent.py:1507
 #, python-format
 msgid "Got router removed from agent :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:926
+#: neutron/agent/l3_agent.py:1513
 #, python-format
 msgid "Got router added to agent :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:933
+#: neutron/agent/l3_agent.py:1520
 #, python-format
 msgid "The external network bridge '%s' does not exist"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:985
+#: neutron/agent/l3_agent.py:1572
 #, python-format
 msgid "Failed to fetch router information for '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:1024
+#: neutron/agent/l3_agent.py:1611
 #, python-format
 msgid "Starting _sync_routers_task - fullsync:%s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:1044
+#: neutron/agent/l3_agent.py:1631
 #, python-format
 msgid "Processing :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:1052
+#: neutron/agent/l3_agent.py:1639
 msgid "_sync_routers_task successfully completed"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:1054
+#: neutron/agent/l3_agent.py:1641
 msgid "Failed synchronizing routers due to RPC error"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:1057
+#: neutron/agent/l3_agent.py:1644
 #: neutron/services/metering/agents/metering_agent.py:61
 msgid "Failed synchronizing routers"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:1080
+#: neutron/agent/l3_agent.py:1667
 msgid "L3 agent started"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:1095
+#: neutron/agent/l3_agent.py:1682
 #, python-format
 msgid "Added route entry is '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:1103
+#: neutron/agent/l3_agent.py:1690
 #, python-format
 msgid "Removed route entry is '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:1136
+#: neutron/agent/l3_agent.py:1724
 msgid "Report state task started"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:1160
+#: neutron/agent/l3_agent.py:1748
 msgid "Report state task successfully completed"
 msgstr ""
 
@@ -725,7 +758,7 @@ msgstr ""
 
 #: neutron/agent/ovs_cleanup_util.py:73
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:664
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:287
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:299
 #, python-format
 msgid "Delete %s"
 msgstr ""
@@ -1229,91 +1262,91 @@ msgstr ""
 msgid "Attempted to get traffic counters of chain %s which does not exist"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:34
+#: neutron/agent/linux/ovs_lib.py:33
 msgid "Timeout in seconds for ovs-vsctl commands"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:68 neutron/agent/linux/ovs_lib.py:168
-#: neutron/agent/linux/ovs_lib.py:315
+#: neutron/agent/linux/ovs_lib.py:67 neutron/agent/linux/ovs_lib.py:167
+#: neutron/agent/linux/ovs_lib.py:326
 #: neutron/plugins/bigswitch/agent/restproxy_agent.py:55
 #, python-format
 msgid "Unable to execute %(cmd)s. Exception: %(exception)s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:223
+#: neutron/agent/linux/ovs_lib.py:228
 msgid "defer_apply_on"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:227
+#: neutron/agent/linux/ovs_lib.py:238
 msgid "defer_apply_off"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:237
+#: neutron/agent/linux/ovs_lib.py:248
 #, python-format
 msgid "Applying following deferred flows to bridge %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:240
+#: neutron/agent/linux/ovs_lib.py:251
 #, python-format
 msgid "%(action)s: %(flow)s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:266
+#: neutron/agent/linux/ovs_lib.py:277
 msgid ""
 "Unable to create VXLAN tunnel port. Please ensure that an openvswitch "
 "version that supports VXLAN is installed."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:363
+#: neutron/agent/linux/ovs_lib.py:374
 #, python-format
 msgid "Found not yet ready openvswitch port: %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:378
+#: neutron/agent/linux/ovs_lib.py:389
 #, python-format
 msgid "Found failed openvswitch port: %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:433
+#: neutron/agent/linux/ovs_lib.py:444
 #, python-format
 msgid "Port: %(port_name)s is on %(switch)s, not on %(br_name)s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:441
+#: neutron/agent/linux/ovs_lib.py:452
 #, python-format
 msgid "ofport: %(ofport)s for VIF: %(vif)s is not a positive integer"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:451
+#: neutron/agent/linux/ovs_lib.py:462
 #, python-format
 msgid "Unable to parse interface details. Exception: %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:469
+#: neutron/agent/linux/ovs_lib.py:480
 #, python-format
 msgid "Unable to determine mac address for %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:486
+#: neutron/agent/linux/ovs_lib.py:497
 #, python-format
 msgid "Interface %s not found."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:497
+#: neutron/agent/linux/ovs_lib.py:508
 #, python-format
 msgid "Unable to retrieve bridges. Exception: %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:506
+#: neutron/agent/linux/ovs_lib.py:517
 #, python-format
 msgid "Bridge %s not found."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:522
+#: neutron/agent/linux/ovs_lib.py:533
 msgid "Cannot match priority on flow deletion or modification"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:527
+#: neutron/agent/linux/ovs_lib.py:538
 msgid "Must specify one or more actions on flow addition or modification"
 msgstr ""
 
@@ -1408,38 +1441,38 @@ msgstr ""
 msgid "An unknown error has occurred. Please try your request again."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:178
+#: neutron/agent/metadata/agent.py:179
 msgid ""
 "Either one of parameter network_id or router_id must be passed to "
 "_get_ports method."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:230
+#: neutron/agent/metadata/agent.py:231
 msgid ""
 "The remote metadata server responded with Forbidden. This response "
 "usually occurs when shared secrets do not match."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:241
+#: neutron/agent/metadata/agent.py:242
 #: neutron/agent/metadata/namespace_proxy.py:120
 msgid "Remote metadata server experienced an internal server error."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:247
+#: neutron/agent/metadata/agent.py:248
 #: neutron/agent/metadata/namespace_proxy.py:126
 #, python-format
 msgid "Unexpected response code: %s"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:307
+#: neutron/agent/metadata/agent.py:308
 msgid "Location for Metadata Proxy UNIX domain socket"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:310
+#: neutron/agent/metadata/agent.py:311
 msgid "Number of separate worker processes for metadata server"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:314
+#: neutron/agent/metadata/agent.py:315
 msgid "Number of backlog requests to configure the metadata server socket with"
 msgstr ""
 
@@ -1653,14 +1686,14 @@ msgstr ""
 msgid "Notify agent at %(topic)s.%(host)s the message %(method)s"
 msgstr ""
 
-#: neutron/api/rpc/agentnotifiers/l3_rpc_agent_api.py:74
+#: neutron/api/rpc/agentnotifiers/l3_rpc_agent_api.py:100
 #, python-format
 msgid ""
 "No plugin for L3 routing registered. Cannot notify agents with the "
 "message %s"
 msgstr ""
 
-#: neutron/api/rpc/agentnotifiers/l3_rpc_agent_api.py:92
+#: neutron/api/rpc/agentnotifiers/l3_rpc_agent_api.py:118
 #, python-format
 msgid ""
 "Fanout notify agent at %(topic)s the message %(method)s on router "
@@ -1820,7 +1853,7 @@ msgid "'%s' is not a valid input"
 msgstr ""
 
 #: neutron/api/v2/attributes.py:355
-#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:549
+#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:552
 #, python-format
 msgid "'%s' is not a valid UUID"
 msgstr ""
@@ -1922,7 +1955,7 @@ msgid "Invalid input for %(attr)s. Reason: %(reason)s."
 msgstr ""
 
 #: neutron/api/v2/base.py:642 neutron/extensions/allowedaddresspairs.py:75
-#: neutron/extensions/multiprovidernet.py:51
+#: neutron/extensions/multiprovidernet.py:45
 #, python-format
 msgid "Unrecognized attribute(s) '%s'"
 msgstr ""
@@ -1962,18 +1995,33 @@ msgid ""
 "features requiring patch ports (gre/vxlan, etc.)."
 msgstr ""
 
-#: neutron/cmd/sanity_check.py:67
+#: neutron/cmd/sanity_check.py:68
+msgid ""
+"Check for Open vSwitch ARP responder support failed. Please ensure that "
+"the version of openvswitch being used has ARP flows support."
+msgstr ""
+
+#: neutron/cmd/sanity_check.py:77
 msgid "Check for vxlan support"
 msgstr ""
 
-#: neutron/cmd/sanity_check.py:69
+#: neutron/cmd/sanity_check.py:79
 msgid "Check for patch port support"
 msgstr ""
 
-#: neutron/cmd/sanity_check.py:71
+#: neutron/cmd/sanity_check.py:81
 msgid "Check for nova notification support"
 msgstr ""
 
+#: neutron/cmd/sanity_check.py:83
+msgid "Check for ARP responder support"
+msgstr ""
+
+#: neutron/cmd/sanity/checks.py:72
+#, python-format
+msgid "Unexpected exception while checking supported feature via command: %s"
+msgstr ""
+
 #: neutron/common/config.py:37
 msgid "The host IP to bind to"
 msgstr ""
@@ -2466,13 +2514,6 @@ msgstr ""
 msgid "Bad prefix type for generate IPv6 address by EUI-64: %s"
 msgstr ""
 
-#: neutron/common/log.py:32
-#, python-format
-msgid ""
-"%(class_name)s method %(method_name)s called with arguments %(args)s "
-"%(kwargs)s"
-msgstr ""
-
 #: neutron/common/utils.py:68
 #, python-format
 msgid ""
@@ -2493,11 +2534,13 @@ msgid "Reloading cached file %s"
 msgstr ""
 
 #: neutron/common/utils.py:200
+#: neutron/plugins/sriovnicagent/common/config.py:36
 #, python-format
 msgid "Invalid mapping: '%s'"
 msgstr ""
 
 #: neutron/common/utils.py:203
+#: neutron/plugins/sriovnicagent/common/config.py:39
 #, python-format
 msgid "Missing key in mapping: '%s'"
 msgstr ""
@@ -2847,145 +2890,150 @@ msgstr ""
 msgid "Removed routes are %s"
 msgstr ""
 
-#: neutron/db/l3_agentschedulers_db.py:34
+#: neutron/db/l3_agentschedulers_db.py:33
 msgid "Driver to use for scheduling router to a default L3 agent"
 msgstr ""
 
-#: neutron/db/l3_agentschedulers_db.py:37
+#: neutron/db/l3_agentschedulers_db.py:36
 msgid "Allow auto scheduling of routers to L3 agent."
 msgstr ""
 
-#: neutron/db/l3_db.py:240
+#: neutron/db/l3_db.py:244
 #, python-format
 msgid "No eligible l3 agent associated with external network %s found"
 msgstr ""
 
-#: neutron/db/l3_db.py:261
+#: neutron/db/l3_db.py:265
 #, python-format
 msgid "No IPs available for external network %s"
 msgstr ""
 
-#: neutron/db/l3_db.py:275
+#: neutron/db/l3_db.py:279
 #, python-format
 msgid "Network %s is not an external network"
 msgstr ""
 
-#: neutron/db/l3_db.py:389
+#: neutron/db/l3_db.py:393
 #, python-format
 msgid "Router already has a port on subnet %s"
 msgstr ""
 
-#: neutron/db/l3_db.py:403
+#: neutron/db/l3_db.py:407
 #, python-format
 msgid ""
 "Cidr %(subnet_cidr)s of subnet %(subnet_id)s overlaps with cidr %(cidr)s "
 "of subnet %(sub_id)s"
 msgstr ""
 
-#: neutron/db/l3_db.py:419 neutron/db/l3_db.py:553 neutron/db/l3_dvr_db.py:187
+#: neutron/db/l3_db.py:423 neutron/db/l3_db.py:558 neutron/db/l3_dvr_db.py:189
 #: neutron/plugins/bigswitch/plugin.py:1015
 #: neutron/plugins/bigswitch/plugin.py:1024
 msgid "Either subnet_id or port_id must be specified"
 msgstr ""
 
-#: neutron/db/l3_db.py:422
+#: neutron/db/l3_db.py:426
 msgid "Cannot specify both subnet-id and port-id"
 msgstr ""
 
-#: neutron/db/l3_db.py:435
+#: neutron/db/l3_db.py:439
 msgid "Router port must have exactly one fixed IP"
 msgstr ""
 
-#: neutron/db/l3_db.py:449
+#: neutron/db/l3_db.py:453
 msgid "Subnet for router interface must have a gateway IP"
 msgstr ""
 
-#: neutron/db/l3_db.py:600 neutron/plugins/nec/nec_router.py:197
+#: neutron/db/l3_db.py:605 neutron/plugins/nec/nec_router.py:197
 #, python-format
 msgid "Cannot add floating IP to port on subnet %s which has no gateway_ip"
 msgstr ""
 
-#: neutron/db/l3_db.py:636
+#: neutron/db/l3_db.py:641
 #, python-format
 msgid ""
 "Port %(port_id)s is associated with a different tenant than Floating IP "
 "%(floatingip_id)s and therefore cannot be bound."
 msgstr ""
 
-#: neutron/db/l3_db.py:640
+#: neutron/db/l3_db.py:645
 #, python-format
 msgid ""
 "Cannot create floating IP and bind it to Port %s, since that port is "
 "owned by a different tenant."
 msgstr ""
 
-#: neutron/db/l3_db.py:652
+#: neutron/db/l3_db.py:657
 #, python-format
 msgid "Port %(id)s does not have fixed ip %(address)s"
 msgstr ""
 
-#: neutron/db/l3_db.py:659
+#: neutron/db/l3_db.py:664
 #, python-format
 msgid "Cannot add floating IP to port %s that hasno fixed IP addresses"
 msgstr ""
 
-#: neutron/db/l3_db.py:663
+#: neutron/db/l3_db.py:668
 #, python-format
 msgid ""
 "Port %s has multiple fixed IPs.  Must provide a specific IP when "
 "assigning a floating IP"
 msgstr ""
 
-#: neutron/db/l3_db.py:705 neutron/plugins/vmware/plugins/base.py:1834
+#: neutron/db/l3_db.py:710 neutron/plugins/vmware/plugins/base.py:1802
 msgid "fixed_ip_address cannot be specified without a port_id"
 msgstr ""
 
-#: neutron/db/l3_db.py:746
+#: neutron/db/l3_db.py:751
 #, python-format
 msgid "Network %s is not a valid external network"
 msgstr ""
 
-#: neutron/db/l3_db.py:883
+#: neutron/db/l3_db.py:888
 #, python-format
 msgid ""
 "Port %(port_id)s has owner %(port_owner)s, but no IP address, so it can "
 "be deleted"
 msgstr ""
 
-#: neutron/db/l3_db.py:1003
+#: neutron/db/l3_db.py:1008
 #, python-format
 msgid "Skipping port %s as no IP is configure on it"
 msgstr ""
 
-#: neutron/db/l3_dvr_db.py:39
+#: neutron/db/l3_dvr_db.py:41
 msgid ""
 "System-wide flag to determine the type of router that tenants can create."
 " Only admin can override."
 msgstr ""
 
-#: neutron/db/l3_dvr_db.py:73
+#: neutron/db/l3_dvr_db.py:75
 #, python-format
 msgid "Centralizing distributed router %s is not supported"
 msgstr ""
 
-#: neutron/db/l3_dvr_db.py:353
+#: neutron/db/l3_dvr_db.py:380
 #, python-format
 msgid "Agent Gateway port does not exist, so create one: %s"
 msgstr ""
 
-#: neutron/db/l3_dvr_db.py:368
+#: neutron/db/l3_dvr_db.py:395
 msgid "Unable to create the Agent Gateway Port"
 msgstr ""
 
-#: neutron/db/l3_dvr_db.py:394
+#: neutron/db/l3_dvr_db.py:421
 msgid "Unable to create the SNAT Interface Port"
 msgstr ""
 
-#: neutron/db/l3_dvr_db.py:418
+#: neutron/db/l3_dvr_db.py:445
 #, python-format
 msgid "SNAT interface port list does not exist, so create one: %s"
 msgstr ""
 
+#: neutron/db/l3_dvrscheduler_db.py:269
+#: neutron/scheduler/l3_agent_scheduler.py:157
+msgid "No active L3 agents"
+msgstr ""
+
 #: neutron/db/l3_rpc_base.py:50
 msgid ""
 "No plugin for L3 routing registered! Will reply to l3 agent with empty "
@@ -3004,17 +3052,17 @@ msgstr ""
 msgid "Checking router: %(id)s for host: %(host)s"
 msgstr ""
 
-#: neutron/db/l3_rpc_base.py:113
+#: neutron/db/l3_rpc_base.py:123
 #, python-format
 msgid "External network ID returned to l3 agent: %s"
 msgstr ""
 
-#: neutron/db/l3_rpc_base.py:123
+#: neutron/db/l3_rpc_base.py:133
 #, python-format
 msgid "New status for floating IP %(floatingip_id)s: %(status)s"
 msgstr ""
 
-#: neutron/db/l3_rpc_base.py:131
+#: neutron/db/l3_rpc_base.py:141
 #, python-format
 msgid "Floating IP: %s no longer present."
 msgstr ""
@@ -3364,19 +3412,19 @@ msgstr ""
 msgid "The number of allowed address pair exceeds the maximum %(quota)s."
 msgstr ""
 
-#: neutron/extensions/dhcpagentscheduler.py:119
+#: neutron/extensions/dhcpagentscheduler.py:127
 #, python-format
 msgid "Agent %(id)s is not a valid DHCP Agent or has been disabled"
 msgstr ""
 
-#: neutron/extensions/dhcpagentscheduler.py:123
+#: neutron/extensions/dhcpagentscheduler.py:131
 #, python-format
 msgid ""
 "The network %(network_id)s has been already hosted by the DHCP Agent "
 "%(agent_id)s."
 msgstr ""
 
-#: neutron/extensions/dhcpagentscheduler.py:128
+#: neutron/extensions/dhcpagentscheduler.py:136
 #, python-format
 msgid "The network %(network_id)s is not hosted by the DHCP agent %(agent_id)s."
 msgstr ""
@@ -3644,6 +3692,13 @@ msgstr ""
 msgid "The router %(router_id)s is not hosted by L3 agent %(agent_id)s."
 msgstr ""
 
+#: neutron/extensions/l3agentscheduler.py:181
+#, python-format
+msgid ""
+"Cannot host %(router_type)s router %(router_id)s on %(agent_mode)s L3 "
+"agent %(agent_id)s."
+msgstr ""
+
 #: neutron/extensions/lbaas_agentscheduler.py:116
 #, python-format
 msgid "No eligible loadbalancer agent found for pool %(pool_id)s."
@@ -3796,7 +3851,7 @@ msgid "Port does not have port security binding."
 msgstr ""
 
 #: neutron/extensions/providernet.py:54
-#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:287
+#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:290
 msgid "Plugin does not support updating provider attributes"
 msgstr ""
 
@@ -4137,7 +4192,7 @@ msgstr ""
 msgid "in dynamic looping call"
 msgstr ""
 
-#: neutron/openstack/common/periodic_task.py:39
+#: neutron/openstack/common/periodic_task.py:40
 #, python-format
 msgid "Unexpected argument for periodic task creation: %(arg)s."
 msgstr ""
@@ -4378,7 +4433,7 @@ msgstr ""
 msgid "Syntax error in server config file, aborting plugin"
 msgstr ""
 
-#: neutron/plugins/bigswitch/plugin.py:132 neutron/plugins/ml2/db.py:149
+#: neutron/plugins/bigswitch/plugin.py:132 neutron/plugins/ml2/db.py:156
 #, python-format
 msgid "get_port_and_sgs() called for port_id %s"
 msgstr ""
@@ -4750,9 +4805,10 @@ msgstr ""
 #: neutron/plugins/bigswitch/agent/restproxy_agent.py:161
 #: neutron/plugins/ibm/agent/sdnve_neutron_agent.py:226
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:1011
-#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:1392
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1485
+#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:1446
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1497
 #: neutron/plugins/ryu/agent/ryu_neutron_agent.py:278
+#: neutron/plugins/sriovnicagent/sriov_nic_agent.py:285
 #, python-format
 msgid "Loop iteration exceeded interval (%(polling_interval)s vs. %(elapsed)s)!"
 msgstr ""
@@ -4844,7 +4900,7 @@ msgstr ""
 #: neutron/plugins/hyperv/rpc_callbacks.py:47
 #: neutron/plugins/linuxbridge/lb_neutron_plugin.py:80
 #: neutron/plugins/mlnx/rpc_callbacks.py:62
-#: neutron/plugins/openvswitch/ovs_neutron_plugin.py:88
+#: neutron/plugins/openvswitch/ovs_neutron_plugin.py:89
 #, python-format
 msgid "Device %(device)s details requested from %(agent_id)s"
 msgstr ""
@@ -4859,9 +4915,9 @@ msgstr ""
 #: neutron/plugins/mlnx/rpc_callbacks.py:84
 #: neutron/plugins/mlnx/rpc_callbacks.py:113
 #: neutron/plugins/mlnx/rpc_callbacks.py:128
-#: neutron/plugins/openvswitch/ovs_neutron_plugin.py:106
-#: neutron/plugins/openvswitch/ovs_neutron_plugin.py:143
-#: neutron/plugins/openvswitch/ovs_neutron_plugin.py:166
+#: neutron/plugins/openvswitch/ovs_neutron_plugin.py:107
+#: neutron/plugins/openvswitch/ovs_neutron_plugin.py:144
+#: neutron/plugins/openvswitch/ovs_neutron_plugin.py:167
 #, python-format
 msgid "%s can not be found in database"
 msgstr ""
@@ -5337,147 +5393,147 @@ msgstr ""
 msgid "vxlan_id %s not found"
 msgstr ""
 
-#: neutron/plugins/cisco/db/n1kv_db_v2.py:770
+#: neutron/plugins/cisco/db/n1kv_db_v2.py:771
 msgid "create_network_profile()"
 msgstr ""
 
-#: neutron/plugins/cisco/db/n1kv_db_v2.py:792
+#: neutron/plugins/cisco/db/n1kv_db_v2.py:793
 msgid "delete_network_profile()"
 msgstr ""
 
-#: neutron/plugins/cisco/db/n1kv_db_v2.py:806
+#: neutron/plugins/cisco/db/n1kv_db_v2.py:807
 msgid "update_network_profile()"
 msgstr ""
 
-#: neutron/plugins/cisco/db/n1kv_db_v2.py:815
+#: neutron/plugins/cisco/db/n1kv_db_v2.py:816
 msgid "get_network_profile()"
 msgstr ""
 
-#: neutron/plugins/cisco/db/n1kv_db_v2.py:840
+#: neutron/plugins/cisco/db/n1kv_db_v2.py:841
 msgid "create_policy_profile()"
 msgstr ""
 
-#: neutron/plugins/cisco/db/n1kv_db_v2.py:851
+#: neutron/plugins/cisco/db/n1kv_db_v2.py:852
 msgid "delete_policy_profile()"
 msgstr ""
 
-#: neutron/plugins/cisco/db/n1kv_db_v2.py:860
+#: neutron/plugins/cisco/db/n1kv_db_v2.py:861
 msgid "update_policy_profile()"
 msgstr ""
 
-#: neutron/plugins/cisco/db/n1kv_db_v2.py:869
+#: neutron/plugins/cisco/db/n1kv_db_v2.py:870
 msgid "get_policy_profile()"
 msgstr ""
 
-#: neutron/plugins/cisco/db/n1kv_db_v2.py:888
+#: neutron/plugins/cisco/db/n1kv_db_v2.py:889
 msgid "Invalid profile type"
 msgstr ""
 
-#: neutron/plugins/cisco/db/n1kv_db_v2.py:905
+#: neutron/plugins/cisco/db/n1kv_db_v2.py:906
 msgid "_profile_binding_exists()"
 msgstr ""
 
-#: neutron/plugins/cisco/db/n1kv_db_v2.py:913
+#: neutron/plugins/cisco/db/n1kv_db_v2.py:914
 msgid "get_profile_binding()"
 msgstr ""
 
-#: neutron/plugins/cisco/db/n1kv_db_v2.py:923
+#: neutron/plugins/cisco/db/n1kv_db_v2.py:924
 msgid "delete_profile_binding()"
 msgstr ""
 
-#: neutron/plugins/cisco/db/n1kv_db_v2.py:930
+#: neutron/plugins/cisco/db/n1kv_db_v2.py:931
 #, python-format
 msgid ""
 "Profile-Tenant binding missing for profile ID %(profile_id)s and tenant "
 "ID %(tenant_id)s"
 msgstr ""
 
-#: neutron/plugins/cisco/db/n1kv_db_v2.py:944
+#: neutron/plugins/cisco/db/n1kv_db_v2.py:945
 msgid "_get_profile_bindings()"
 msgstr ""
 
-#: neutron/plugins/cisco/db/n1kv_db_v2.py:1094
+#: neutron/plugins/cisco/db/n1kv_db_v2.py:1095
 msgid "segment_range not required for TRUNK"
 msgstr ""
 
-#: neutron/plugins/cisco/db/n1kv_db_v2.py:1100
+#: neutron/plugins/cisco/db/n1kv_db_v2.py:1101
 msgid "multicast_ip_range not required"
 msgstr ""
 
-#: neutron/plugins/cisco/db/n1kv_db_v2.py:1227
+#: neutron/plugins/cisco/db/n1kv_db_v2.py:1228
 msgid "Invalid segment range. example range: 500-550"
 msgstr ""
 
-#: neutron/plugins/cisco/db/n1kv_db_v2.py:1240
+#: neutron/plugins/cisco/db/n1kv_db_v2.py:1241
 msgid "Invalid multicast ip address range. example range: 224.1.1.1-224.1.1.10"
 msgstr ""
 
-#: neutron/plugins/cisco/db/n1kv_db_v2.py:1247
+#: neutron/plugins/cisco/db/n1kv_db_v2.py:1248
 #, python-format
 msgid "%s is not a valid multicast ip address"
 msgstr ""
 
-#: neutron/plugins/cisco/db/n1kv_db_v2.py:1251
+#: neutron/plugins/cisco/db/n1kv_db_v2.py:1252
 #, python-format
 msgid "%s is reserved multicast ip address"
 msgstr ""
 
-#: neutron/plugins/cisco/db/n1kv_db_v2.py:1255
+#: neutron/plugins/cisco/db/n1kv_db_v2.py:1256
 #, python-format
 msgid "%s is not a valid ip address"
 msgstr ""
 
-#: neutron/plugins/cisco/db/n1kv_db_v2.py:1259
+#: neutron/plugins/cisco/db/n1kv_db_v2.py:1260
 #, python-format
 msgid ""
 "Invalid multicast IP range '%(min_ip)s-%(max_ip)s': Range should be from "
 "low address to high address"
 msgstr ""
 
-#: neutron/plugins/cisco/db/n1kv_db_v2.py:1272
+#: neutron/plugins/cisco/db/n1kv_db_v2.py:1273
 msgid "Arguments segment_type missing for network profile"
 msgstr ""
 
-#: neutron/plugins/cisco/db/n1kv_db_v2.py:1281
+#: neutron/plugins/cisco/db/n1kv_db_v2.py:1282
 msgid "segment_type should either be vlan, overlay, multi-segment or trunk"
 msgstr ""
 
-#: neutron/plugins/cisco/db/n1kv_db_v2.py:1287
+#: neutron/plugins/cisco/db/n1kv_db_v2.py:1288
 msgid "Argument physical_network missing for network profile"
 msgstr ""
 
-#: neutron/plugins/cisco/db/n1kv_db_v2.py:1293
+#: neutron/plugins/cisco/db/n1kv_db_v2.py:1294
 msgid "segment_range not required for trunk"
 msgstr ""
 
-#: neutron/plugins/cisco/db/n1kv_db_v2.py:1299
+#: neutron/plugins/cisco/db/n1kv_db_v2.py:1300
 msgid "Argument sub_type missing for network profile"
 msgstr ""
 
-#: neutron/plugins/cisco/db/n1kv_db_v2.py:1306
+#: neutron/plugins/cisco/db/n1kv_db_v2.py:1307
 msgid "Argument segment_range missing for network profile"
 msgstr ""
 
-#: neutron/plugins/cisco/db/n1kv_db_v2.py:1317
+#: neutron/plugins/cisco/db/n1kv_db_v2.py:1318
 msgid "Argument multicast_ip_range missing for VXLAN multicast network profile"
 msgstr ""
 
-#: neutron/plugins/cisco/db/n1kv_db_v2.py:1345
+#: neutron/plugins/cisco/db/n1kv_db_v2.py:1346
 #, python-format
 msgid "Segment range is invalid, select from %(min)s-%(nmin)s, %(nmax)s-%(max)s"
 msgstr ""
 
-#: neutron/plugins/cisco/db/n1kv_db_v2.py:1363
+#: neutron/plugins/cisco/db/n1kv_db_v2.py:1364
 #, python-format
 msgid "segment range is invalid. Valid range is : %(min)s-%(max)s"
 msgstr ""
 
-#: neutron/plugins/cisco/db/n1kv_db_v2.py:1377
+#: neutron/plugins/cisco/db/n1kv_db_v2.py:1378
 #, python-format
 msgid "NetworkProfile name %s already exists"
 msgstr ""
 
-#: neutron/plugins/cisco/db/n1kv_db_v2.py:1394
+#: neutron/plugins/cisco/db/n1kv_db_v2.py:1395
 msgid "Segment range overlaps with another profile"
 msgstr ""
 
@@ -5643,311 +5699,306 @@ msgstr ""
 msgid "VSM: %s"
 msgstr ""
 
-#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:144
+#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:147
 msgid "_setup_vsm"
 msgstr ""
 
-#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:163
+#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:166
 msgid "_populate_policy_profiles"
 msgstr ""
 
-#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:190
+#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:193
 msgid "No policy profile populated from VSM"
 msgstr ""
 
-#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:227
+#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:230
 #: neutron/plugins/linuxbridge/lb_neutron_plugin.py:347
 #: neutron/plugins/mlnx/mlnx_plugin.py:217
-#: neutron/plugins/openvswitch/ovs_neutron_plugin.py:409
+#: neutron/plugins/openvswitch/ovs_neutron_plugin.py:410
 msgid "provider:network_type required"
 msgstr ""
 
-#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:231
-#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:245
+#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:234
+#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:248
 #: neutron/plugins/linuxbridge/lb_neutron_plugin.py:357
 #: neutron/plugins/mlnx/mlnx_plugin.py:247
-#: neutron/plugins/openvswitch/ovs_neutron_plugin.py:419
-#: neutron/plugins/openvswitch/ovs_neutron_plugin.py:438
+#: neutron/plugins/openvswitch/ovs_neutron_plugin.py:420
+#: neutron/plugins/openvswitch/ovs_neutron_plugin.py:439
 msgid "provider:segmentation_id required"
 msgstr ""
 
-#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:234
+#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:237
 msgid "provider:segmentation_id out of range (1 through 4094)"
 msgstr ""
 
-#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:239
+#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:242
 msgid "provider:physical_network specified for Overlay network"
 msgstr ""
 
-#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:248
+#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:251
 msgid "provider:segmentation_id out of range (5000+)"
 msgstr ""
 
-#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:252
+#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:255
 #: neutron/plugins/linuxbridge/lb_neutron_plugin.py:379
 #: neutron/plugins/mlnx/mlnx_plugin.py:233
-#: neutron/plugins/openvswitch/ovs_neutron_plugin.py:454
+#: neutron/plugins/openvswitch/ovs_neutron_plugin.py:455
 #, python-format
 msgid "provider:network_type %s not supported"
 msgstr ""
 
-#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:263
+#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:266
 #: neutron/plugins/linuxbridge/lb_neutron_plugin.py:385
 #: neutron/plugins/mlnx/mlnx_plugin.py:273
-#: neutron/plugins/openvswitch/ovs_neutron_plugin.py:460
+#: neutron/plugins/openvswitch/ovs_neutron_plugin.py:461
 #, python-format
 msgid "Unknown provider:physical_network %s"
 msgstr ""
 
-#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:267
+#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:270
 #: neutron/plugins/linuxbridge/lb_neutron_plugin.py:391
 #: neutron/plugins/mlnx/mlnx_plugin.py:279
-#: neutron/plugins/openvswitch/ovs_neutron_plugin.py:466
+#: neutron/plugins/openvswitch/ovs_neutron_plugin.py:467
 msgid "provider:physical_network required"
 msgstr ""
 
-#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:445
+#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:448
 #, python-format
 msgid "_populate_member_segments %s"
 msgstr ""
 
-#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:484
+#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:487
 msgid "Invalid pairing supplied"
 msgstr ""
 
-#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:489
+#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:492
 #, python-format
 msgid "Invalid UUID supplied in %s"
 msgstr ""
 
-#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:490
+#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:493
 msgid "Invalid UUID supplied"
 msgstr ""
 
-#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:519
+#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:522
 #, python-format
 msgid "Cannot add a trunk segment '%s' as a member of another trunk segment"
 msgstr ""
 
-#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:524
+#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:527
 #, python-format
 msgid "Cannot add vlan segment '%s' as a member of a vxlan trunk segment"
 msgstr ""
 
-#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:530
+#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:533
 #, python-format
 msgid "Network UUID '%s' belongs to a different physical network"
 msgstr ""
 
-#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:535
+#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:538
 #, python-format
 msgid "Cannot add vxlan segment '%s' as a member of a vlan trunk segment"
 msgstr ""
 
-#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:540
+#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:543
 #, python-format
 msgid "Vlan tag '%s' is out of range"
 msgstr ""
 
-#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:543
+#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:546
 #, python-format
 msgid "Vlan tag '%s' is not an integer value"
 msgstr ""
 
-#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:548
+#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:551
 #, python-format
 msgid "%s is not a valid uuid"
 msgstr ""
 
-#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:595
 #: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:598
+#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:601
 msgid "n1kv:profile_id does not exist"
 msgstr ""
 
-#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:610
+#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:613
 msgid "_send_create_logical_network"
 msgstr ""
 
-#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:633
+#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:636
 #, python-format
 msgid "_send_create_network_profile_request: %s"
 msgstr ""
 
-#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:643
+#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:646
 #, python-format
 msgid "_send_update_network_profile_request: %s"
 msgstr ""
 
-#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:653
+#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:656
 #, python-format
 msgid "_send_delete_network_profile_request: %s"
 msgstr ""
 
-#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:668
+#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:671
 #, python-format
 msgid "_send_create_network_request: %s"
 msgstr ""
 
-#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:700
+#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:703
 #, python-format
 msgid "_send_update_network_request: %s"
 msgstr ""
 
-#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:722
+#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:725
 #, python-format
 msgid "add_segments=%s"
 msgstr ""
 
-#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:723
+#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:726
 #, python-format
 msgid "del_segments=%s"
 msgstr ""
 
-#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:747
+#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:750
 #, python-format
 msgid "_send_delete_network_request: %s"
 msgstr ""
 
-#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:787
+#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:790
 #, python-format
 msgid "_send_create_subnet_request: %s"
 msgstr ""
 
-#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:797
+#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:800
 #, python-format
 msgid "_send_update_subnet_request: %s"
 msgstr ""
 
-#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:808
+#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:811
 #, python-format
 msgid "_send_delete_subnet_request: %s"
 msgstr ""
 
-#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:834
+#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:837
 #, python-format
 msgid "_send_create_port_request: %s"
 msgstr ""
 
-#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:851
+#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:854
 #, python-format
 msgid "_send_update_port_request: %s"
 msgstr ""
 
-#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:867
+#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:870
 #, python-format
 msgid "_send_delete_port_request: %s"
 msgstr ""
 
-#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:898
+#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:901
 #, python-format
 msgid "Create network: profile_id=%s"
 msgstr ""
 
-#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:906
+#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:909
 #, python-format
 msgid ""
 "Physical_network %(phy_net)s, seg_type %(net_type)s, seg_id %(seg_id)s, "
 "multicast_ip %(multicast_ip)s"
 msgstr ""
 
-#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:918
-#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:928
+#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:921
+#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:931
 #, python-format
 msgid "Seg list %s "
 msgstr ""
 
-#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:968
+#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:972
 #: neutron/plugins/hyperv/hyperv_neutron_plugin.py:252
 #: neutron/plugins/ibm/sdnve_neutron_plugin.py:198
 #: neutron/plugins/metaplugin/meta_neutron_plugin.py:230
 #: neutron/plugins/mlnx/mlnx_plugin.py:360
-#: neutron/plugins/openvswitch/ovs_neutron_plugin.py:514
+#: neutron/plugins/openvswitch/ovs_neutron_plugin.py:515
 #, python-format
 msgid "Created network: %s"
 msgstr ""
 
-#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:1026
+#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:1030
 #, python-format
 msgid "Updated network: %s"
 msgstr ""
 
-#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:1041
+#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:1044
 #, python-format
 msgid "Cannot delete network '%s' that is member of a trunk segment"
 msgstr ""
 
-#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:1045
+#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:1048
 #, python-format
 msgid "Cannot delete network '%s' that is a member of a multi-segment network"
 msgstr ""
 
-#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:1058
-#, python-format
-msgid "Deleted network: %s"
-msgstr ""
-
-#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:1068
+#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:1076
 #, python-format
 msgid "Get network: %s"
 msgstr ""
 
-#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:1090
+#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:1098
 msgid "Get networks"
 msgstr ""
 
-#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:1140
+#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:1149
 #, python-format
 msgid "Create port: profile_id=%s"
 msgstr ""
 
-#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:1186
+#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:1196
 #: neutron/plugins/ibm/sdnve_neutron_plugin.py:305
 #, python-format
 msgid "Created port: %s"
 msgstr ""
 
-#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:1197
+#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:1207
 #, python-format
 msgid "Update port: %s"
 msgstr ""
 
-#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:1249
+#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:1262
 #, python-format
 msgid "Get port: %s"
 msgstr ""
 
-#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:1269
+#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:1282
 msgid "Get ports"
 msgstr ""
 
-#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:1285
+#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:1298
 msgid "Create subnet"
 msgstr ""
 
-#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:1293
+#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:1308
 #, python-format
 msgid "Created subnet: %s"
 msgstr ""
 
-#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:1304
+#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:1319
 msgid "Update subnet"
 msgstr ""
 
-#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:1319
+#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:1334
 #, python-format
 msgid "Delete subnet: %s"
 msgstr ""
 
-#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:1334
+#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:1349
 #, python-format
 msgid "Get subnet: %s"
 msgstr ""
 
-#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:1354
+#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:1369
 msgid "Get subnets"
 msgstr ""
 
-#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:1439
+#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:1454
 #, python-format
 msgid "Scheduling router %s"
 msgstr ""
@@ -6298,7 +6349,7 @@ msgstr ""
 #: neutron/plugins/linuxbridge/lb_neutron_plugin.py:308
 #: neutron/plugins/ml2/drivers/type_vlan.py:96
 #: neutron/plugins/mlnx/mlnx_plugin.py:178
-#: neutron/plugins/openvswitch/ovs_neutron_plugin.py:361
+#: neutron/plugins/openvswitch/ovs_neutron_plugin.py:362
 #, python-format
 msgid "Network VLAN ranges: %s"
 msgstr ""
@@ -6311,7 +6362,7 @@ msgstr ""
 #: neutron/plugins/hyperv/rpc_callbacks.py:81
 #: neutron/plugins/linuxbridge/lb_neutron_plugin.py:123
 #: neutron/plugins/mlnx/rpc_callbacks.py:101
-#: neutron/plugins/openvswitch/ovs_neutron_plugin.py:125
+#: neutron/plugins/openvswitch/ovs_neutron_plugin.py:126
 #, python-format
 msgid "Device %(device)s no longer exists on %(agent_id)s"
 msgstr ""
@@ -6333,6 +6384,7 @@ msgstr ""
 #: neutron/plugins/oneconvergence/lib/config.py:47
 #: neutron/plugins/openvswitch/common/config.py:64
 #: neutron/plugins/ryu/common/config.py:43
+#: neutron/plugins/sriovnicagent/common/config.py:58
 msgid ""
 "The number of seconds the agent will wait between polling for local "
 "device changes."
@@ -6466,8 +6518,9 @@ msgstr ""
 #: neutron/plugins/hyperv/agent/hyperv_neutron_agent.py:436
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:994
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:382
-#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:1294
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1382
+#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:1348
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1389
+#: neutron/plugins/sriovnicagent/sriov_nic_agent.py:254
 msgid "Agent out of sync with plugin!"
 msgstr ""
 
@@ -6489,8 +6542,9 @@ msgstr ""
 #: neutron/plugins/hyperv/agent/hyperv_neutron_agent.py:472
 #: neutron/plugins/ibm/agent/sdnve_neutron_agent.py:269
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:1035
-#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:159
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1568
+#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:160
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1581
+#: neutron/plugins/sriovnicagent/sriov_nic_agent.py:350
 msgid "Agent initialized successfully, now running... "
 msgstr ""
 
@@ -7040,7 +7094,7 @@ msgid "Controller IPs: %s"
 msgstr ""
 
 #: neutron/plugins/ibm/agent/sdnve_neutron_agent.py:263
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1555
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1568
 #, python-format
 msgid "%s Agent terminated!"
 msgstr ""
@@ -7136,15 +7190,15 @@ msgstr ""
 
 #: neutron/plugins/linuxbridge/lb_neutron_plugin.py:131
 #: neutron/plugins/linuxbridge/lb_neutron_plugin.py:155
-#: neutron/plugins/ml2/rpc.py:156 neutron/plugins/ml2/rpc.py:180
-#: neutron/plugins/openvswitch/ovs_neutron_plugin.py:133
-#: neutron/plugins/openvswitch/ovs_neutron_plugin.py:158
+#: neutron/plugins/ml2/rpc.py:160 neutron/plugins/ml2/rpc.py:184
+#: neutron/plugins/openvswitch/ovs_neutron_plugin.py:134
+#: neutron/plugins/openvswitch/ovs_neutron_plugin.py:159
 #, python-format
 msgid "Device %(device)s not bound to the agent host %(host)s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/lb_neutron_plugin.py:149
-#: neutron/plugins/openvswitch/ovs_neutron_plugin.py:152
+#: neutron/plugins/openvswitch/ovs_neutron_plugin.py:153
 #, python-format
 msgid "Device %(device)s up on %(agent_id)s"
 msgstr ""
@@ -7166,26 +7220,26 @@ msgstr ""
 
 #: neutron/plugins/linuxbridge/lb_neutron_plugin.py:351
 #: neutron/plugins/mlnx/mlnx_plugin.py:242
-#: neutron/plugins/openvswitch/ovs_neutron_plugin.py:413
+#: neutron/plugins/openvswitch/ovs_neutron_plugin.py:414
 msgid "provider:segmentation_id specified for flat network"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/lb_neutron_plugin.py:360
 #: neutron/plugins/mlnx/mlnx_plugin.py:250
-#: neutron/plugins/openvswitch/ovs_neutron_plugin.py:422
+#: neutron/plugins/openvswitch/ovs_neutron_plugin.py:423
 #, python-format
 msgid "provider:segmentation_id out of range (%(min_id)s through %(max_id)s)"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/lb_neutron_plugin.py:367
 #: neutron/plugins/mlnx/mlnx_plugin.py:258
-#: neutron/plugins/openvswitch/ovs_neutron_plugin.py:442
+#: neutron/plugins/openvswitch/ovs_neutron_plugin.py:443
 msgid "provider:physical_network specified for local network"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/lb_neutron_plugin.py:373
 #: neutron/plugins/mlnx/mlnx_plugin.py:262
-#: neutron/plugins/openvswitch/ovs_neutron_plugin.py:448
+#: neutron/plugins/openvswitch/ovs_neutron_plugin.py:449
 msgid "provider:segmentation_id specified for local network"
 msgstr ""
 
@@ -7365,32 +7419,30 @@ msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:661
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:162
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:285
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:297
 msgid "network_delete received"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:675
+#: neutron/plugins/sriovnicagent/sriov_nic_agent.py:66
 #, python-format
 msgid "port_update RPC received for port: %s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:678
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:326
 msgid "fdb_add received"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:700
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:354
 msgid "fdb_remove received"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:722
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:433
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:423
 msgid "update chg_ip received"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:747
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:456
 msgid "fdb_update received"
 msgstr ""
 
@@ -7402,13 +7454,15 @@ msgstr ""
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:252
 #: neutron/plugins/nec/agent/nec_neutron_agent.py:144
 #: neutron/plugins/oneconvergence/agent/nvsd_neutron_agent.py:109
+#: neutron/plugins/sriovnicagent/sriov_nic_agent.py:100
 #, python-format
 msgid "RPC agent_id: %s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:879
-#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:1102
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1135
+#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:1166
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1140
+#: neutron/plugins/sriovnicagent/sriov_nic_agent.py:213
 #, python-format
 msgid "Port %(device)s updated. Details: %(details)s"
 msgstr ""
@@ -7416,36 +7470,38 @@ msgstr ""
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:912
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:933
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:368
-#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:1122
-#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:1184
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1159
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1219
+#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:1186
+#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:1248
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1166
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1227
+#: neutron/plugins/sriovnicagent/sriov_nic_agent.py:240
 #, python-format
 msgid "Device %s not defined on plugin"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:919
-#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:1152
-#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:1169
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1187
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1204
+#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:1216
+#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:1233
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1195
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1212
 #, python-format
 msgid "Attachment %s removed"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:927
-#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:1159
-#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:1176
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1194
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1211
+#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:1223
+#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:1240
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1202
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1219
 #, python-format
 msgid "port_removed failed for %(device)s: %(e)s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:931
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:366
-#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:1181
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1216
+#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:1245
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1224
+#: neutron/plugins/sriovnicagent/sriov_nic_agent.py:238
 #, python-format
 msgid "Port %s updated."
 msgstr ""
@@ -7455,11 +7511,13 @@ msgid "LinuxBridge Agent RPC Daemon Started!"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:998
+#: neutron/plugins/sriovnicagent/sriov_nic_agent.py:267
 #, python-format
 msgid "Agent loop found changes! %s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:1002
+#: neutron/plugins/sriovnicagent/sriov_nic_agent.py:273
 #, python-format
 msgid "Error in agent loop. Devices info: %s"
 msgstr ""
@@ -7948,8 +8006,8 @@ msgid "There is no %(name)s with ID %(id)s in MidoNet."
 msgstr ""
 
 #: neutron/plugins/midonet/plugin.py:183
-#: neutron/plugins/ml2/drivers/mech_arista/exceptions.py:23
-#: neutron/plugins/ml2/drivers/mech_arista/exceptions.py:27
+#: neutron/plugins/ml2/drivers/arista/exceptions.py:23
+#: neutron/plugins/ml2/drivers/arista/exceptions.py:27
 #, python-format
 msgid "%(msg)s"
 msgstr ""
@@ -8226,18 +8284,18 @@ msgstr ""
 msgid "Added segment %(id)s of type %(network_type)s for network %(network_id)s"
 msgstr ""
 
-#: neutron/plugins/ml2/db.py:134 neutron/plugins/ml2/db.py:186
-#: neutron/plugins/ml2/plugin.py:931
+#: neutron/plugins/ml2/db.py:141 neutron/plugins/ml2/db.py:193
+#: neutron/plugins/ml2/plugin.py:1056
 #, python-format
 msgid "Multiple ports have port_id starting with %s"
 msgstr ""
 
-#: neutron/plugins/ml2/db.py:140
+#: neutron/plugins/ml2/db.py:147
 #, python-format
 msgid "get_port_from_device_mac() called for mac %s"
 msgstr ""
 
-#: neutron/plugins/ml2/db.py:182
+#: neutron/plugins/ml2/db.py:189
 #, python-format
 msgid "No binding found for port %(port_id)s"
 msgstr ""
@@ -8279,233 +8337,245 @@ msgstr ""
 msgid "Initializing driver for type '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/managers.py:82
+#: neutron/plugins/ml2/managers.py:82 neutron/plugins/ml2/managers.py:91
 #: neutron/plugins/ml2/drivers/type_tunnel.py:113
 #, python-format
 msgid "network_type value '%s' not supported"
 msgstr ""
 
-#: neutron/plugins/ml2/managers.py:108
+#: neutron/plugins/ml2/managers.py:117
 #, python-format
 msgid "Failed to release segment '%s' because network type is not supported."
 msgstr ""
 
-#: neutron/plugins/ml2/managers.py:124
+#: neutron/plugins/ml2/managers.py:133
 #, python-format
 msgid "Configured mechanism driver names: %s"
 msgstr ""
 
-#: neutron/plugins/ml2/managers.py:130
+#: neutron/plugins/ml2/managers.py:139
 #, python-format
 msgid "Loaded mechanism driver names: %s"
 msgstr ""
 
-#: neutron/plugins/ml2/managers.py:142
+#: neutron/plugins/ml2/managers.py:151
 #, python-format
 msgid "Registered mechanism drivers: %s"
 msgstr ""
 
-#: neutron/plugins/ml2/managers.py:149
+#: neutron/plugins/ml2/managers.py:158
 #, python-format
 msgid "Initializing mechanism driver '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/managers.py:171
+#: neutron/plugins/ml2/managers.py:180
 #, python-format
 msgid "Mechanism driver '%(name)s' failed in %(method)s"
 msgstr ""
 
-#: neutron/plugins/ml2/managers.py:473
+#: neutron/plugins/ml2/managers.py:482
 #, python-format
 msgid "Mechanism driver %s failed in bind_port"
 msgstr ""
 
-#: neutron/plugins/ml2/managers.py:477
+#: neutron/plugins/ml2/managers.py:486
 #, python-format
 msgid "Failed to bind port %(port)s on host %(host)s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:125
+#: neutron/plugins/ml2/plugin.py:128
 msgid "Modular L2 Plugin initialization complete"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:156
+#: neutron/plugins/ml2/plugin.py:159
 msgid "network_type required"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:195
+#: neutron/plugins/ml2/plugin.py:198
 #, python-format
 msgid "Network %s has no segments"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:238
+#: neutron/plugins/ml2/plugin.py:250
 msgid "binding:profile value too large"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:287
+#: neutron/plugins/ml2/plugin.py:306
 #, python-format
 msgid "Failed to commit binding results for %(port)s after %(max)s tries"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:293
+#: neutron/plugins/ml2/plugin.py:312
 #, python-format
 msgid "Attempt %(count)s to bind port %(port)s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:425
+#: neutron/plugins/ml2/plugin.py:444
 #, python-format
 msgid "Serialized vif_details DB value '%(value)s' for port %(port)s is invalid"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:436
+#: neutron/plugins/ml2/plugin.py:455
 #, python-format
 msgid "Serialized profile DB value '%(value)s' for port %(port)s is invalid"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:480
+#: neutron/plugins/ml2/plugin.py:499
 #, python-format
 msgid ""
 "In _notify_port_updated(), no bound segment for port %(port_id)s on "
 "network %(network_id)s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:522
+#: neutron/plugins/ml2/plugin.py:541
 #, python-format
 msgid "mechanism_manager.create_network_postcommit failed, deleting network '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:582
+#: neutron/plugins/ml2/plugin.py:601
 #, python-format
 msgid "Deleting network %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:603
+#: neutron/plugins/ml2/plugin.py:622
 #, python-format
 msgid "Ports to auto-delete: %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:609 neutron/plugins/ml2/plugin.py:734
+#: neutron/plugins/ml2/plugin.py:628 neutron/plugins/ml2/plugin.py:753
 msgid "Tenant-owned ports exist"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:617
+#: neutron/plugins/ml2/plugin.py:636
 #, python-format
 msgid "Subnets to auto-delete: %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:628
+#: neutron/plugins/ml2/plugin.py:647
 #, python-format
 msgid "Deleting network record %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:636 neutron/plugins/ml2/plugin.py:747
+#: neutron/plugins/ml2/plugin.py:655 neutron/plugins/ml2/plugin.py:766
 msgid "Committing transaction"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:642
+#: neutron/plugins/ml2/plugin.py:661
 msgid "A concurrent port creation has occurred"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:651
+#: neutron/plugins/ml2/plugin.py:670
 #, python-format
 msgid "Exception auto-deleting port %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:659
+#: neutron/plugins/ml2/plugin.py:678
 #, python-format
 msgid "Exception auto-deleting subnet %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:668
+#: neutron/plugins/ml2/plugin.py:687
 msgid "mechanism_manager.delete_network_postcommit failed"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:682
+#: neutron/plugins/ml2/plugin.py:701
 #, python-format
 msgid "mechanism_manager.create_subnet_postcommit failed, deleting subnet '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:712
+#: neutron/plugins/ml2/plugin.py:731
 #, python-format
 msgid "Deleting subnet %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:728
+#: neutron/plugins/ml2/plugin.py:747
 #, python-format
 msgid "Ports to auto-deallocate: %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:743
+#: neutron/plugins/ml2/plugin.py:762
 msgid "Deleting subnet record"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:763
+#: neutron/plugins/ml2/plugin.py:782
 #, python-format
 msgid "Exception deleting fixed_ip from port %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:773
+#: neutron/plugins/ml2/plugin.py:792
 msgid "mechanism_manager.delete_subnet_postcommit failed"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:803
+#: neutron/plugins/ml2/plugin.py:823
 #, python-format
 msgid "mechanism_manager.create_port_postcommit failed, deleting port '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:815
+#: neutron/plugins/ml2/plugin.py:835
 #, python-format
 msgid "_bind_port_if_needed failed, deleting port '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:874
-#: neutron/tests/unit/ml2/test_ml2_plugin.py:134
+#: neutron/plugins/ml2/plugin.py:914
+#, python-format
+msgid "No Host supplied to bind DVR Port %s"
+msgstr ""
+
+#: neutron/plugins/ml2/plugin.py:972
+#: neutron/tests/unit/ml2/test_ml2_plugin.py:136
 #, python-format
 msgid "Deleting port %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:891
-#: neutron/tests/unit/ml2/test_ml2_plugin.py:135
+#: neutron/plugins/ml2/plugin.py:992
+#: neutron/tests/unit/ml2/test_ml2_plugin.py:137
 #, python-format
 msgid "The port '%s' was deleted"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:900
-msgid "Calling base delete_port"
+#: neutron/plugins/ml2/plugin.py:1041
+#, python-format
+msgid "mechanism_manager.delete_port_postcommit failed for port %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:917
-msgid "mechanism_manager.delete_port_postcommit failed"
+#: neutron/plugins/ml2/plugin.py:1065
+#, python-format
+msgid "Binding info for DVR port %s not found"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:956
+#: neutron/plugins/ml2/plugin.py:1091
 #, python-format
 msgid "Port %(port)s updated up by agent not found"
 msgstr ""
 
-#: neutron/plugins/ml2/rpc.py:94
+#: neutron/plugins/ml2/plugin.py:1121
+#, python-format
+msgid "Port %s not found during update"
+msgstr ""
+
+#: neutron/plugins/ml2/rpc.py:97
 #, python-format
 msgid "Device %(device)s requested by agent %(agent_id)s not found in database"
 msgstr ""
 
-#: neutron/plugins/ml2/rpc.py:103
+#: neutron/plugins/ml2/rpc.py:106
 #, python-format
 msgid ""
 "Device %(device)s requested by agent %(agent_id)s on network "
 "%(network_id)s not bound, vif_type: %(vif_type)s"
 msgstr ""
 
-#: neutron/plugins/ml2/rpc.py:129
+#: neutron/plugins/ml2/rpc.py:133
 #, python-format
 msgid "Returning: %s"
 msgstr ""
 
-#: neutron/plugins/ml2/rpc.py:148
+#: neutron/plugins/ml2/rpc.py:152
 #, python-format
 msgid "Device %(device)s no longer exists at agent %(agent_id)s"
 msgstr ""
 
-#: neutron/plugins/ml2/rpc.py:174
+#: neutron/plugins/ml2/rpc.py:178
 #, python-format
 msgid "Device %(device)s up at agent %(agent_id)s"
 msgstr ""
@@ -8545,6 +8615,7 @@ msgid "Bound using segment: %s"
 msgstr ""
 
 #: neutron/plugins/ml2/drivers/mech_agent.py:73
+#: neutron/plugins/ml2/drivers/mech_sriov/mech_driver.py:112
 #, python-format
 msgid "Attempting to bind with dead agent: %s"
 msgstr ""
@@ -8689,26 +8760,26 @@ msgstr ""
 msgid "ML2 FlatTypeDriver initialization complete"
 msgstr ""
 
-#: neutron/plugins/ml2/drivers/type_flat.py:87
+#: neutron/plugins/ml2/drivers/type_flat.py:90
 msgid "physical_network required for flat provider network"
 msgstr ""
 
-#: neutron/plugins/ml2/drivers/type_flat.py:90
+#: neutron/plugins/ml2/drivers/type_flat.py:93
 #, python-format
 msgid "physical_network '%s' unknown for flat provider network"
 msgstr ""
 
-#: neutron/plugins/ml2/drivers/type_flat.py:97
+#: neutron/plugins/ml2/drivers/type_flat.py:100
 #, python-format
 msgid "%s prohibited for flat provider network"
 msgstr ""
 
-#: neutron/plugins/ml2/drivers/type_flat.py:104
+#: neutron/plugins/ml2/drivers/type_flat.py:107
 #, python-format
 msgid "Reserving flat network on physical network %s"
 msgstr ""
 
-#: neutron/plugins/ml2/drivers/type_flat.py:127
+#: neutron/plugins/ml2/drivers/type_flat.py:130
 #, python-format
 msgid "No flat network found on physical network %s"
 msgstr ""
@@ -8753,7 +8824,7 @@ msgstr ""
 msgid "ML2 LocalTypeDriver initialization complete"
 msgstr ""
 
-#: neutron/plugins/ml2/drivers/type_local.py:46
+#: neutron/plugins/ml2/drivers/type_local.py:49
 #, python-format
 msgid "%s prohibited for local provider network"
 msgstr ""
@@ -8769,7 +8840,7 @@ msgid "%(type)s ID ranges: %(range)s"
 msgstr ""
 
 #: neutron/plugins/ml2/drivers/type_tunnel.py:73
-#: neutron/plugins/openvswitch/ovs_neutron_plugin.py:432
+#: neutron/plugins/openvswitch/ovs_neutron_plugin.py:433
 #, python-format
 msgid "provider:physical_network specified for %s network"
 msgstr ""
@@ -8852,6 +8923,130 @@ msgstr ""
 msgid "add_vxlan_endpoint() called for ip %s"
 msgstr ""
 
+#: neutron/plugins/ml2/drivers/arista/config.py:31
+msgid ""
+"Username for Arista EOS. This is required field. If not set, all "
+"communications to Arista EOSwill fail."
+msgstr ""
+
+#: neutron/plugins/ml2/drivers/arista/config.py:37
+msgid ""
+"Password for Arista EOS. This is required field. If not set, all "
+"communications to Arista EOS will fail."
+msgstr ""
+
+#: neutron/plugins/ml2/drivers/arista/config.py:42
+msgid ""
+"Arista EOS IP address. This is required field. If not set, all "
+"communications to Arista EOSwill fail."
+msgstr ""
+
+#: neutron/plugins/ml2/drivers/arista/config.py:47
+msgid ""
+"Defines if hostnames are sent to Arista EOS as FQDNs "
+"(\"node1.domain.com\") or as short names (\"node1\"). This is optional. "
+"If not set, a value of \"True\" is assumed."
+msgstr ""
+
+#: neutron/plugins/ml2/drivers/arista/config.py:53
+msgid ""
+"Sync interval in seconds between Neutron plugin and EOS. This interval "
+"defines how often the synchronization is performed. This is an optional "
+"field. If not set, a value of 180 seconds is assumed."
+msgstr ""
+
+#: neutron/plugins/ml2/drivers/arista/config.py:60
+msgid ""
+"Defines Region Name that is assigned to this OpenStack Controller. This "
+"is useful when multiple OpenStack/Neutron controllers are managing the "
+"same Arista HW clusters. Note that this name must match with the region "
+"name registered (or known) to keystone service. Authentication with "
+"Keysotne is performed by EOS. This is optional. If not set, a value of "
+"\"RegionOne\" is assumed."
+msgstr ""
+
+#: neutron/plugins/ml2/drivers/arista/mechanism_arista.py:31
+msgid "Unable to reach EOS"
+msgstr ""
+
+#: neutron/plugins/ml2/drivers/arista/mechanism_arista.py:73
+#, python-format
+msgid "'timestamp' command '%s' is not available on EOS"
+msgstr ""
+
+#: neutron/plugins/ml2/drivers/arista/mechanism_arista.py:313
+#, python-format
+msgid "VM id %(vmid)s not found for port %(portid)s"
+msgstr ""
+
+#: neutron/plugins/ml2/drivers/arista/mechanism_arista.py:332
+#, python-format
+msgid "Unknown device owner: %s"
+msgstr ""
+
+#: neutron/plugins/ml2/drivers/arista/mechanism_arista.py:428
+#, python-format
+msgid "Executing command on Arista EOS: %s"
+msgstr ""
+
+#: neutron/plugins/ml2/drivers/arista/mechanism_arista.py:436
+#, python-format
+msgid "Error %(err)s while trying to execute commands %(cmd)s on EOS %(host)s"
+msgstr ""
+
+#: neutron/plugins/ml2/drivers/arista/mechanism_arista.py:504
+msgid "Required option eapi_host is not set"
+msgstr ""
+
+#: neutron/plugins/ml2/drivers/arista/mechanism_arista.py:508
+msgid "Required option eapi_username is not set"
+msgstr ""
+
+#: neutron/plugins/ml2/drivers/arista/mechanism_arista.py:528
+msgid "Syncing Neutron <-> EOS"
+msgstr ""
+
+#: neutron/plugins/ml2/drivers/arista/mechanism_arista.py:534
+msgid "OpenStack and EOS are in sync!"
+msgstr ""
+
+#: neutron/plugins/ml2/drivers/arista/mechanism_arista.py:556
+#, python-format
+msgid ""
+"No Tenants configured in Neutron DB. But %d tenants disovered in EOS "
+"during synchronization.Enitre EOS region is cleared"
+msgstr ""
+
+#: neutron/plugins/ml2/drivers/arista/mechanism_arista.py:721
+#, python-format
+msgid "Network %s is not created as it is not found inArista DB"
+msgstr ""
+
+#: neutron/plugins/ml2/drivers/arista/mechanism_arista.py:735
+#, python-format
+msgid "Network name changed to %s"
+msgstr ""
+
+#: neutron/plugins/ml2/drivers/arista/mechanism_arista.py:763
+#, python-format
+msgid "Network %s is not updated as it is not found inArista DB"
+msgstr ""
+
+#: neutron/plugins/ml2/drivers/arista/mechanism_arista.py:855
+#, python-format
+msgid "VM %s is not created as it is not found in Arista DB"
+msgstr ""
+
+#: neutron/plugins/ml2/drivers/arista/mechanism_arista.py:870
+#, python-format
+msgid "Port name changed to %s"
+msgstr ""
+
+#: neutron/plugins/ml2/drivers/arista/mechanism_arista.py:920
+#, python-format
+msgid "VM %s is not updated as it is not found in Arista DB"
+msgstr ""
+
 #: neutron/plugins/ml2/drivers/brocade/mechanism_brocade.py:40
 msgid "Allowed physical networks"
 msgstr ""
@@ -9220,16 +9415,16 @@ msgstr ""
 msgid "Experimental L2 population driver"
 msgstr ""
 
-#: neutron/plugins/ml2/drivers/l2pop/mech_driver.py:133
+#: neutron/plugins/ml2/drivers/l2pop/mech_driver.py:165
 msgid "Unable to retrieve the agent ip, check the agent configuration."
 msgstr ""
 
-#: neutron/plugins/ml2/drivers/l2pop/mech_driver.py:139
+#: neutron/plugins/ml2/drivers/l2pop/mech_driver.py:171
 #, python-format
 msgid "Port %(port)s updated by agent %(agent)s isn't bound to any segment"
 msgstr ""
 
-#: neutron/plugins/ml2/drivers/l2pop/mech_driver.py:189
+#: neutron/plugins/ml2/drivers/l2pop/mech_driver.py:222
 #, python-format
 msgid ""
 "Unable to retrieve the agent ip, check the agent %(agent_host)s "
@@ -9250,140 +9445,50 @@ msgid ""
 "with %(fdb_entries)s"
 msgstr ""
 
-#: neutron/plugins/ml2/drivers/mech_arista/config.py:31
-msgid ""
-"Username for Arista EOS. This is required field. If not set, all "
-"communications to Arista EOSwill fail."
-msgstr ""
-
-#: neutron/plugins/ml2/drivers/mech_arista/config.py:37
-msgid ""
-"Password for Arista EOS. This is required field. If not set, all "
-"communications to Arista EOS will fail."
-msgstr ""
-
-#: neutron/plugins/ml2/drivers/mech_arista/config.py:42
-msgid ""
-"Arista EOS IP address. This is required field. If not set, all "
-"communications to Arista EOSwill fail."
-msgstr ""
-
-#: neutron/plugins/ml2/drivers/mech_arista/config.py:47
-msgid ""
-"Defines if hostnames are sent to Arista EOS as FQDNs "
-"(\"node1.domain.com\") or as short names (\"node1\"). This is optional. "
-"If not set, a value of \"True\" is assumed."
-msgstr ""
-
-#: neutron/plugins/ml2/drivers/mech_arista/config.py:53
-msgid ""
-"Sync interval in seconds between Neutron plugin and EOS. This interval "
-"defines how often the synchronization is performed. This is an optional "
-"field. If not set, a value of 180 seconds is assumed."
-msgstr ""
-
-#: neutron/plugins/ml2/drivers/mech_arista/config.py:60
-msgid ""
-"Defines Region Name that is assigned to this OpenStack Controller. This "
-"is useful when multiple OpenStack/Neutron controllers are managing the "
-"same Arista HW clusters. Note that this name must match with the region "
-"name registered (or known) to keystone service. Authentication with "
-"Keysotne is performed by EOS. This is optional. If not set, a value of "
-"\"RegionOne\" is assumed."
-msgstr ""
-
-#: neutron/plugins/ml2/drivers/mech_arista/mechanism_arista.py:32
-msgid "Unable to reach EOS"
-msgstr ""
-
-#: neutron/plugins/ml2/drivers/mech_arista/mechanism_arista.py:74
-#, python-format
-msgid "'timestamp' command '%s' is not available on EOS"
-msgstr ""
-
-#: neutron/plugins/ml2/drivers/mech_arista/mechanism_arista.py:314
-#, python-format
-msgid "VM id %(vmid)s not found for port %(portid)s"
-msgstr ""
-
-#: neutron/plugins/ml2/drivers/mech_arista/mechanism_arista.py:333
-#, python-format
-msgid "Unknown device owner: %s"
-msgstr ""
-
-#: neutron/plugins/ml2/drivers/mech_arista/mechanism_arista.py:429
-#, python-format
-msgid "Executing command on Arista EOS: %s"
-msgstr ""
-
-#: neutron/plugins/ml2/drivers/mech_arista/mechanism_arista.py:437
-#, python-format
-msgid "Error %(err)s while trying to execute commands %(cmd)s on EOS %(host)s"
-msgstr ""
-
-#: neutron/plugins/ml2/drivers/mech_arista/mechanism_arista.py:505
-msgid "Required option eapi_host is not set"
-msgstr ""
-
-#: neutron/plugins/ml2/drivers/mech_arista/mechanism_arista.py:509
-msgid "Required option eapi_username is not set"
+#: neutron/plugins/ml2/drivers/mech_bigswitch/driver.py:47
+msgid "Initializing driver"
 msgstr ""
 
-#: neutron/plugins/ml2/drivers/mech_arista/mechanism_arista.py:529
-msgid "Syncing Neutron <-> EOS"
+#: neutron/plugins/ml2/drivers/mech_bigswitch/driver.py:62
+msgid "Initialization done"
 msgstr ""
 
-#: neutron/plugins/ml2/drivers/mech_arista/mechanism_arista.py:535
-msgid "OpenStack and EOS are in sync!"
+#: neutron/plugins/ml2/drivers/mech_bigswitch/driver.py:123
+msgid "Ignoring port notification to controller because of missing host ID."
 msgstr ""
 
-#: neutron/plugins/ml2/drivers/mech_arista/mechanism_arista.py:557
-#, python-format
+#: neutron/plugins/ml2/drivers/mech_sriov/mech_driver.py:31
 msgid ""
-"No Tenants configured in Neutron DB. But %d tenants disovered in EOS "
-"during synchronization.Enitre EOS region is cleared"
+"Supported PCI vendor devices, defined by vendor_id:product_id according "
+"to the PCI ID Repository. Default enables support for Intel and Mellanox "
+"SR-IOV capable NICs"
 msgstr ""
 
-#: neutron/plugins/ml2/drivers/mech_arista/mechanism_arista.py:722
-#, python-format
-msgid "Network %s is not created as it is not found inArista DB"
+#: neutron/plugins/ml2/drivers/mech_sriov/mech_driver.py:37
+msgid "SRIOV neutron agent is required for port binding"
 msgstr ""
 
-#: neutron/plugins/ml2/drivers/mech_arista/mechanism_arista.py:736
-#, python-format
-msgid "Network name changed to %s"
+#: neutron/plugins/ml2/drivers/mech_sriov/mech_driver.py:86
+msgid "Failed to parse supported PCI vendor devices"
 msgstr ""
 
-#: neutron/plugins/ml2/drivers/mech_arista/mechanism_arista.py:764
-#, python-format
-msgid "Network %s is not updated as it is not found inArista DB"
+#: neutron/plugins/ml2/drivers/mech_sriov/mech_driver.py:87
+msgid "Parsing supported pci_vendor_devs failed"
 msgstr ""
 
-#: neutron/plugins/ml2/drivers/mech_arista/mechanism_arista.py:856
+#: neutron/plugins/ml2/drivers/mech_sriov/mech_driver.py:176
 #, python-format
-msgid "VM %s is not created as it is not found in Arista DB"
+msgid "Invalid pci_vendor_info: '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/drivers/mech_arista/mechanism_arista.py:871
+#: neutron/plugins/ml2/drivers/mech_sriov/mech_driver.py:179
 #, python-format
-msgid "Port name changed to %s"
+msgid "Missing vendor_id in: '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/drivers/mech_arista/mechanism_arista.py:921
+#: neutron/plugins/ml2/drivers/mech_sriov/mech_driver.py:182
 #, python-format
-msgid "VM %s is not updated as it is not found in Arista DB"
-msgstr ""
-
-#: neutron/plugins/ml2/drivers/mech_bigswitch/driver.py:47
-msgid "Initializing driver"
-msgstr ""
-
-#: neutron/plugins/ml2/drivers/mech_bigswitch/driver.py:62
-msgid "Initialization done"
-msgstr ""
-
-#: neutron/plugins/ml2/drivers/mech_bigswitch/driver.py:123
-msgid "Ignoring port notification to controller because of missing host ID."
+msgid "Missing product_id in: '%s'"
 msgstr ""
 
 #: neutron/plugins/ml2/drivers/mlnx/config.py:24
@@ -9435,7 +9540,7 @@ msgid "Physical Network type mappings: %s"
 msgstr ""
 
 #: neutron/plugins/mlnx/mlnx_plugin.py:176
-#: neutron/plugins/openvswitch/ovs_neutron_plugin.py:359
+#: neutron/plugins/openvswitch/ovs_neutron_plugin.py:360
 #, python-format
 msgid "%s. Server terminated!"
 msgstr ""
@@ -9553,11 +9658,13 @@ msgid "Device with mac_address %s not defined on Neutron Plugin"
 msgstr ""
 
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:353
+#: neutron/plugins/sriovnicagent/sriov_nic_agent.py:226
 #, python-format
 msgid "Removing device with mac_address %s"
 msgstr ""
 
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:361
+#: neutron/plugins/sriovnicagent/sriov_nic_agent.py:233
 #, python-format
 msgid "Removing port failed for device %(device)s due to %(exc)s"
 msgstr ""
@@ -10266,130 +10373,135 @@ msgid ""
 "or clear protocol before changing ether type."
 msgstr ""
 
-#: neutron/plugins/nuage/plugin.py:89
+#: neutron/plugins/nuage/plugin.py:88
 #, python-format
 msgid "%(resource)s with id %(resource_id)s does not exist"
 msgstr ""
 
-#: neutron/plugins/nuage/plugin.py:98
+#: neutron/plugins/nuage/plugin.py:97
 #, python-format
 msgid ""
 "Either %(resource)s %(req_resource)s not found or you dont have "
 "credential to access it"
 msgstr ""
 
-#: neutron/plugins/nuage/plugin.py:104
+#: neutron/plugins/nuage/plugin.py:103
 #, python-format
 msgid ""
 "More than one entry found for %(resource)s %(req_resource)s. Use id "
 "instead"
 msgstr ""
 
-#: neutron/plugins/nuage/plugin.py:214
+#: neutron/plugins/nuage/plugin.py:174
 #, python-format
 msgid "Subnet %s not found on VSD"
 msgstr ""
 
-#: neutron/plugins/nuage/plugin.py:219
+#: neutron/plugins/nuage/plugin.py:182
 #, python-format
-msgid "Port-Mapping for port %s not  found on VSD"
+msgid "Port %s not found on VSD"
 msgstr ""
 
-#: neutron/plugins/nuage/plugin.py:314
+#: neutron/plugins/nuage/plugin.py:282
 msgid "External network with subnets can not be changed to non-external network"
 msgstr ""
 
-#: neutron/plugins/nuage/plugin.py:368
+#: neutron/plugins/nuage/plugin.py:345
 msgid ""
 "Either net_partition is not provided with subnet OR default net_partition"
 " is not created at the start"
 msgstr ""
 
-#: neutron/plugins/nuage/plugin.py:397
+#: neutron/plugins/nuage/plugin.py:366
 #, python-format
 msgid "Only one subnet is allowed per external network %s"
 msgstr ""
 
-#: neutron/plugins/nuage/plugin.py:479
+#: neutron/plugins/nuage/plugin.py:449
 #, python-format
 msgid ""
 "Unable to complete operation on subnet %s.One or more ports have an IP "
 "allocation from this subnet."
 msgstr ""
 
-#: neutron/plugins/nuage/plugin.py:509
+#: neutron/plugins/nuage/plugin.py:476
 #, python-format
 msgid ""
-"Router %s does not hold default zone OR net_partition mapping. Router-IF "
-"add failed"
+"Router %s does not hold default zone OR domain in VSD. Router-IF add "
+"failed"
 msgstr ""
 
-#: neutron/plugins/nuage/plugin.py:519
+#: neutron/plugins/nuage/plugin.py:488
 #, python-format
 msgid "Subnet %s does not hold Nuage VSD reference. Router-IF add failed"
 msgstr ""
 
-#: neutron/plugins/nuage/plugin.py:529
+#: neutron/plugins/nuage/plugin.py:498
 #, python-format
 msgid ""
 "Subnet %(subnet)s and Router %(router)s belong to different net_partition"
 " Router-IF add not permitted"
 msgstr ""
 
-#: neutron/plugins/nuage/plugin.py:541
+#: neutron/plugins/nuage/plugin.py:510
 #, python-format
 msgid "Subnet %s has one or more active VMs Router-IF add not permitted"
 msgstr ""
 
-#: neutron/plugins/nuage/plugin.py:587 neutron/plugins/nuage/plugin.py:592
-#: neutron/plugins/nuage/plugin.py:598
+#: neutron/plugins/nuage/plugin.py:559 neutron/plugins/nuage/plugin.py:564
+#: neutron/plugins/nuage/plugin.py:570
 #, python-format
 msgid "No router interface found for Router %s. Router-IF delete failed"
 msgstr ""
 
-#: neutron/plugins/nuage/plugin.py:614
+#: neutron/plugins/nuage/plugin.py:586
 #, python-format
 msgid "Subnet %s has one or more active VMs Router-IF delete not permitted"
 msgstr ""
 
-#: neutron/plugins/nuage/plugin.py:623
+#: neutron/plugins/nuage/plugin.py:595
 #, python-format
 msgid ""
 "Router %s does not hold net_partition assoc on Nuage VSD. Router-IF "
 "delete failed"
 msgstr ""
 
-#: neutron/plugins/nuage/plugin.py:662
+#: neutron/plugins/nuage/plugin.py:633
 msgid ""
 "Either net_partition is not provided with router OR default net_partition"
 " is not created at the start"
 msgstr ""
 
-#: neutron/plugins/nuage/plugin.py:708
+#: neutron/plugins/nuage/plugin.py:674
 msgid "for same subnet, multiple static routes not allowed"
 msgstr ""
 
-#: neutron/plugins/nuage/plugin.py:724
+#: neutron/plugins/nuage/plugin.py:691
 #, python-format
 msgid "Router %s does not hold net-partition assoc on VSD. extra-route failed"
 msgstr ""
 
-#: neutron/plugins/nuage/plugin.py:837
+#: neutron/plugins/nuage/plugin.py:808
 #, python-format
 msgid "One or more router still attached to net_partition %s."
 msgstr ""
 
-#: neutron/plugins/nuage/plugin.py:842
+#: neutron/plugins/nuage/plugin.py:813
 #, python-format
 msgid "NetPartition with %s does not exist"
 msgstr ""
 
-#: neutron/plugins/nuage/plugin.py:888
+#: neutron/plugins/nuage/plugin.py:852
+#, python-format
+msgid "sharedresource %s not found on VSD"
+msgstr ""
+
+#: neutron/plugins/nuage/plugin.py:859 neutron/plugins/nuage/plugin.py:1001
 #, python-format
 msgid "router %s is not associated with any net-partition"
 msgstr ""
 
-#: neutron/plugins/nuage/plugin.py:903
+#: neutron/plugins/nuage/plugin.py:892
 msgid "Floating IP can not be associated to VM in different router context"
 msgstr ""
 
@@ -10434,350 +10546,328 @@ msgstr ""
 msgid "Nuage Plugin does not support this operation: %(msg)s"
 msgstr ""
 
-#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:93
+#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:94
 msgid "Agent terminated!: Failed to get a datapath."
 msgstr ""
 
-#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:112
+#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:113
 msgid "Agent terminated"
 msgstr ""
 
-#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:146
+#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:147
 msgid "Agent failed to create agent config map"
 msgstr ""
 
-#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:273
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1313
+#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:275
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1321
 #, python-format
 msgid "Unable to create tunnel port. Invalid remote IP: %s"
 msgstr ""
 
-#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:278
+#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:280
 #, python-format
 msgid "ryu send_msg() result: %s"
 msgstr ""
 
-#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:329
+#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:331
 #, python-format
 msgid "network_delete received network %s"
 msgstr ""
 
-#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:335
-#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:562
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:293
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:616
-#, python-format
-msgid "Network %s not used on agent."
-msgstr ""
-
-#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:344
-#, python-format
-msgid "port_update received port %s"
-msgstr ""
-
-#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:347
+#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:337
+#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:614
 #: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:305
-msgid "tunnel_update received"
-msgstr ""
-
-#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:353
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:314
-msgid "No tunnel_type specified, cannot create tunnels"
-msgstr ""
-
-#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:356
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:317
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:597
 #, python-format
-msgid "tunnel_type %s not supported by agent"
+msgid "Network %s not used on agent."
 msgstr ""
 
-#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:477
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:524
+#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:529
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:498
 #, python-format
 msgid "No local VLAN available for net-id=%s"
 msgstr ""
 
-#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:480
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:532
+#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:532
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:506
 #, python-format
 msgid "Assigning %(vlan_id)s as local vlan for net-id=%(net_uuid)s"
 msgstr ""
 
-#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:492
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:554
+#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:544
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:535
 #, python-format
 msgid ""
 "Cannot provision %(network_type)s network for net-id=%(net_uuid)s - "
 "tunneling disabled"
 msgstr ""
 
-#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:500
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:573
+#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:552
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:554
 #, python-format
 msgid ""
 "Cannot provision flat network for net-id=%(net_uuid)s - no bridge for "
 "physical_network %(physical_network)s"
 msgstr ""
 
-#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:510
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:593
+#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:562
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:574
 #, python-format
 msgid ""
 "Cannot provision VLAN network for net-id=%(net_uuid)s - no bridge for "
 "physical_network %(physical_network)s"
 msgstr ""
 
-#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:519
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:602
+#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:571
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:583
 #, python-format
 msgid ""
 "Cannot provision unknown network type %(network_type)s for net-"
 "id=%(net_uuid)s"
 msgstr ""
 
-#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:565
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:619
+#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:617
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:600
 #, python-format
 msgid "Reclaiming vlan = %(vlan_id)s from net-id = %(net_uuid)s"
 msgstr ""
 
-#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:599
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:659
+#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:654
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:640
 #, python-format
 msgid ""
 "Cannot reclaim unknown network type %(network_type)s for net-"
 "id=%(net_uuid)s"
 msgstr ""
 
-#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:650
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:705
+#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:705
 #, python-format
 msgid "port_unbound() net_uuid %s not in local_vlan_map"
 msgstr ""
 
-#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:724
+#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:779
 #, python-format
 msgid "ancillary bridge list: %s."
 msgstr ""
 
-#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:814
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:794
+#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:869
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:788
 msgid ""
 "Failed to create OVS patch port. Cannot have tunneling enabled on this "
 "agent, since this version of OVS does not support tunnels or patch ports."
 " Agent terminated!"
 msgstr ""
 
-#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:898
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:909
+#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:953
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:903
 #, python-format
 msgid "Mapping physical network %(physical_network)s to bridge %(bridge)s"
 msgstr ""
 
-#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:904
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:915
+#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:959
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:909
 #, python-format
 msgid ""
 "Bridge %(bridge)s for physical network %(physical_network)s does not "
 "exist. Agent terminated!"
 msgstr ""
 
-#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:975
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1019
+#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:1030
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1013
 #, python-format
 msgid "Port '%(port_name)s' has lost its vlan tag '%(vlan_tag)d'!"
 msgstr ""
 
-#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:1008
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1048
+#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:1063
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1042
 #, python-format
 msgid "VIF port: %s has no ofport configured, and might not be able to transmit"
 msgstr ""
 
-#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:1016
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1058
+#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:1071
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1052
 #, python-format
 msgid "No VIF port for port %s defined on agent."
 msgstr ""
 
-#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:1029
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1071
-#: neutron/tests/unit/ofagent/test_ofa_neutron_agent.py:703
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:849
+#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:1084
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1065
+#: neutron/tests/unit/ofagent/test_ofa_neutron_agent.py:863
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:1216
 msgid "ofport should have a value that can be interpreted as an integer"
 msgstr ""
 
-#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:1032
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1074
-#: neutron/tests/unit/ofagent/test_ofa_neutron_agent.py:686
-#: neutron/tests/unit/ofagent/test_ofa_neutron_agent.py:706
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:832
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:852
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:869
+#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:1087
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1068
+#: neutron/tests/unit/ofagent/test_ofa_neutron_agent.py:846
+#: neutron/tests/unit/ofagent/test_ofa_neutron_agent.py:866
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:1199
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:1219
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:1236
 #, python-format
 msgid "Failed to set-up %(type)s tunnel port to %(ip)s"
 msgstr ""
 
-#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:1082
+#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:1146
 #, python-format
 msgid "Processing port %s"
 msgstr ""
 
-#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:1087
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1129
+#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:1151
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1134
 #, python-format
 msgid ""
 "Port %s was not found on the integration bridge and will therefore not be"
 " processed"
 msgstr ""
 
-#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:1096
-#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:1135
+#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:1160
+#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:1199
 #, python-format
 msgid "Unable to get port details for %(device)s: %(e)s"
 msgstr ""
 
-#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:1113
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1150
+#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:1177
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1157
 #, python-format
 msgid "Setting status for %s to UP"
 msgstr ""
 
-#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:1117
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1154
+#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:1181
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1161
 #, python-format
 msgid "Setting status for %s to DOWN"
 msgstr ""
 
-#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:1120
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1157
+#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:1184
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1164
 #, python-format
 msgid "Configuration for device %s completed."
 msgstr ""
 
-#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:1130
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1175
+#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:1194
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1183
 #, python-format
 msgid "Ancillary Port %s added"
 msgstr ""
 
-#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:1205
+#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:1269
 #, python-format
 msgid ""
 "process_network_ports - iteration:%(iter_num)d - "
 "treat_devices_added_or_updated completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:1213
+#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:1277
 #, python-format
 msgid ""
 "process_network_ports - iteration:%(iter_num)d - treat_devices_removed "
 "completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:1226
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1284
+#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:1290
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1292
 #, python-format
 msgid ""
 "process_ancillary_network_ports - iteration: %(iter_num)d - "
 "treat_ancillary_devices_added completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:1235
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1300
+#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:1299
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1308
 #, python-format
 msgid ""
 "process_ancillary_network_ports - iteration: %(iter_num)d - "
 "treat_ancillary_devices_removed completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:1262
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1342
+#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:1316
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1349
 #, python-format
 msgid "Unable to sync tunnel IP %(local_ip)s: %(e)s"
 msgstr ""
 
-#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:1290
+#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:1344
 #, python-format
 msgid "Agent ovsdb_monitor_loop - iteration:%d started"
 msgstr ""
 
-#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:1301
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1396
+#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:1355
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1408
 msgid "Agent tunnel out of sync with plugin!"
 msgstr ""
 
-#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:1305
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1400
+#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:1359
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1412
 msgid "Error while synchronizing tunnels"
 msgstr ""
 
-#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:1309
+#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:1363
 #, python-format
 msgid ""
 "Agent ovsdb_monitor_loop - iteration:%(iter_num)d - starting polling. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:1322
+#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:1376
 #, python-format
 msgid ""
 "Agent ovsdb_monitor_loop - iteration:%(iter_num)d - port information "
 "retrieved. Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:1332
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1426
+#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:1386
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1438
 #, python-format
 msgid "Starting to process devices in:%s"
 msgstr ""
 
-#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:1336
+#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:1390
 #, python-format
 msgid ""
 "Agent ovsdb_monitor_loop - iteration:%(iter_num)d - ports processed. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:1351
+#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:1405
 #, python-format
 msgid ""
 "Agent ovsdb_monitor_loop - iteration:%(iter_num)d - ancillary port info "
 "retrieved. Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:1361
+#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:1415
 #, python-format
 msgid ""
 "Agent ovsdb_monitor_loop - iteration:%(iter_num)d - ancillary ports "
 "processed. Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:1376
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1469
+#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:1430
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1481
 msgid "Error while processing VIF ports"
 msgstr ""
 
-#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:1383
+#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:1437
 #, python-format
 msgid ""
 "Agent ovsdb_monitor_loop - iteration:%(iter_num)d completed. Processed "
 "ports statistics:%(port_stats)s. Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:1419
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1513
+#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:1473
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1525
 #, python-format
 msgid "Parsing bridge_mappings failed: %s."
 msgstr ""
 
-#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:1442
+#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:1495
 #, python-format
 msgid "Invalid tunnel type specificed: %s"
 msgstr ""
 
-#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:1445
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1540
+#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:1498
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1553
 msgid "Tunneling cannot be enabled without a valid local_ip."
 msgstr ""
 
@@ -11103,65 +11193,103 @@ msgstr ""
 msgid "Unable to generate a new tunnel id"
 msgstr ""
 
-#: neutron/plugins/openvswitch/ovs_neutron_plugin.py:307
+#: neutron/plugins/openvswitch/ovs_neutron_plugin.py:308
 #, python-format
 msgid "Invalid tenant_network_type: %s. Server terminated!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/ovs_neutron_plugin.py:324
+#: neutron/plugins/openvswitch/ovs_neutron_plugin.py:325
 #, python-format
 msgid "Tunneling disabled but tenant_network_type is '%s'. Server terminated!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/ovs_neutron_plugin.py:370
+#: neutron/plugins/openvswitch/ovs_neutron_plugin.py:371
 #, python-format
 msgid "Invalid tunnel ID range: '%(range)s' - %(e)s. Server terminated!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/ovs_neutron_plugin.py:374
+#: neutron/plugins/openvswitch/ovs_neutron_plugin.py:375
 #, python-format
 msgid "Tunnel ID ranges: %s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/ovs_neutron_plugin.py:429
+#: neutron/plugins/openvswitch/ovs_neutron_plugin.py:430
 #, python-format
 msgid "%s networks are not enabled"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:57
+#: neutron/plugins/openvswitch/agent/ovs_dvr_neutron_agent.py:158
+msgid "DVR: Failed to obtain local DVR Mac address"
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_dvr_neutron_agent.py:291
+#, python-format
+msgid "DVR: Duplicate DVR router interface detected for subnet %s"
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_dvr_neutron_agent.py:299
+#, python-format
+msgid "DVR: Unable to retrieve subnet information for subnet_id %s"
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_dvr_neutron_agent.py:458
+#, python-format
+msgid "Centralized-SNAT port %s already seen on "
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_dvr_neutron_agent.py:460
+#, python-format
+msgid "a different subnet %s"
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:59
 #, python-format
 msgid ""
 "Unable to retrieve port details for devices: %(devices)s because of "
 "error: %(error)s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:238
-msgid "OVS version can not support ARP responder."
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:314
+#, python-format
+msgid "port_update message processed for port %s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:302
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:317
+msgid "tunnel_update received"
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:326
+msgid "No tunnel_type specified, cannot create tunnels"
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:329
 #, python-format
-msgid "port_update message processed for port %s"
+msgid "tunnel_type %s not supported by agent"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:503
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:477
 #, python-format
 msgid "Action %s not supported"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:773
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:694
+#, python-format
+msgid "port_unbound(): net_uuid %s not in local_vlan_map"
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:767
 #, python-format
 msgid "Adding %s to list of bridges."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:888
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:882
 #, python-format
 msgid ""
 "Creating an interface named %(name)s exceeds the %(limit)d character "
 "limitation. It was shortened to %(new_name)s to fit."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1247
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1255
 #, python-format
 msgid ""
 "process_network_ports - iteration:%(iter_num)d "
@@ -11170,75 +11298,75 @@ msgid ""
 "%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1263
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1271
 #, python-format
 msgid ""
 "process_network_ports - iteration:%d - failure while retrieving port "
 "details from server"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1270
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1278
 #, python-format
 msgid ""
 "process_network_ports - iteration:%(iter_num)d -treat_devices_removed "
 "completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1292
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1300
 #, python-format
 msgid ""
 "process_ancillary_network_ports - iteration:%d - failure while retrieving"
 " port details from server"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1379
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1386
 #, python-format
 msgid "Agent rpc_loop - iteration:%d started"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1404
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1416
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - starting polling. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1416
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1428
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - port information retrieved. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1431
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1443
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d -ports processed. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1446
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1458
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d -ancillary port info retrieved. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1455
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1467
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - ancillary ports processed. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1476
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1488
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d completed. Processed ports "
 "statistics: %(port_stats)s. Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1537
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1550
 #, python-format
 msgid "Invalid tunnel type specified: %s"
 msgstr ""
@@ -11501,6 +11629,128 @@ msgstr ""
 msgid "Transaction retry exhausted (%d). Abandoned tunnel key allocation."
 msgstr ""
 
+#: neutron/plugins/sriovnicagent/eswitch_manager.py:46
+#, python-format
+msgid "Failed to get devices for %s"
+msgstr ""
+
+#: neutron/plugins/sriovnicagent/eswitch_manager.py:48
+msgid "Device not found"
+msgstr ""
+
+#: neutron/plugins/sriovnicagent/eswitch_manager.py:62
+msgid "Device has no virtual functions"
+msgstr ""
+
+#: neutron/plugins/sriovnicagent/eswitch_manager.py:141
+#: neutron/plugins/sriovnicagent/eswitch_manager.py:154
+#, python-format
+msgid "Cannot find vf index for pci slot %s"
+msgstr ""
+
+#: neutron/plugins/sriovnicagent/eswitch_manager.py:279
+#, python-format
+msgid "device pci mismatch: %(device_mac)s - %(pci_slot)s"
+msgstr ""
+
+#: neutron/plugins/sriovnicagent/pci_lib.py:58
+#: neutron/plugins/sriovnicagent/pci_lib.py:81
+#: neutron/plugins/sriovnicagent/pci_lib.py:108
+msgid "Failed executing ip command"
+msgstr ""
+
+#: neutron/plugins/sriovnicagent/pci_lib.py:129
+#, python-format
+msgid "Cannot find vfs %(vfs)s in device %(dev_name)s"
+msgstr ""
+
+#: neutron/plugins/sriovnicagent/pci_lib.py:145
+#, python-format
+msgid "failed to parse vf link show line %(line)s: for %(device)s"
+msgstr ""
+
+#: neutron/plugins/sriovnicagent/sriov_nic_agent.py:181
+#, python-format
+msgid "Failed to set device %s state"
+msgstr ""
+
+#: neutron/plugins/sriovnicagent/sriov_nic_agent.py:195
+#, python-format
+msgid "No device with MAC %s defined on agent."
+msgstr ""
+
+#: neutron/plugins/sriovnicagent/sriov_nic_agent.py:220
+#, python-format
+msgid "Device with MAC %s not defined on plugin"
+msgstr ""
+
+#: neutron/plugins/sriovnicagent/sriov_nic_agent.py:247
+msgid "SRIOV NIC Agent RPC Daemon Started!"
+msgstr ""
+
+#: neutron/plugins/sriovnicagent/sriov_nic_agent.py:317
+#, python-format
+msgid "Device name %(dev_name)s is missing from physical_device_mappings"
+msgstr ""
+
+#: neutron/plugins/sriovnicagent/sriov_nic_agent.py:333
+#, python-format
+msgid "Failed on Agent configuration parse : %s. Agent terminated!"
+msgstr ""
+
+#: neutron/plugins/sriovnicagent/sriov_nic_agent.py:336
+#, python-format
+msgid "Physical Devices mappings: %s"
+msgstr ""
+
+#: neutron/plugins/sriovnicagent/sriov_nic_agent.py:337
+#, python-format
+msgid "Exclude Devices: %s"
+msgstr ""
+
+#: neutron/plugins/sriovnicagent/sriov_nic_agent.py:347
+msgid "Agent Initialization Failed"
+msgstr ""
+
+#: neutron/plugins/sriovnicagent/common/config.py:41
+#, python-format
+msgid "Device %(dev_name)s in mapping: %(mapping)s not unique"
+msgstr ""
+
+#: neutron/plugins/sriovnicagent/common/config.py:65
+msgid ""
+"List of <physical_network>:<network_device> mapping physical network "
+"names to the agent's node-specific physical network device of SR-IOV "
+"physical function to be used for VLAN networks. All physical networks "
+"listed in network_vlan_ranges on the server should have mappings to "
+"appropriate interfaces on each agent"
+msgstr ""
+
+#: neutron/plugins/sriovnicagent/common/config.py:74
+msgid ""
+"List of <network_device>:<excluded_devices> mapping network_device to the"
+" agent's node-specific list of virtual functions that should not be used "
+"for virtual networking. excluded_devices is a semicolon separated list of"
+" virtual functions (BDF format).to exclude from network_device. The "
+"network_device in the mapping should appear in the "
+"physical_device_mappings list."
+msgstr ""
+
+#: neutron/plugins/sriovnicagent/common/exceptions.py:24
+#, python-format
+msgid "Invalid Device %(dev_name)s: %(reason)s"
+msgstr ""
+
+#: neutron/plugins/sriovnicagent/common/exceptions.py:28
+#, python-format
+msgid "ip command failed on device %(dev_name)s: %(reason)s"
+msgstr ""
+
+#: neutron/plugins/sriovnicagent/common/exceptions.py:32
+#, python-format
+msgid "Invalid pci slot %(pci_slot)s"
+msgstr ""
+
 #: neutron/plugins/vmware/check_nsx_config.py:45
 #: neutron/plugins/vmware/check_nsx_config.py:80
 #, python-format
@@ -12965,7 +13215,6 @@ msgid ""
 msgstr ""
 
 #: neutron/plugins/vmware/plugins/base.py:535
-#: neutron/plugins/vmware/plugins/base.py:1024
 #, python-format
 msgid ""
 "Ignoring exception as this means the peer for port '%s' has already been "
@@ -13006,13 +13255,13 @@ msgid ""
 msgstr ""
 
 #: neutron/plugins/vmware/plugins/base.py:671
-#: neutron/plugins/vmware/plugins/base.py:1769
+#: neutron/plugins/vmware/plugins/base.py:1737
 #, python-format
 msgid "Logical router resource %s not found on NSX platform"
 msgstr ""
 
 #: neutron/plugins/vmware/plugins/base.py:675
-#: neutron/plugins/vmware/plugins/base.py:1773
+#: neutron/plugins/vmware/plugins/base.py:1741
 msgid "Unable to update logical routeron NSX Platform"
 msgstr ""
 
@@ -13030,284 +13279,271 @@ msgid ""
 "%(network_id)s. The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/vmware/plugins/base.py:761
+#: neutron/plugins/vmware/plugins/base.py:763
 #, python-format
 msgid "%s required"
 msgstr ""
 
-#: neutron/plugins/vmware/plugins/base.py:766
+#: neutron/plugins/vmware/plugins/base.py:768
 msgid "Segmentation ID cannot be specified with flat network type"
 msgstr ""
 
-#: neutron/plugins/vmware/plugins/base.py:770
+#: neutron/plugins/vmware/plugins/base.py:772
 msgid "Segmentation ID must be specified with vlan network type"
 msgstr ""
 
-#: neutron/plugins/vmware/plugins/base.py:774
-#: neutron/plugins/vmware/plugins/base.py:790
+#: neutron/plugins/vmware/plugins/base.py:776
+#: neutron/plugins/vmware/plugins/base.py:792
 #, python-format
 msgid "%(segmentation_id)s out of range (%(min_id)s through %(max_id)s)"
 msgstr ""
 
-#: neutron/plugins/vmware/plugins/base.py:796
+#: neutron/plugins/vmware/plugins/base.py:798
 #, python-format
 msgid "%(net_type_param)s %(net_type_value)s not supported"
 msgstr ""
 
-#: neutron/plugins/vmware/plugins/base.py:841
+#: neutron/plugins/vmware/plugins/base.py:843
 #, python-format
 msgid "No switch has available ports (%d checked)"
 msgstr ""
 
-#: neutron/plugins/vmware/plugins/base.py:875
+#: neutron/plugins/vmware/plugins/base.py:877
 #, python-format
 msgid "Maximum number of logical ports reached for logical network %s"
 msgstr ""
 
-#: neutron/plugins/vmware/plugins/base.py:921
+#: neutron/plugins/vmware/plugins/base.py:923
 #, python-format
 msgid ""
 "Network with admin_state_up=False are not yet supported by this plugin. "
 "Ignoring setting for network %s"
 msgstr ""
 
-#: neutron/plugins/vmware/plugins/base.py:1013
+#: neutron/plugins/vmware/plugins/base.py:1001
 #, python-format
-msgid ""
-"A nsx lport identifier was not found for neutron port '%s'. Unable to "
-"remove the peer router port for this switch port"
-msgstr ""
-
-#: neutron/plugins/vmware/plugins/base.py:1032
-#, python-format
-msgid "delete_network completed for tenant: %s"
+msgid "The following logical switches were not found on the NSX backend:%s"
 msgstr ""
 
-#: neutron/plugins/vmware/plugins/base.py:1035
-#: neutron/plugins/vmware/plugins/service.py:541
-#, python-format
-msgid "Did not found lswitch %s in NSX"
-msgstr ""
-
-#: neutron/plugins/vmware/plugins/base.py:1070
+#: neutron/plugins/vmware/plugins/base.py:1038
 msgid "admin_state_up=False networks are not supported."
 msgstr ""
 
-#: neutron/plugins/vmware/plugins/base.py:1090
+#: neutron/plugins/vmware/plugins/base.py:1058
 #, python-format
 msgid "Unable to find NSX mappings for neutron network:%s"
 msgstr ""
 
-#: neutron/plugins/vmware/plugins/base.py:1097
+#: neutron/plugins/vmware/plugins/base.py:1065
 #, python-format
 msgid ""
 "Logical switch update on NSX backend failed. Neutron network "
 "id:%(net_id)s; NSX lswitch id:%(lswitch_id)s;Error:%(error)s"
 msgstr ""
 
-#: neutron/plugins/vmware/plugins/base.py:1168
+#: neutron/plugins/vmware/plugins/base.py:1136
 #, python-format
 msgid "port created on NSX backend for tenant %(tenant_id)s: (%(id)s)"
 msgstr ""
 
-#: neutron/plugins/vmware/plugins/base.py:1171
+#: neutron/plugins/vmware/plugins/base.py:1139
 #, python-format
 msgid "Logical switch for network %s was not found in NSX."
 msgstr ""
 
-#: neutron/plugins/vmware/plugins/base.py:1182
+#: neutron/plugins/vmware/plugins/base.py:1150
 msgid "Unable to create port or set port attachment in NSX."
 msgstr ""
 
-#: neutron/plugins/vmware/plugins/base.py:1270
+#: neutron/plugins/vmware/plugins/base.py:1238
 #, python-format
 msgid "Updating port: %s"
 msgstr ""
 
-#: neutron/plugins/vmware/plugins/base.py:1305
+#: neutron/plugins/vmware/plugins/base.py:1273
 #, python-format
 msgid "Unable to update port id: %s."
 msgstr ""
 
-#: neutron/plugins/vmware/plugins/base.py:1388
+#: neutron/plugins/vmware/plugins/base.py:1356
 msgid ""
 "Cannot create a distributed router with the NSX platform currently in "
 "execution. Please, try without specifying the 'distributed' attribute."
 msgstr ""
 
-#: neutron/plugins/vmware/plugins/base.py:1394
+#: neutron/plugins/vmware/plugins/base.py:1362
 msgid "Unable to create logical router on NSX Platform"
 msgstr ""
 
-#: neutron/plugins/vmware/plugins/base.py:1405
+#: neutron/plugins/vmware/plugins/base.py:1373
 #, python-format
 msgid ""
 "Unable to create L3GW port on logical router %(router_uuid)s. Verify "
 "Default Layer-3 Gateway service %(def_l3_gw_svc)s id is correct"
 msgstr ""
 
-#: neutron/plugins/vmware/plugins/base.py:1415
+#: neutron/plugins/vmware/plugins/base.py:1383
 #, python-format
 msgid "Unable to create router %s on NSX backend"
 msgstr ""
 
-#: neutron/plugins/vmware/plugins/base.py:1444
-#: neutron/plugins/vmware/plugins/base.py:1529
+#: neutron/plugins/vmware/plugins/base.py:1412
+#: neutron/plugins/vmware/plugins/base.py:1497
 #: neutron/plugins/vmware/plugins/service.py:201
 #: neutron/plugins/vmware/plugins/service.py:1240
 #, python-format
 msgid "Network '%s' is not a valid external network"
 msgstr ""
 
-#: neutron/plugins/vmware/plugins/base.py:1493
+#: neutron/plugins/vmware/plugins/base.py:1461
 #, python-format
 msgid "Failed to set gateway info for router being created:%s - removing router"
 msgstr ""
 
-#: neutron/plugins/vmware/plugins/base.py:1496
+#: neutron/plugins/vmware/plugins/base.py:1464
 #, python-format
 msgid ""
 "Create router failed while setting external gateway. Router:%s has been "
 "removed from DB and backend"
 msgstr ""
 
-#: neutron/plugins/vmware/plugins/base.py:1538
+#: neutron/plugins/vmware/plugins/base.py:1506
 msgid ""
 "'routes' cannot contain route '0.0.0.0/0', this must be updated through "
 "the default gateway attribute"
 msgstr ""
 
-#: neutron/plugins/vmware/plugins/base.py:1554
+#: neutron/plugins/vmware/plugins/base.py:1522
 #, python-format
 msgid "Logical router %s not found on NSX Platform"
 msgstr ""
 
-#: neutron/plugins/vmware/plugins/base.py:1558
+#: neutron/plugins/vmware/plugins/base.py:1526
 msgid "Unable to update logical router on NSX Platform"
 msgstr ""
 
-#: neutron/plugins/vmware/plugins/base.py:1560
+#: neutron/plugins/vmware/plugins/base.py:1528
 msgid ""
 "Request cannot contain 'routes' with the NSX platform currently in "
 "execution. Please, try without specifying the static routes."
 msgstr ""
 
-#: neutron/plugins/vmware/plugins/base.py:1617
+#: neutron/plugins/vmware/plugins/base.py:1585
 #, python-format
 msgid "Logical router '%s' not found on NSX Platform"
 msgstr ""
 
-#: neutron/plugins/vmware/plugins/base.py:1621
+#: neutron/plugins/vmware/plugins/base.py:1589
 #, python-format
 msgid "Unable to delete logical router '%s' on NSX Platform"
 msgstr ""
 
-#: neutron/plugins/vmware/plugins/base.py:1631
+#: neutron/plugins/vmware/plugins/base.py:1599
 #, python-format
 msgid ""
 "Unable to remove NSX mapping for Neutron router %(router_id)s because of "
 "the following exception:%(d_exc)s"
 msgstr ""
 
-#: neutron/plugins/vmware/plugins/base.py:1706
+#: neutron/plugins/vmware/plugins/base.py:1674
 #, python-format
 msgid ""
 "Add_router_interface completed for subnet:%(subnet_id)s and "
 "router:%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/vmware/plugins/base.py:1805
+#: neutron/plugins/vmware/plugins/base.py:1773
 #, python-format
 msgid ""
 "An error occurred while removing NAT rules on the NSX platform for "
 "floating ip:%s"
 msgstr ""
 
-#: neutron/plugins/vmware/plugins/base.py:1810
+#: neutron/plugins/vmware/plugins/base.py:1778
 msgid "An incorrect number of matching NAT rules was found on the NSX platform"
 msgstr ""
 
-#: neutron/plugins/vmware/plugins/base.py:1950
+#: neutron/plugins/vmware/plugins/base.py:1918
 #, python-format
 msgid ""
 "An error occurred while creating NAT rules on the NSX platform for "
 "floating ip:%(floating_ip)s mapped to internal ip:%(internal_ip)s"
 msgstr ""
 
-#: neutron/plugins/vmware/plugins/base.py:1956
+#: neutron/plugins/vmware/plugins/base.py:1924
 msgid "Failed to update NAT rules for floatingip update"
 msgstr ""
 
-#: neutron/plugins/vmware/plugins/base.py:1995
+#: neutron/plugins/vmware/plugins/base.py:1963
 #, python-format
 msgid "The port '%s' is not associated with floating IPs"
 msgstr ""
 
-#: neutron/plugins/vmware/plugins/base.py:1998
+#: neutron/plugins/vmware/plugins/base.py:1966
 #, python-format
 msgid "Nat rules not found in nsx for port: %s"
 msgstr ""
 
-#: neutron/plugins/vmware/plugins/base.py:2034
+#: neutron/plugins/vmware/plugins/base.py:2006
 #, python-format
 msgid "Unable to create l2_gw_service for: %s"
 msgstr ""
 
-#: neutron/plugins/vmware/plugins/base.py:2057
+#: neutron/plugins/vmware/plugins/base.py:2029
 msgid ""
 "Unable to remove gateway service from NSX plaform - the resource was not "
 "found"
 msgstr ""
 
-#: neutron/plugins/vmware/plugins/base.py:2086
+#: neutron/plugins/vmware/plugins/base.py:2058
 #, python-format
 msgid "Unable to update name on NSX backend for network gateway: %s"
 msgstr ""
 
-#: neutron/plugins/vmware/plugins/base.py:2115
+#: neutron/plugins/vmware/plugins/base.py:2087
 #, python-format
 msgid ""
 "Rolling back database changes for gateway device %s because of an error "
 "in the NSX backend"
 msgstr ""
 
-#: neutron/plugins/vmware/plugins/base.py:2160
-#: neutron/plugins/vmware/plugins/base.py:2198
+#: neutron/plugins/vmware/plugins/base.py:2132
+#: neutron/plugins/vmware/plugins/base.py:2170
 #, python-format
 msgid ""
 "Neutron gateway device: %(neutron_id)s; NSX transport node identifier: "
 "%(nsx_id)s; Operational status: %(status)s."
 msgstr ""
 
-#: neutron/plugins/vmware/plugins/base.py:2295
+#: neutron/plugins/vmware/plugins/base.py:2267
 #, python-format
 msgid ""
 "Removal of gateway device: %(neutron_id)s failed on NSX backend (NSX "
 "id:%(nsx_id)s) because the NSX resource was not found"
 msgstr ""
 
-#: neutron/plugins/vmware/plugins/base.py:2302
+#: neutron/plugins/vmware/plugins/base.py:2274
 #, python-format
 msgid ""
 "Removal of gateway device: %(neutron_id)s failed on NSX backend (NSX "
 "id:%(nsx_id)s). Neutron and NSX states have diverged."
 msgstr ""
 
-#: neutron/plugins/vmware/plugins/base.py:2350
+#: neutron/plugins/vmware/plugins/base.py:2322
 #, python-format
 msgid ""
 "Error while updating security profile %(uuid)s with name %(name)s: "
 "%(error)s."
 msgstr ""
 
-#: neutron/plugins/vmware/plugins/base.py:2382
+#: neutron/plugins/vmware/plugins/base.py:2354
 #, python-format
 msgid ""
 "The NSX security profile %(sec_profile_id)s, associated with the Neutron "
 "security group %(sec_group_id)s was not found on the backend"
 msgstr ""
 
-#: neutron/plugins/vmware/plugins/base.py:2390
+#: neutron/plugins/vmware/plugins/base.py:2362
 #, python-format
 msgid ""
 "An exception occurred while removing the NSX security profile "
@@ -13315,12 +13551,12 @@ msgid ""
 "%(sec_group_id)s"
 msgstr ""
 
-#: neutron/plugins/vmware/plugins/base.py:2397
+#: neutron/plugins/vmware/plugins/base.py:2369
 #, python-format
 msgid "Unable to remove security group %s from backend"
 msgstr ""
 
-#: neutron/plugins/vmware/plugins/base.py:2410
+#: neutron/plugins/vmware/plugins/base.py:2382
 #, python-format
 msgid "Port values not valid for protocol: %s"
 msgstr ""
@@ -13363,6 +13599,11 @@ msgstr ""
 msgid "Unable to create advance service router for %s"
 msgstr ""
 
+#: neutron/plugins/vmware/plugins/service.py:541
+#, python-format
+msgid "Did not found lswitch %s in NSX"
+msgstr ""
+
 #: neutron/plugins/vmware/plugins/service.py:887
 #, python-format
 msgid "Failed to create firewall on vShield Edge bound on router %s"
@@ -14121,45 +14362,36 @@ msgstr ""
 msgid "DHCP agent %s is not active"
 msgstr ""
 
-#: neutron/scheduler/l3_agent_scheduler.py:63
+#: neutron/scheduler/l3_agent_scheduler.py:74
 #, python-format
 msgid "No enabled L3 agent on host %s"
 msgstr ""
 
-#: neutron/scheduler/l3_agent_scheduler.py:68
+#: neutron/scheduler/l3_agent_scheduler.py:79
 #, python-format
 msgid "L3 agent %s is not active"
 msgstr ""
 
-#: neutron/scheduler/l3_agent_scheduler.py:76
-#: neutron/scheduler/l3_agent_scheduler.py:127
+#: neutron/scheduler/l3_agent_scheduler.py:89
+#: neutron/scheduler/l3_agent_scheduler.py:149
 #, python-format
 msgid "Router %(router_id)s has already been hosted by L3 agent %(agent_id)s"
 msgstr ""
 
-#: neutron/scheduler/l3_agent_scheduler.py:95
+#: neutron/scheduler/l3_agent_scheduler.py:108
 msgid "No non-hosted routers"
 msgstr ""
 
-#: neutron/scheduler/l3_agent_scheduler.py:109
+#: neutron/scheduler/l3_agent_scheduler.py:126
 #, python-format
 msgid "No routers compatible with L3 agent configuration on host %s"
 msgstr ""
 
-#: neutron/scheduler/l3_agent_scheduler.py:135
-msgid "No active L3 agents"
-msgstr ""
-
-#: neutron/scheduler/l3_agent_scheduler.py:140
+#: neutron/scheduler/l3_agent_scheduler.py:170
 #, python-format
 msgid "No L3 agents can host the router %s"
 msgstr ""
 
-#: neutron/scheduler/l3_agent_scheduler.py:153
-#, python-format
-msgid "Router %(router_id)s is scheduled to L3 agent %(agent_id)s"
-msgstr ""
-
 #: neutron/server/__init__.py:42
 msgid ""
 "ERROR: Unable to find configuration file via the default search paths "
@@ -14805,33 +15037,33 @@ msgstr ""
 msgid "Location to store config and state files"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:52
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:53
 msgid "The user group"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:58
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:59
 msgid ""
 "When delete and re-add the same vip, send this many gratuitous ARPs to "
 "flush the ARP cache in the Router. Set it below or equal to 0 to disable "
 "this feature."
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:75
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:76
 #, python-format
 msgid "Error importing interface driver: %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:171
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:172
 #, python-format
 msgid "Stats socket not found for pool %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:213
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:214
 #, python-format
 msgid "Error while connecting to stats socket: %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:392
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:393
 #, python-format
 msgid "Unable to kill haproxy process: %s"
 msgstr ""
@@ -15728,18 +15960,13 @@ msgstr ""
 msgid "Removed mapping for connection %s"
 msgstr ""
 
-#: neutron/services/vpn/service_drivers/cisco_ipsec.py:39
+#: neutron/services/vpn/service_drivers/cisco_validator.py:34
 #, python-format
 msgid ""
 "Cisco CSR does not support %(resource)s attribute %(key)s with value "
 "'%(value)s'"
 msgstr ""
 
-#: neutron/services/vpn/service_drivers/cisco_ipsec.py:160
-#, python-format
-msgid "IPSec connection %s validated for Cisco CSR"
-msgstr ""
-
 #: neutron/tests/unit/test_api_v2_resource.py:174
 #: neutron/tests/unit/test_api_v2_resource.py:244
 msgid "Unmapped error"
@@ -15767,10 +15994,10 @@ msgstr ""
 msgid "No host cert for %(server)s in cert %(cert)s"
 msgstr ""
 
-#: neutron/tests/unit/db/loadbalancer/test_db_loadbalancer.py:217
-#: neutron/tests/unit/db/loadbalancer/test_db_loadbalancer.py:239
-#: neutron/tests/unit/db/loadbalancer/test_db_loadbalancer.py:258
-#: neutron/tests/unit/db/loadbalancer/test_db_loadbalancer.py:281
+#: neutron/tests/unit/db/loadbalancer/test_db_loadbalancer.py:219
+#: neutron/tests/unit/db/loadbalancer/test_db_loadbalancer.py:241
+#: neutron/tests/unit/db/loadbalancer/test_db_loadbalancer.py:260
+#: neutron/tests/unit/db/loadbalancer/test_db_loadbalancer.py:283
 #, python-format
 msgid "Unexpected error code: %s"
 msgstr ""
index 5578bb2e057a26598686a9df49f472c4a129a01d..ea072c21df982936f8428569725d19ed868acb59 100644 (file)
@@ -6,9 +6,9 @@
 #, fuzzy
 msgid ""
 msgstr ""
-"Project-Id-Version: neutron 2014.2.dev390.g1b621fc\n"
+"Project-Id-Version: neutron 2014.2.dev95.gf32c0eb\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2014-07-22 06:06+0000\n"
+"POT-Creation-Date: 2014-08-01 06:06+0000\n"
 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 "Language-Team: LANGUAGE <LL@li.org>\n"
@@ -408,7 +408,7 @@ msgstr ""
 msgid "Number of threads to use during sync process."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:65 neutron/agent/l3_agent.py:335
+#: neutron/agent/dhcp_agent.py:65 neutron/agent/l3_agent.py:391
 #: neutron/agent/metadata/namespace_proxy.py:165
 msgid "Location of Metadata Proxy UNIX domain socket"
 msgstr ""
@@ -488,22 +488,23 @@ msgid ""
 "port %(port_id)s, for router %(router_id)s will be considered"
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:580 neutron/agent/l3_agent.py:1163
-#: neutron/agent/metadata/agent.py:362
+#: neutron/agent/dhcp_agent.py:580 neutron/agent/l3_agent.py:1751
+#: neutron/agent/metadata/agent.py:363
 #: neutron/services/metering/agents/metering_agent.py:272
 msgid ""
 "Neutron server does not support state report. State report for this agent"
 " will be disabled."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:586 neutron/agent/l3_agent.py:1168
-#: neutron/agent/metadata/agent.py:367
+#: neutron/agent/dhcp_agent.py:586 neutron/agent/l3_agent.py:1756
+#: neutron/agent/metadata/agent.py:368
 #: neutron/plugins/ibm/agent/sdnve_neutron_agent.py:111
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:794
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:248
 #: neutron/plugins/nec/agent/nec_neutron_agent.py:182
-#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:266
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:250
+#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:268
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:261
+#: neutron/plugins/sriovnicagent/sriov_nic_agent.py:131
 #: neutron/services/loadbalancer/agent/agent_manager.py:121
 #: neutron/services/metering/agents/metering_agent.py:277
 msgid "Failed reporting state!"
@@ -514,191 +515,223 @@ msgstr ""
 msgid "Agent updated: %(payload)s"
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:595 neutron/agent/l3_agent.py:1173
+#: neutron/agent/dhcp_agent.py:595 neutron/agent/l3_agent.py:1761
 #: neutron/services/metering/agents/metering_agent.py:280
 #, python-format
 msgid "agent_updated by server side %s!"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:309 neutron/debug/debug_agent.py:41
+#: neutron/agent/l3_agent.py:352
+msgid ""
+"The working mode for the agent. Allowed modes are: 'legacy' - this "
+"preserves the existing behavior where the L3 agent is deployed on a "
+"centralized networking node to provide L3 services like DNAT, and SNAT. "
+"Use this mode if you do not want to adopt DVR. 'dvr' - this mode enables "
+"DVR functionality and must be used for an L3 agent that runs on a compute"
+" host. 'dvr_snat' - this enables centralized SNAT support in conjunction "
+"with DVR.  This mode must be used for an L3 agent running on a "
+"centralized node (or in single-host deployments, e.g. devstack)"
+msgstr ""
+
+#: neutron/agent/l3_agent.py:365 neutron/debug/debug_agent.py:41
 msgid "Name of bridge used for external network traffic."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:313
+#: neutron/agent/l3_agent.py:369
 msgid "TCP Port used by Neutron metadata namespace proxy."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:317
+#: neutron/agent/l3_agent.py:373
 msgid ""
 "Send this many gratuitous ARPs for HA setup, if less than or equal to 0, "
 "the feature is disabled"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:320
+#: neutron/agent/l3_agent.py:376
 msgid ""
 "If namespaces is disabled, the l3 agent can only configure a router that "
 "has the matching router ID."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:325
+#: neutron/agent/l3_agent.py:381
 msgid "Agent should implement routers with no gateway"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:327
+#: neutron/agent/l3_agent.py:383
 msgid "UUID of external network for routers implemented by the agents."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:330
+#: neutron/agent/l3_agent.py:386
 msgid "Allow running metadata proxy."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:332
+#: neutron/agent/l3_agent.py:388
 msgid "Delete namespace after removing a router."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:355
+#: neutron/agent/l3_agent.py:411
 #, python-format
 msgid "Error importing interface driver '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:381 neutron/agent/linux/dhcp.py:740
+#: neutron/agent/l3_agent.py:443 neutron/agent/linux/dhcp.py:740
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:89
 msgid "An interface driver must be specified"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:386
+#: neutron/agent/l3_agent.py:448
 msgid "Router id is required if not using namespaces."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:403
+#: neutron/agent/l3_agent.py:465
 msgid "RuntimeError in obtaining router list for namespace cleanup."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:435
+#: neutron/agent/l3_agent.py:494
 #, python-format
 msgid "Failed to destroy stale router namespace %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:456 neutron/agent/linux/dhcp.py:225
+#: neutron/agent/l3_agent.py:512 neutron/agent/linux/dhcp.py:225
 #, python-format
 msgid "Failed trying to delete namespace: %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:486
+#: neutron/agent/l3_agent.py:596
 msgid ""
 "The 'gateway_external_network_id' option must be configured for this "
 "agent as Neutron has more than one external network."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:510
+#: neutron/agent/l3_agent.py:620
 #, python-format
 msgid "Info for router %s were not found. Skipping router removal"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:559
+#: neutron/agent/l3_agent.py:687
 #: neutron/services/firewall/agents/varmour/varmour_router.py:102
 #, python-format
 msgid "Router port %s has no IP address"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:561 neutron/db/l3_db.py:997
+#: neutron/agent/l3_agent.py:689 neutron/db/l3_db.py:1002
 #: neutron/services/firewall/agents/varmour/varmour_router.py:105
 #, python-format
 msgid "Ignoring multiple IPs on router port %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:617
+#: neutron/agent/l3_agent.py:749
 #, python-format
 msgid "Deleting stale internal router device: %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:646
+#: neutron/agent/l3_agent.py:778
 #, python-format
 msgid "Deleting stale external router device: %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:765
+#: neutron/agent/l3_agent.py:949
 #, python-format
 msgid "Unable to configure IP address for floating IP: %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:795
+#: neutron/agent/l3_agent.py:993
 #, python-format
 msgid "Failed sending gratuitous ARP: %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:904
+#: neutron/agent/l3_agent.py:1055
+msgid "DVR: no map match_port found!"
+msgstr ""
+
+#: neutron/agent/l3_agent.py:1235
+msgid "DVR: error adding redirection logic"
+msgstr ""
+
+#: neutron/agent/l3_agent.py:1247
+msgid "DVR: removed snat failed"
+msgstr ""
+
+#: neutron/agent/l3_agent.py:1338
+msgid "Missing subnet/agent_gateway_port"
+msgstr ""
+
+#: neutron/agent/l3_agent.py:1450
 #, python-format
 msgid "Got router deleted notification for %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:910
+#: neutron/agent/l3_agent.py:1470
+msgid "DVR: Failed updating arp entry"
+msgstr ""
+
+#: neutron/agent/l3_agent.py:1497
 #, python-format
 msgid "Got routers updated notification :%s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:920
+#: neutron/agent/l3_agent.py:1507
 #, python-format
 msgid "Got router removed from agent :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:926
+#: neutron/agent/l3_agent.py:1513
 #, python-format
 msgid "Got router added to agent :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:933
+#: neutron/agent/l3_agent.py:1520
 #, python-format
 msgid "The external network bridge '%s' does not exist"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:985
+#: neutron/agent/l3_agent.py:1572
 #, python-format
 msgid "Failed to fetch router information for '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:1024
+#: neutron/agent/l3_agent.py:1611
 #, python-format
 msgid "Starting _sync_routers_task - fullsync:%s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:1044
+#: neutron/agent/l3_agent.py:1631
 #, python-format
 msgid "Processing :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:1052
+#: neutron/agent/l3_agent.py:1639
 msgid "_sync_routers_task successfully completed"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:1054
+#: neutron/agent/l3_agent.py:1641
 msgid "Failed synchronizing routers due to RPC error"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:1057
+#: neutron/agent/l3_agent.py:1644
 #: neutron/services/metering/agents/metering_agent.py:61
 msgid "Failed synchronizing routers"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:1080
+#: neutron/agent/l3_agent.py:1667
 msgid "L3 agent started"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:1095
+#: neutron/agent/l3_agent.py:1682
 #, python-format
 msgid "Added route entry is '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:1103
+#: neutron/agent/l3_agent.py:1690
 #, python-format
 msgid "Removed route entry is '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:1136
+#: neutron/agent/l3_agent.py:1724
 msgid "Report state task started"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:1160
+#: neutron/agent/l3_agent.py:1748
 msgid "Report state task successfully completed"
 msgstr ""
 
@@ -724,7 +757,7 @@ msgstr ""
 
 #: neutron/agent/ovs_cleanup_util.py:73
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:664
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:287
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:299
 #, python-format
 msgid "Delete %s"
 msgstr ""
@@ -1228,91 +1261,91 @@ msgstr ""
 msgid "Attempted to get traffic counters of chain %s which does not exist"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:34
+#: neutron/agent/linux/ovs_lib.py:33
 msgid "Timeout in seconds for ovs-vsctl commands"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:68 neutron/agent/linux/ovs_lib.py:168
-#: neutron/agent/linux/ovs_lib.py:315
+#: neutron/agent/linux/ovs_lib.py:67 neutron/agent/linux/ovs_lib.py:167
+#: neutron/agent/linux/ovs_lib.py:326
 #: neutron/plugins/bigswitch/agent/restproxy_agent.py:55
 #, python-format
 msgid "Unable to execute %(cmd)s. Exception: %(exception)s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:223
+#: neutron/agent/linux/ovs_lib.py:228
 msgid "defer_apply_on"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:227
+#: neutron/agent/linux/ovs_lib.py:238
 msgid "defer_apply_off"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:237
+#: neutron/agent/linux/ovs_lib.py:248
 #, python-format
 msgid "Applying following deferred flows to bridge %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:240
+#: neutron/agent/linux/ovs_lib.py:251
 #, python-format
 msgid "%(action)s: %(flow)s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:266
+#: neutron/agent/linux/ovs_lib.py:277
 msgid ""
 "Unable to create VXLAN tunnel port. Please ensure that an openvswitch "
 "version that supports VXLAN is installed."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:363
+#: neutron/agent/linux/ovs_lib.py:374
 #, python-format
 msgid "Found not yet ready openvswitch port: %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:378
+#: neutron/agent/linux/ovs_lib.py:389
 #, python-format
 msgid "Found failed openvswitch port: %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:433
+#: neutron/agent/linux/ovs_lib.py:444
 #, python-format
 msgid "Port: %(port_name)s is on %(switch)s, not on %(br_name)s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:441
+#: neutron/agent/linux/ovs_lib.py:452
 #, python-format
 msgid "ofport: %(ofport)s for VIF: %(vif)s is not a positive integer"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:451
+#: neutron/agent/linux/ovs_lib.py:462
 #, python-format
 msgid "Unable to parse interface details. Exception: %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:469
+#: neutron/agent/linux/ovs_lib.py:480
 #, python-format
 msgid "Unable to determine mac address for %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:486
+#: neutron/agent/linux/ovs_lib.py:497
 #, python-format
 msgid "Interface %s not found."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:497
+#: neutron/agent/linux/ovs_lib.py:508
 #, python-format
 msgid "Unable to retrieve bridges. Exception: %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:506
+#: neutron/agent/linux/ovs_lib.py:517
 #, python-format
 msgid "Bridge %s not found."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:522
+#: neutron/agent/linux/ovs_lib.py:533
 msgid "Cannot match priority on flow deletion or modification"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:527
+#: neutron/agent/linux/ovs_lib.py:538
 msgid "Must specify one or more actions on flow addition or modification"
 msgstr ""
 
@@ -1407,38 +1440,38 @@ msgstr ""
 msgid "An unknown error has occurred. Please try your request again."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:178
+#: neutron/agent/metadata/agent.py:179
 msgid ""
 "Either one of parameter network_id or router_id must be passed to "
 "_get_ports method."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:230
+#: neutron/agent/metadata/agent.py:231
 msgid ""
 "The remote metadata server responded with Forbidden. This response "
 "usually occurs when shared secrets do not match."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:241
+#: neutron/agent/metadata/agent.py:242
 #: neutron/agent/metadata/namespace_proxy.py:120
 msgid "Remote metadata server experienced an internal server error."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:247
+#: neutron/agent/metadata/agent.py:248
 #: neutron/agent/metadata/namespace_proxy.py:126
 #, python-format
 msgid "Unexpected response code: %s"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:307
+#: neutron/agent/metadata/agent.py:308
 msgid "Location for Metadata Proxy UNIX domain socket"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:310
+#: neutron/agent/metadata/agent.py:311
 msgid "Number of separate worker processes for metadata server"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:314
+#: neutron/agent/metadata/agent.py:315
 msgid "Number of backlog requests to configure the metadata server socket with"
 msgstr ""
 
@@ -1652,14 +1685,14 @@ msgstr ""
 msgid "Notify agent at %(topic)s.%(host)s the message %(method)s"
 msgstr ""
 
-#: neutron/api/rpc/agentnotifiers/l3_rpc_agent_api.py:74
+#: neutron/api/rpc/agentnotifiers/l3_rpc_agent_api.py:100
 #, python-format
 msgid ""
 "No plugin for L3 routing registered. Cannot notify agents with the "
 "message %s"
 msgstr ""
 
-#: neutron/api/rpc/agentnotifiers/l3_rpc_agent_api.py:92
+#: neutron/api/rpc/agentnotifiers/l3_rpc_agent_api.py:118
 #, python-format
 msgid ""
 "Fanout notify agent at %(topic)s the message %(method)s on router "
@@ -1819,7 +1852,7 @@ msgid "'%s' is not a valid input"
 msgstr ""
 
 #: neutron/api/v2/attributes.py:355
-#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:549
+#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:552
 #, python-format
 msgid "'%s' is not a valid UUID"
 msgstr ""
@@ -1921,7 +1954,7 @@ msgid "Invalid input for %(attr)s. Reason: %(reason)s."
 msgstr ""
 
 #: neutron/api/v2/base.py:642 neutron/extensions/allowedaddresspairs.py:75
-#: neutron/extensions/multiprovidernet.py:51
+#: neutron/extensions/multiprovidernet.py:45
 #, python-format
 msgid "Unrecognized attribute(s) '%s'"
 msgstr ""
@@ -1961,18 +1994,33 @@ msgid ""
 "features requiring patch ports (gre/vxlan, etc.)."
 msgstr ""
 
-#: neutron/cmd/sanity_check.py:67
+#: neutron/cmd/sanity_check.py:68
+msgid ""
+"Check for Open vSwitch ARP responder support failed. Please ensure that "
+"the version of openvswitch being used has ARP flows support."
+msgstr ""
+
+#: neutron/cmd/sanity_check.py:77
 msgid "Check for vxlan support"
 msgstr ""
 
-#: neutron/cmd/sanity_check.py:69
+#: neutron/cmd/sanity_check.py:79
 msgid "Check for patch port support"
 msgstr ""
 
-#: neutron/cmd/sanity_check.py:71
+#: neutron/cmd/sanity_check.py:81
 msgid "Check for nova notification support"
 msgstr ""
 
+#: neutron/cmd/sanity_check.py:83
+msgid "Check for ARP responder support"
+msgstr ""
+
+#: neutron/cmd/sanity/checks.py:72
+#, python-format
+msgid "Unexpected exception while checking supported feature via command: %s"
+msgstr ""
+
 #: neutron/common/config.py:37
 msgid "The host IP to bind to"
 msgstr ""
@@ -2465,13 +2513,6 @@ msgstr ""
 msgid "Bad prefix type for generate IPv6 address by EUI-64: %s"
 msgstr ""
 
-#: neutron/common/log.py:32
-#, python-format
-msgid ""
-"%(class_name)s method %(method_name)s called with arguments %(args)s "
-"%(kwargs)s"
-msgstr ""
-
 #: neutron/common/utils.py:68
 #, python-format
 msgid ""
@@ -2492,11 +2533,13 @@ msgid "Reloading cached file %s"
 msgstr ""
 
 #: neutron/common/utils.py:200
+#: neutron/plugins/sriovnicagent/common/config.py:36
 #, python-format
 msgid "Invalid mapping: '%s'"
 msgstr ""
 
 #: neutron/common/utils.py:203
+#: neutron/plugins/sriovnicagent/common/config.py:39
 #, python-format
 msgid "Missing key in mapping: '%s'"
 msgstr ""
@@ -2846,145 +2889,150 @@ msgstr ""
 msgid "Removed routes are %s"
 msgstr ""
 
-#: neutron/db/l3_agentschedulers_db.py:34
+#: neutron/db/l3_agentschedulers_db.py:33
 msgid "Driver to use for scheduling router to a default L3 agent"
 msgstr ""
 
-#: neutron/db/l3_agentschedulers_db.py:37
+#: neutron/db/l3_agentschedulers_db.py:36
 msgid "Allow auto scheduling of routers to L3 agent."
 msgstr ""
 
-#: neutron/db/l3_db.py:240
+#: neutron/db/l3_db.py:244
 #, python-format
 msgid "No eligible l3 agent associated with external network %s found"
 msgstr ""
 
-#: neutron/db/l3_db.py:261
+#: neutron/db/l3_db.py:265
 #, python-format
 msgid "No IPs available for external network %s"
 msgstr ""
 
-#: neutron/db/l3_db.py:275
+#: neutron/db/l3_db.py:279
 #, python-format
 msgid "Network %s is not an external network"
 msgstr ""
 
-#: neutron/db/l3_db.py:389
+#: neutron/db/l3_db.py:393
 #, python-format
 msgid "Router already has a port on subnet %s"
 msgstr ""
 
-#: neutron/db/l3_db.py:403
+#: neutron/db/l3_db.py:407
 #, python-format
 msgid ""
 "Cidr %(subnet_cidr)s of subnet %(subnet_id)s overlaps with cidr %(cidr)s "
 "of subnet %(sub_id)s"
 msgstr ""
 
-#: neutron/db/l3_db.py:419 neutron/db/l3_db.py:553 neutron/db/l3_dvr_db.py:187
+#: neutron/db/l3_db.py:423 neutron/db/l3_db.py:558 neutron/db/l3_dvr_db.py:189
 #: neutron/plugins/bigswitch/plugin.py:1015
 #: neutron/plugins/bigswitch/plugin.py:1024
 msgid "Either subnet_id or port_id must be specified"
 msgstr ""
 
-#: neutron/db/l3_db.py:422
+#: neutron/db/l3_db.py:426
 msgid "Cannot specify both subnet-id and port-id"
 msgstr ""
 
-#: neutron/db/l3_db.py:435
+#: neutron/db/l3_db.py:439
 msgid "Router port must have exactly one fixed IP"
 msgstr ""
 
-#: neutron/db/l3_db.py:449
+#: neutron/db/l3_db.py:453
 msgid "Subnet for router interface must have a gateway IP"
 msgstr ""
 
-#: neutron/db/l3_db.py:600 neutron/plugins/nec/nec_router.py:197
+#: neutron/db/l3_db.py:605 neutron/plugins/nec/nec_router.py:197
 #, python-format
 msgid "Cannot add floating IP to port on subnet %s which has no gateway_ip"
 msgstr ""
 
-#: neutron/db/l3_db.py:636
+#: neutron/db/l3_db.py:641
 #, python-format
 msgid ""
 "Port %(port_id)s is associated with a different tenant than Floating IP "
 "%(floatingip_id)s and therefore cannot be bound."
 msgstr ""
 
-#: neutron/db/l3_db.py:640
+#: neutron/db/l3_db.py:645
 #, python-format
 msgid ""
 "Cannot create floating IP and bind it to Port %s, since that port is "
 "owned by a different tenant."
 msgstr ""
 
-#: neutron/db/l3_db.py:652
+#: neutron/db/l3_db.py:657
 #, python-format
 msgid "Port %(id)s does not have fixed ip %(address)s"
 msgstr ""
 
-#: neutron/db/l3_db.py:659
+#: neutron/db/l3_db.py:664
 #, python-format
 msgid "Cannot add floating IP to port %s that hasno fixed IP addresses"
 msgstr ""
 
-#: neutron/db/l3_db.py:663
+#: neutron/db/l3_db.py:668
 #, python-format
 msgid ""
 "Port %s has multiple fixed IPs.  Must provide a specific IP when "
 "assigning a floating IP"
 msgstr ""
 
-#: neutron/db/l3_db.py:705 neutron/plugins/vmware/plugins/base.py:1834
+#: neutron/db/l3_db.py:710 neutron/plugins/vmware/plugins/base.py:1802
 msgid "fixed_ip_address cannot be specified without a port_id"
 msgstr ""
 
-#: neutron/db/l3_db.py:746
+#: neutron/db/l3_db.py:751
 #, python-format
 msgid "Network %s is not a valid external network"
 msgstr ""
 
-#: neutron/db/l3_db.py:883
+#: neutron/db/l3_db.py:888
 #, python-format
 msgid ""
 "Port %(port_id)s has owner %(port_owner)s, but no IP address, so it can "
 "be deleted"
 msgstr ""
 
-#: neutron/db/l3_db.py:1003
+#: neutron/db/l3_db.py:1008
 #, python-format
 msgid "Skipping port %s as no IP is configure on it"
 msgstr ""
 
-#: neutron/db/l3_dvr_db.py:39
+#: neutron/db/l3_dvr_db.py:41
 msgid ""
 "System-wide flag to determine the type of router that tenants can create."
 " Only admin can override."
 msgstr ""
 
-#: neutron/db/l3_dvr_db.py:73
+#: neutron/db/l3_dvr_db.py:75
 #, python-format
 msgid "Centralizing distributed router %s is not supported"
 msgstr ""
 
-#: neutron/db/l3_dvr_db.py:353
+#: neutron/db/l3_dvr_db.py:380
 #, python-format
 msgid "Agent Gateway port does not exist, so create one: %s"
 msgstr ""
 
-#: neutron/db/l3_dvr_db.py:368
+#: neutron/db/l3_dvr_db.py:395
 msgid "Unable to create the Agent Gateway Port"
 msgstr ""
 
-#: neutron/db/l3_dvr_db.py:394
+#: neutron/db/l3_dvr_db.py:421
 msgid "Unable to create the SNAT Interface Port"
 msgstr ""
 
-#: neutron/db/l3_dvr_db.py:418
+#: neutron/db/l3_dvr_db.py:445
 #, python-format
 msgid "SNAT interface port list does not exist, so create one: %s"
 msgstr ""
 
+#: neutron/db/l3_dvrscheduler_db.py:269
+#: neutron/scheduler/l3_agent_scheduler.py:157
+msgid "No active L3 agents"
+msgstr ""
+
 #: neutron/db/l3_rpc_base.py:50
 msgid ""
 "No plugin for L3 routing registered! Will reply to l3 agent with empty "
@@ -3003,17 +3051,17 @@ msgstr ""
 msgid "Checking router: %(id)s for host: %(host)s"
 msgstr ""
 
-#: neutron/db/l3_rpc_base.py:113
+#: neutron/db/l3_rpc_base.py:123
 #, python-format
 msgid "External network ID returned to l3 agent: %s"
 msgstr ""
 
-#: neutron/db/l3_rpc_base.py:123
+#: neutron/db/l3_rpc_base.py:133
 #, python-format
 msgid "New status for floating IP %(floatingip_id)s: %(status)s"
 msgstr ""
 
-#: neutron/db/l3_rpc_base.py:131
+#: neutron/db/l3_rpc_base.py:141
 #, python-format
 msgid "Floating IP: %s no longer present."
 msgstr ""
@@ -3363,19 +3411,19 @@ msgstr ""
 msgid "The number of allowed address pair exceeds the maximum %(quota)s."
 msgstr ""
 
-#: neutron/extensions/dhcpagentscheduler.py:119
+#: neutron/extensions/dhcpagentscheduler.py:127
 #, python-format
 msgid "Agent %(id)s is not a valid DHCP Agent or has been disabled"
 msgstr ""
 
-#: neutron/extensions/dhcpagentscheduler.py:123
+#: neutron/extensions/dhcpagentscheduler.py:131
 #, python-format
 msgid ""
 "The network %(network_id)s has been already hosted by the DHCP Agent "
 "%(agent_id)s."
 msgstr ""
 
-#: neutron/extensions/dhcpagentscheduler.py:128
+#: neutron/extensions/dhcpagentscheduler.py:136
 #, python-format
 msgid "The network %(network_id)s is not hosted by the DHCP agent %(agent_id)s."
 msgstr ""
@@ -3643,6 +3691,13 @@ msgstr ""
 msgid "The router %(router_id)s is not hosted by L3 agent %(agent_id)s."
 msgstr ""
 
+#: neutron/extensions/l3agentscheduler.py:181
+#, python-format
+msgid ""
+"Cannot host %(router_type)s router %(router_id)s on %(agent_mode)s L3 "
+"agent %(agent_id)s."
+msgstr ""
+
 #: neutron/extensions/lbaas_agentscheduler.py:116
 #, python-format
 msgid "No eligible loadbalancer agent found for pool %(pool_id)s."
@@ -3795,7 +3850,7 @@ msgid "Port does not have port security binding."
 msgstr ""
 
 #: neutron/extensions/providernet.py:54
-#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:287
+#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:290
 msgid "Plugin does not support updating provider attributes"
 msgstr ""
 
@@ -4136,7 +4191,7 @@ msgstr ""
 msgid "in dynamic looping call"
 msgstr ""
 
-#: neutron/openstack/common/periodic_task.py:39
+#: neutron/openstack/common/periodic_task.py:40
 #, python-format
 msgid "Unexpected argument for periodic task creation: %(arg)s."
 msgstr ""
@@ -4377,7 +4432,7 @@ msgstr ""
 msgid "Syntax error in server config file, aborting plugin"
 msgstr ""
 
-#: neutron/plugins/bigswitch/plugin.py:132 neutron/plugins/ml2/db.py:149
+#: neutron/plugins/bigswitch/plugin.py:132 neutron/plugins/ml2/db.py:156
 #, python-format
 msgid "get_port_and_sgs() called for port_id %s"
 msgstr ""
@@ -4749,9 +4804,10 @@ msgstr ""
 #: neutron/plugins/bigswitch/agent/restproxy_agent.py:161
 #: neutron/plugins/ibm/agent/sdnve_neutron_agent.py:226
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:1011
-#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:1392
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1485
+#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:1446
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1497
 #: neutron/plugins/ryu/agent/ryu_neutron_agent.py:278
+#: neutron/plugins/sriovnicagent/sriov_nic_agent.py:285
 #, python-format
 msgid "Loop iteration exceeded interval (%(polling_interval)s vs. %(elapsed)s)!"
 msgstr ""
@@ -4843,7 +4899,7 @@ msgstr ""
 #: neutron/plugins/hyperv/rpc_callbacks.py:47
 #: neutron/plugins/linuxbridge/lb_neutron_plugin.py:80
 #: neutron/plugins/mlnx/rpc_callbacks.py:62
-#: neutron/plugins/openvswitch/ovs_neutron_plugin.py:88
+#: neutron/plugins/openvswitch/ovs_neutron_plugin.py:89
 #, python-format
 msgid "Device %(device)s details requested from %(agent_id)s"
 msgstr ""
@@ -4858,9 +4914,9 @@ msgstr ""
 #: neutron/plugins/mlnx/rpc_callbacks.py:84
 #: neutron/plugins/mlnx/rpc_callbacks.py:113
 #: neutron/plugins/mlnx/rpc_callbacks.py:128
-#: neutron/plugins/openvswitch/ovs_neutron_plugin.py:106
-#: neutron/plugins/openvswitch/ovs_neutron_plugin.py:143
-#: neutron/plugins/openvswitch/ovs_neutron_plugin.py:166
+#: neutron/plugins/openvswitch/ovs_neutron_plugin.py:107
+#: neutron/plugins/openvswitch/ovs_neutron_plugin.py:144
+#: neutron/plugins/openvswitch/ovs_neutron_plugin.py:167
 #, python-format
 msgid "%s can not be found in database"
 msgstr ""
@@ -5336,147 +5392,147 @@ msgstr ""
 msgid "vxlan_id %s not found"
 msgstr ""
 
-#: neutron/plugins/cisco/db/n1kv_db_v2.py:770
+#: neutron/plugins/cisco/db/n1kv_db_v2.py:771
 msgid "create_network_profile()"
 msgstr ""
 
-#: neutron/plugins/cisco/db/n1kv_db_v2.py:792
+#: neutron/plugins/cisco/db/n1kv_db_v2.py:793
 msgid "delete_network_profile()"
 msgstr ""
 
-#: neutron/plugins/cisco/db/n1kv_db_v2.py:806
+#: neutron/plugins/cisco/db/n1kv_db_v2.py:807
 msgid "update_network_profile()"
 msgstr ""
 
-#: neutron/plugins/cisco/db/n1kv_db_v2.py:815
+#: neutron/plugins/cisco/db/n1kv_db_v2.py:816
 msgid "get_network_profile()"
 msgstr ""
 
-#: neutron/plugins/cisco/db/n1kv_db_v2.py:840
+#: neutron/plugins/cisco/db/n1kv_db_v2.py:841
 msgid "create_policy_profile()"
 msgstr ""
 
-#: neutron/plugins/cisco/db/n1kv_db_v2.py:851
+#: neutron/plugins/cisco/db/n1kv_db_v2.py:852
 msgid "delete_policy_profile()"
 msgstr ""
 
-#: neutron/plugins/cisco/db/n1kv_db_v2.py:860
+#: neutron/plugins/cisco/db/n1kv_db_v2.py:861
 msgid "update_policy_profile()"
 msgstr ""
 
-#: neutron/plugins/cisco/db/n1kv_db_v2.py:869
+#: neutron/plugins/cisco/db/n1kv_db_v2.py:870
 msgid "get_policy_profile()"
 msgstr ""
 
-#: neutron/plugins/cisco/db/n1kv_db_v2.py:888
+#: neutron/plugins/cisco/db/n1kv_db_v2.py:889
 msgid "Invalid profile type"
 msgstr ""
 
-#: neutron/plugins/cisco/db/n1kv_db_v2.py:905
+#: neutron/plugins/cisco/db/n1kv_db_v2.py:906
 msgid "_profile_binding_exists()"
 msgstr ""
 
-#: neutron/plugins/cisco/db/n1kv_db_v2.py:913
+#: neutron/plugins/cisco/db/n1kv_db_v2.py:914
 msgid "get_profile_binding()"
 msgstr ""
 
-#: neutron/plugins/cisco/db/n1kv_db_v2.py:923
+#: neutron/plugins/cisco/db/n1kv_db_v2.py:924
 msgid "delete_profile_binding()"
 msgstr ""
 
-#: neutron/plugins/cisco/db/n1kv_db_v2.py:930
+#: neutron/plugins/cisco/db/n1kv_db_v2.py:931
 #, python-format
 msgid ""
 "Profile-Tenant binding missing for profile ID %(profile_id)s and tenant "
 "ID %(tenant_id)s"
 msgstr ""
 
-#: neutron/plugins/cisco/db/n1kv_db_v2.py:944
+#: neutron/plugins/cisco/db/n1kv_db_v2.py:945
 msgid "_get_profile_bindings()"
 msgstr ""
 
-#: neutron/plugins/cisco/db/n1kv_db_v2.py:1094
+#: neutron/plugins/cisco/db/n1kv_db_v2.py:1095
 msgid "segment_range not required for TRUNK"
 msgstr ""
 
-#: neutron/plugins/cisco/db/n1kv_db_v2.py:1100
+#: neutron/plugins/cisco/db/n1kv_db_v2.py:1101
 msgid "multicast_ip_range not required"
 msgstr ""
 
-#: neutron/plugins/cisco/db/n1kv_db_v2.py:1227
+#: neutron/plugins/cisco/db/n1kv_db_v2.py:1228
 msgid "Invalid segment range. example range: 500-550"
 msgstr ""
 
-#: neutron/plugins/cisco/db/n1kv_db_v2.py:1240
+#: neutron/plugins/cisco/db/n1kv_db_v2.py:1241
 msgid "Invalid multicast ip address range. example range: 224.1.1.1-224.1.1.10"
 msgstr ""
 
-#: neutron/plugins/cisco/db/n1kv_db_v2.py:1247
+#: neutron/plugins/cisco/db/n1kv_db_v2.py:1248
 #, python-format
 msgid "%s is not a valid multicast ip address"
 msgstr ""
 
-#: neutron/plugins/cisco/db/n1kv_db_v2.py:1251
+#: neutron/plugins/cisco/db/n1kv_db_v2.py:1252
 #, python-format
 msgid "%s is reserved multicast ip address"
 msgstr ""
 
-#: neutron/plugins/cisco/db/n1kv_db_v2.py:1255
+#: neutron/plugins/cisco/db/n1kv_db_v2.py:1256
 #, python-format
 msgid "%s is not a valid ip address"
 msgstr ""
 
-#: neutron/plugins/cisco/db/n1kv_db_v2.py:1259
+#: neutron/plugins/cisco/db/n1kv_db_v2.py:1260
 #, python-format
 msgid ""
 "Invalid multicast IP range '%(min_ip)s-%(max_ip)s': Range should be from "
 "low address to high address"
 msgstr ""
 
-#: neutron/plugins/cisco/db/n1kv_db_v2.py:1272
+#: neutron/plugins/cisco/db/n1kv_db_v2.py:1273
 msgid "Arguments segment_type missing for network profile"
 msgstr ""
 
-#: neutron/plugins/cisco/db/n1kv_db_v2.py:1281
+#: neutron/plugins/cisco/db/n1kv_db_v2.py:1282
 msgid "segment_type should either be vlan, overlay, multi-segment or trunk"
 msgstr ""
 
-#: neutron/plugins/cisco/db/n1kv_db_v2.py:1287
+#: neutron/plugins/cisco/db/n1kv_db_v2.py:1288
 msgid "Argument physical_network missing for network profile"
 msgstr ""
 
-#: neutron/plugins/cisco/db/n1kv_db_v2.py:1293
+#: neutron/plugins/cisco/db/n1kv_db_v2.py:1294
 msgid "segment_range not required for trunk"
 msgstr ""
 
-#: neutron/plugins/cisco/db/n1kv_db_v2.py:1299
+#: neutron/plugins/cisco/db/n1kv_db_v2.py:1300
 msgid "Argument sub_type missing for network profile"
 msgstr ""
 
-#: neutron/plugins/cisco/db/n1kv_db_v2.py:1306
+#: neutron/plugins/cisco/db/n1kv_db_v2.py:1307
 msgid "Argument segment_range missing for network profile"
 msgstr ""
 
-#: neutron/plugins/cisco/db/n1kv_db_v2.py:1317
+#: neutron/plugins/cisco/db/n1kv_db_v2.py:1318
 msgid "Argument multicast_ip_range missing for VXLAN multicast network profile"
 msgstr ""
 
-#: neutron/plugins/cisco/db/n1kv_db_v2.py:1345
+#: neutron/plugins/cisco/db/n1kv_db_v2.py:1346
 #, python-format
 msgid "Segment range is invalid, select from %(min)s-%(nmin)s, %(nmax)s-%(max)s"
 msgstr ""
 
-#: neutron/plugins/cisco/db/n1kv_db_v2.py:1363
+#: neutron/plugins/cisco/db/n1kv_db_v2.py:1364
 #, python-format
 msgid "segment range is invalid. Valid range is : %(min)s-%(max)s"
 msgstr ""
 
-#: neutron/plugins/cisco/db/n1kv_db_v2.py:1377
+#: neutron/plugins/cisco/db/n1kv_db_v2.py:1378
 #, python-format
 msgid "NetworkProfile name %s already exists"
 msgstr ""
 
-#: neutron/plugins/cisco/db/n1kv_db_v2.py:1394
+#: neutron/plugins/cisco/db/n1kv_db_v2.py:1395
 msgid "Segment range overlaps with another profile"
 msgstr ""
 
@@ -5642,311 +5698,306 @@ msgstr ""
 msgid "VSM: %s"
 msgstr ""
 
-#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:144
+#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:147
 msgid "_setup_vsm"
 msgstr ""
 
-#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:163
+#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:166
 msgid "_populate_policy_profiles"
 msgstr ""
 
-#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:190
+#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:193
 msgid "No policy profile populated from VSM"
 msgstr ""
 
-#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:227
+#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:230
 #: neutron/plugins/linuxbridge/lb_neutron_plugin.py:347
 #: neutron/plugins/mlnx/mlnx_plugin.py:217
-#: neutron/plugins/openvswitch/ovs_neutron_plugin.py:409
+#: neutron/plugins/openvswitch/ovs_neutron_plugin.py:410
 msgid "provider:network_type required"
 msgstr ""
 
-#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:231
-#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:245
+#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:234
+#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:248
 #: neutron/plugins/linuxbridge/lb_neutron_plugin.py:357
 #: neutron/plugins/mlnx/mlnx_plugin.py:247
-#: neutron/plugins/openvswitch/ovs_neutron_plugin.py:419
-#: neutron/plugins/openvswitch/ovs_neutron_plugin.py:438
+#: neutron/plugins/openvswitch/ovs_neutron_plugin.py:420
+#: neutron/plugins/openvswitch/ovs_neutron_plugin.py:439
 msgid "provider:segmentation_id required"
 msgstr ""
 
-#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:234
+#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:237
 msgid "provider:segmentation_id out of range (1 through 4094)"
 msgstr ""
 
-#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:239
+#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:242
 msgid "provider:physical_network specified for Overlay network"
 msgstr ""
 
-#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:248
+#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:251
 msgid "provider:segmentation_id out of range (5000+)"
 msgstr ""
 
-#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:252
+#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:255
 #: neutron/plugins/linuxbridge/lb_neutron_plugin.py:379
 #: neutron/plugins/mlnx/mlnx_plugin.py:233
-#: neutron/plugins/openvswitch/ovs_neutron_plugin.py:454
+#: neutron/plugins/openvswitch/ovs_neutron_plugin.py:455
 #, python-format
 msgid "provider:network_type %s not supported"
 msgstr ""
 
-#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:263
+#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:266
 #: neutron/plugins/linuxbridge/lb_neutron_plugin.py:385
 #: neutron/plugins/mlnx/mlnx_plugin.py:273
-#: neutron/plugins/openvswitch/ovs_neutron_plugin.py:460
+#: neutron/plugins/openvswitch/ovs_neutron_plugin.py:461
 #, python-format
 msgid "Unknown provider:physical_network %s"
 msgstr ""
 
-#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:267
+#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:270
 #: neutron/plugins/linuxbridge/lb_neutron_plugin.py:391
 #: neutron/plugins/mlnx/mlnx_plugin.py:279
-#: neutron/plugins/openvswitch/ovs_neutron_plugin.py:466
+#: neutron/plugins/openvswitch/ovs_neutron_plugin.py:467
 msgid "provider:physical_network required"
 msgstr ""
 
-#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:445
+#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:448
 #, python-format
 msgid "_populate_member_segments %s"
 msgstr ""
 
-#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:484
+#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:487
 msgid "Invalid pairing supplied"
 msgstr ""
 
-#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:489
+#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:492
 #, python-format
 msgid "Invalid UUID supplied in %s"
 msgstr ""
 
-#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:490
+#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:493
 msgid "Invalid UUID supplied"
 msgstr ""
 
-#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:519
+#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:522
 #, python-format
 msgid "Cannot add a trunk segment '%s' as a member of another trunk segment"
 msgstr ""
 
-#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:524
+#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:527
 #, python-format
 msgid "Cannot add vlan segment '%s' as a member of a vxlan trunk segment"
 msgstr ""
 
-#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:530
+#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:533
 #, python-format
 msgid "Network UUID '%s' belongs to a different physical network"
 msgstr ""
 
-#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:535
+#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:538
 #, python-format
 msgid "Cannot add vxlan segment '%s' as a member of a vlan trunk segment"
 msgstr ""
 
-#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:540
+#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:543
 #, python-format
 msgid "Vlan tag '%s' is out of range"
 msgstr ""
 
-#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:543
+#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:546
 #, python-format
 msgid "Vlan tag '%s' is not an integer value"
 msgstr ""
 
-#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:548
+#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:551
 #, python-format
 msgid "%s is not a valid uuid"
 msgstr ""
 
-#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:595
 #: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:598
+#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:601
 msgid "n1kv:profile_id does not exist"
 msgstr ""
 
-#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:610
+#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:613
 msgid "_send_create_logical_network"
 msgstr ""
 
-#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:633
+#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:636
 #, python-format
 msgid "_send_create_network_profile_request: %s"
 msgstr ""
 
-#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:643
+#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:646
 #, python-format
 msgid "_send_update_network_profile_request: %s"
 msgstr ""
 
-#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:653
+#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:656
 #, python-format
 msgid "_send_delete_network_profile_request: %s"
 msgstr ""
 
-#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:668
+#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:671
 #, python-format
 msgid "_send_create_network_request: %s"
 msgstr ""
 
-#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:700
+#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:703
 #, python-format
 msgid "_send_update_network_request: %s"
 msgstr ""
 
-#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:722
+#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:725
 #, python-format
 msgid "add_segments=%s"
 msgstr ""
 
-#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:723
+#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:726
 #, python-format
 msgid "del_segments=%s"
 msgstr ""
 
-#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:747
+#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:750
 #, python-format
 msgid "_send_delete_network_request: %s"
 msgstr ""
 
-#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:787
+#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:790
 #, python-format
 msgid "_send_create_subnet_request: %s"
 msgstr ""
 
-#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:797
+#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:800
 #, python-format
 msgid "_send_update_subnet_request: %s"
 msgstr ""
 
-#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:808
+#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:811
 #, python-format
 msgid "_send_delete_subnet_request: %s"
 msgstr ""
 
-#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:834
+#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:837
 #, python-format
 msgid "_send_create_port_request: %s"
 msgstr ""
 
-#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:851
+#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:854
 #, python-format
 msgid "_send_update_port_request: %s"
 msgstr ""
 
-#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:867
+#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:870
 #, python-format
 msgid "_send_delete_port_request: %s"
 msgstr ""
 
-#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:898
+#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:901
 #, python-format
 msgid "Create network: profile_id=%s"
 msgstr ""
 
-#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:906
+#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:909
 #, python-format
 msgid ""
 "Physical_network %(phy_net)s, seg_type %(net_type)s, seg_id %(seg_id)s, "
 "multicast_ip %(multicast_ip)s"
 msgstr ""
 
-#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:918
-#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:928
+#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:921
+#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:931
 #, python-format
 msgid "Seg list %s "
 msgstr ""
 
-#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:968
+#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:972
 #: neutron/plugins/hyperv/hyperv_neutron_plugin.py:252
 #: neutron/plugins/ibm/sdnve_neutron_plugin.py:198
 #: neutron/plugins/metaplugin/meta_neutron_plugin.py:230
 #: neutron/plugins/mlnx/mlnx_plugin.py:360
-#: neutron/plugins/openvswitch/ovs_neutron_plugin.py:514
+#: neutron/plugins/openvswitch/ovs_neutron_plugin.py:515
 #, python-format
 msgid "Created network: %s"
 msgstr ""
 
-#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:1026
+#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:1030
 #, python-format
 msgid "Updated network: %s"
 msgstr ""
 
-#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:1041
+#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:1044
 #, python-format
 msgid "Cannot delete network '%s' that is member of a trunk segment"
 msgstr ""
 
-#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:1045
+#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:1048
 #, python-format
 msgid "Cannot delete network '%s' that is a member of a multi-segment network"
 msgstr ""
 
-#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:1058
-#, python-format
-msgid "Deleted network: %s"
-msgstr ""
-
-#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:1068
+#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:1076
 #, python-format
 msgid "Get network: %s"
 msgstr ""
 
-#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:1090
+#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:1098
 msgid "Get networks"
 msgstr ""
 
-#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:1140
+#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:1149
 #, python-format
 msgid "Create port: profile_id=%s"
 msgstr ""
 
-#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:1186
+#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:1196
 #: neutron/plugins/ibm/sdnve_neutron_plugin.py:305
 #, python-format
 msgid "Created port: %s"
 msgstr ""
 
-#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:1197
+#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:1207
 #, python-format
 msgid "Update port: %s"
 msgstr ""
 
-#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:1249
+#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:1262
 #, python-format
 msgid "Get port: %s"
 msgstr ""
 
-#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:1269
+#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:1282
 msgid "Get ports"
 msgstr ""
 
-#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:1285
+#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:1298
 msgid "Create subnet"
 msgstr ""
 
-#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:1293
+#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:1308
 #, python-format
 msgid "Created subnet: %s"
 msgstr ""
 
-#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:1304
+#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:1319
 msgid "Update subnet"
 msgstr ""
 
-#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:1319
+#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:1334
 #, python-format
 msgid "Delete subnet: %s"
 msgstr ""
 
-#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:1334
+#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:1349
 #, python-format
 msgid "Get subnet: %s"
 msgstr ""
 
-#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:1354
+#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:1369
 msgid "Get subnets"
 msgstr ""
 
-#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:1439
+#: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:1454
 #, python-format
 msgid "Scheduling router %s"
 msgstr ""
@@ -6297,7 +6348,7 @@ msgstr ""
 #: neutron/plugins/linuxbridge/lb_neutron_plugin.py:308
 #: neutron/plugins/ml2/drivers/type_vlan.py:96
 #: neutron/plugins/mlnx/mlnx_plugin.py:178
-#: neutron/plugins/openvswitch/ovs_neutron_plugin.py:361
+#: neutron/plugins/openvswitch/ovs_neutron_plugin.py:362
 #, python-format
 msgid "Network VLAN ranges: %s"
 msgstr ""
@@ -6310,7 +6361,7 @@ msgstr ""
 #: neutron/plugins/hyperv/rpc_callbacks.py:81
 #: neutron/plugins/linuxbridge/lb_neutron_plugin.py:123
 #: neutron/plugins/mlnx/rpc_callbacks.py:101
-#: neutron/plugins/openvswitch/ovs_neutron_plugin.py:125
+#: neutron/plugins/openvswitch/ovs_neutron_plugin.py:126
 #, python-format
 msgid "Device %(device)s no longer exists on %(agent_id)s"
 msgstr ""
@@ -6332,6 +6383,7 @@ msgstr ""
 #: neutron/plugins/oneconvergence/lib/config.py:47
 #: neutron/plugins/openvswitch/common/config.py:64
 #: neutron/plugins/ryu/common/config.py:43
+#: neutron/plugins/sriovnicagent/common/config.py:58
 msgid ""
 "The number of seconds the agent will wait between polling for local "
 "device changes."
@@ -6465,8 +6517,9 @@ msgstr ""
 #: neutron/plugins/hyperv/agent/hyperv_neutron_agent.py:436
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:994
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:382
-#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:1294
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1382
+#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:1348
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1389
+#: neutron/plugins/sriovnicagent/sriov_nic_agent.py:254
 msgid "Agent out of sync with plugin!"
 msgstr ""
 
@@ -6488,8 +6541,9 @@ msgstr ""
 #: neutron/plugins/hyperv/agent/hyperv_neutron_agent.py:472
 #: neutron/plugins/ibm/agent/sdnve_neutron_agent.py:269
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:1035
-#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:159
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1568
+#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:160
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1581
+#: neutron/plugins/sriovnicagent/sriov_nic_agent.py:350
 msgid "Agent initialized successfully, now running... "
 msgstr ""
 
@@ -7039,7 +7093,7 @@ msgid "Controller IPs: %s"
 msgstr ""
 
 #: neutron/plugins/ibm/agent/sdnve_neutron_agent.py:263
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1555
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1568
 #, python-format
 msgid "%s Agent terminated!"
 msgstr ""
@@ -7135,15 +7189,15 @@ msgstr ""
 
 #: neutron/plugins/linuxbridge/lb_neutron_plugin.py:131
 #: neutron/plugins/linuxbridge/lb_neutron_plugin.py:155
-#: neutron/plugins/ml2/rpc.py:156 neutron/plugins/ml2/rpc.py:180
-#: neutron/plugins/openvswitch/ovs_neutron_plugin.py:133
-#: neutron/plugins/openvswitch/ovs_neutron_plugin.py:158
+#: neutron/plugins/ml2/rpc.py:160 neutron/plugins/ml2/rpc.py:184
+#: neutron/plugins/openvswitch/ovs_neutron_plugin.py:134
+#: neutron/plugins/openvswitch/ovs_neutron_plugin.py:159
 #, python-format
 msgid "Device %(device)s not bound to the agent host %(host)s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/lb_neutron_plugin.py:149
-#: neutron/plugins/openvswitch/ovs_neutron_plugin.py:152
+#: neutron/plugins/openvswitch/ovs_neutron_plugin.py:153
 #, python-format
 msgid "Device %(device)s up on %(agent_id)s"
 msgstr ""
@@ -7165,26 +7219,26 @@ msgstr ""
 
 #: neutron/plugins/linuxbridge/lb_neutron_plugin.py:351
 #: neutron/plugins/mlnx/mlnx_plugin.py:242
-#: neutron/plugins/openvswitch/ovs_neutron_plugin.py:413
+#: neutron/plugins/openvswitch/ovs_neutron_plugin.py:414
 msgid "provider:segmentation_id specified for flat network"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/lb_neutron_plugin.py:360
 #: neutron/plugins/mlnx/mlnx_plugin.py:250
-#: neutron/plugins/openvswitch/ovs_neutron_plugin.py:422
+#: neutron/plugins/openvswitch/ovs_neutron_plugin.py:423
 #, python-format
 msgid "provider:segmentation_id out of range (%(min_id)s through %(max_id)s)"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/lb_neutron_plugin.py:367
 #: neutron/plugins/mlnx/mlnx_plugin.py:258
-#: neutron/plugins/openvswitch/ovs_neutron_plugin.py:442
+#: neutron/plugins/openvswitch/ovs_neutron_plugin.py:443
 msgid "provider:physical_network specified for local network"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/lb_neutron_plugin.py:373
 #: neutron/plugins/mlnx/mlnx_plugin.py:262
-#: neutron/plugins/openvswitch/ovs_neutron_plugin.py:448
+#: neutron/plugins/openvswitch/ovs_neutron_plugin.py:449
 msgid "provider:segmentation_id specified for local network"
 msgstr ""
 
@@ -7364,32 +7418,30 @@ msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:661
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:162
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:285
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:297
 msgid "network_delete received"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:675
+#: neutron/plugins/sriovnicagent/sriov_nic_agent.py:66
 #, python-format
 msgid "port_update RPC received for port: %s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:678
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:326
 msgid "fdb_add received"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:700
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:354
 msgid "fdb_remove received"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:722
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:433
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:423
 msgid "update chg_ip received"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:747
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:456
 msgid "fdb_update received"
 msgstr ""
 
@@ -7401,13 +7453,15 @@ msgstr ""
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:252
 #: neutron/plugins/nec/agent/nec_neutron_agent.py:144
 #: neutron/plugins/oneconvergence/agent/nvsd_neutron_agent.py:109
+#: neutron/plugins/sriovnicagent/sriov_nic_agent.py:100
 #, python-format
 msgid "RPC agent_id: %s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:879
-#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:1102
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1135
+#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:1166
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1140
+#: neutron/plugins/sriovnicagent/sriov_nic_agent.py:213
 #, python-format
 msgid "Port %(device)s updated. Details: %(details)s"
 msgstr ""
@@ -7415,36 +7469,38 @@ msgstr ""
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:912
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:933
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:368
-#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:1122
-#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:1184
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1159
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1219
+#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:1186
+#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:1248
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1166
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1227
+#: neutron/plugins/sriovnicagent/sriov_nic_agent.py:240
 #, python-format
 msgid "Device %s not defined on plugin"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:919
-#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:1152
-#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:1169
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1187
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1204
+#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:1216
+#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:1233
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1195
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1212
 #, python-format
 msgid "Attachment %s removed"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:927
-#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:1159
-#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:1176
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1194
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1211
+#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:1223
+#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:1240
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1202
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1219
 #, python-format
 msgid "port_removed failed for %(device)s: %(e)s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:931
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:366
-#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:1181
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1216
+#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:1245
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1224
+#: neutron/plugins/sriovnicagent/sriov_nic_agent.py:238
 #, python-format
 msgid "Port %s updated."
 msgstr ""
@@ -7454,11 +7510,13 @@ msgid "LinuxBridge Agent RPC Daemon Started!"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:998
+#: neutron/plugins/sriovnicagent/sriov_nic_agent.py:267
 #, python-format
 msgid "Agent loop found changes! %s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:1002
+#: neutron/plugins/sriovnicagent/sriov_nic_agent.py:273
 #, python-format
 msgid "Error in agent loop. Devices info: %s"
 msgstr ""
@@ -7947,8 +8005,8 @@ msgid "There is no %(name)s with ID %(id)s in MidoNet."
 msgstr ""
 
 #: neutron/plugins/midonet/plugin.py:183
-#: neutron/plugins/ml2/drivers/mech_arista/exceptions.py:23
-#: neutron/plugins/ml2/drivers/mech_arista/exceptions.py:27
+#: neutron/plugins/ml2/drivers/arista/exceptions.py:23
+#: neutron/plugins/ml2/drivers/arista/exceptions.py:27
 #, python-format
 msgid "%(msg)s"
 msgstr ""
@@ -8225,18 +8283,18 @@ msgstr ""
 msgid "Added segment %(id)s of type %(network_type)s for network %(network_id)s"
 msgstr ""
 
-#: neutron/plugins/ml2/db.py:134 neutron/plugins/ml2/db.py:186
-#: neutron/plugins/ml2/plugin.py:931
+#: neutron/plugins/ml2/db.py:141 neutron/plugins/ml2/db.py:193
+#: neutron/plugins/ml2/plugin.py:1056
 #, python-format
 msgid "Multiple ports have port_id starting with %s"
 msgstr ""
 
-#: neutron/plugins/ml2/db.py:140
+#: neutron/plugins/ml2/db.py:147
 #, python-format
 msgid "get_port_from_device_mac() called for mac %s"
 msgstr ""
 
-#: neutron/plugins/ml2/db.py:182
+#: neutron/plugins/ml2/db.py:189
 #, python-format
 msgid "No binding found for port %(port_id)s"
 msgstr ""
@@ -8278,233 +8336,245 @@ msgstr ""
 msgid "Initializing driver for type '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/managers.py:82
+#: neutron/plugins/ml2/managers.py:82 neutron/plugins/ml2/managers.py:91
 #: neutron/plugins/ml2/drivers/type_tunnel.py:113
 #, python-format
 msgid "network_type value '%s' not supported"
 msgstr ""
 
-#: neutron/plugins/ml2/managers.py:108
+#: neutron/plugins/ml2/managers.py:117
 #, python-format
 msgid "Failed to release segment '%s' because network type is not supported."
 msgstr ""
 
-#: neutron/plugins/ml2/managers.py:124
+#: neutron/plugins/ml2/managers.py:133
 #, python-format
 msgid "Configured mechanism driver names: %s"
 msgstr ""
 
-#: neutron/plugins/ml2/managers.py:130
+#: neutron/plugins/ml2/managers.py:139
 #, python-format
 msgid "Loaded mechanism driver names: %s"
 msgstr ""
 
-#: neutron/plugins/ml2/managers.py:142
+#: neutron/plugins/ml2/managers.py:151
 #, python-format
 msgid "Registered mechanism drivers: %s"
 msgstr ""
 
-#: neutron/plugins/ml2/managers.py:149
+#: neutron/plugins/ml2/managers.py:158
 #, python-format
 msgid "Initializing mechanism driver '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/managers.py:171
+#: neutron/plugins/ml2/managers.py:180
 #, python-format
 msgid "Mechanism driver '%(name)s' failed in %(method)s"
 msgstr ""
 
-#: neutron/plugins/ml2/managers.py:473
+#: neutron/plugins/ml2/managers.py:482
 #, python-format
 msgid "Mechanism driver %s failed in bind_port"
 msgstr ""
 
-#: neutron/plugins/ml2/managers.py:477
+#: neutron/plugins/ml2/managers.py:486
 #, python-format
 msgid "Failed to bind port %(port)s on host %(host)s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:125
+#: neutron/plugins/ml2/plugin.py:128
 msgid "Modular L2 Plugin initialization complete"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:156
+#: neutron/plugins/ml2/plugin.py:159
 msgid "network_type required"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:195
+#: neutron/plugins/ml2/plugin.py:198
 #, python-format
 msgid "Network %s has no segments"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:238
+#: neutron/plugins/ml2/plugin.py:250
 msgid "binding:profile value too large"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:287
+#: neutron/plugins/ml2/plugin.py:306
 #, python-format
 msgid "Failed to commit binding results for %(port)s after %(max)s tries"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:293
+#: neutron/plugins/ml2/plugin.py:312
 #, python-format
 msgid "Attempt %(count)s to bind port %(port)s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:425
+#: neutron/plugins/ml2/plugin.py:444
 #, python-format
 msgid "Serialized vif_details DB value '%(value)s' for port %(port)s is invalid"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:436
+#: neutron/plugins/ml2/plugin.py:455
 #, python-format
 msgid "Serialized profile DB value '%(value)s' for port %(port)s is invalid"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:480
+#: neutron/plugins/ml2/plugin.py:499
 #, python-format
 msgid ""
 "In _notify_port_updated(), no bound segment for port %(port_id)s on "
 "network %(network_id)s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:522
+#: neutron/plugins/ml2/plugin.py:541
 #, python-format
 msgid "mechanism_manager.create_network_postcommit failed, deleting network '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:582
+#: neutron/plugins/ml2/plugin.py:601
 #, python-format
 msgid "Deleting network %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:603
+#: neutron/plugins/ml2/plugin.py:622
 #, python-format
 msgid "Ports to auto-delete: %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:609 neutron/plugins/ml2/plugin.py:734
+#: neutron/plugins/ml2/plugin.py:628 neutron/plugins/ml2/plugin.py:753
 msgid "Tenant-owned ports exist"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:617
+#: neutron/plugins/ml2/plugin.py:636
 #, python-format
 msgid "Subnets to auto-delete: %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:628
+#: neutron/plugins/ml2/plugin.py:647
 #, python-format
 msgid "Deleting network record %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:636 neutron/plugins/ml2/plugin.py:747
+#: neutron/plugins/ml2/plugin.py:655 neutron/plugins/ml2/plugin.py:766
 msgid "Committing transaction"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:642
+#: neutron/plugins/ml2/plugin.py:661
 msgid "A concurrent port creation has occurred"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:651
+#: neutron/plugins/ml2/plugin.py:670
 #, python-format
 msgid "Exception auto-deleting port %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:659
+#: neutron/plugins/ml2/plugin.py:678
 #, python-format
 msgid "Exception auto-deleting subnet %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:668
+#: neutron/plugins/ml2/plugin.py:687
 msgid "mechanism_manager.delete_network_postcommit failed"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:682
+#: neutron/plugins/ml2/plugin.py:701
 #, python-format
 msgid "mechanism_manager.create_subnet_postcommit failed, deleting subnet '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:712
+#: neutron/plugins/ml2/plugin.py:731
 #, python-format
 msgid "Deleting subnet %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:728
+#: neutron/plugins/ml2/plugin.py:747
 #, python-format
 msgid "Ports to auto-deallocate: %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:743
+#: neutron/plugins/ml2/plugin.py:762
 msgid "Deleting subnet record"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:763
+#: neutron/plugins/ml2/plugin.py:782
 #, python-format
 msgid "Exception deleting fixed_ip from port %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:773
+#: neutron/plugins/ml2/plugin.py:792
 msgid "mechanism_manager.delete_subnet_postcommit failed"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:803
+#: neutron/plugins/ml2/plugin.py:823
 #, python-format
 msgid "mechanism_manager.create_port_postcommit failed, deleting port '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:815
+#: neutron/plugins/ml2/plugin.py:835
 #, python-format
 msgid "_bind_port_if_needed failed, deleting port '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:874
-#: neutron/tests/unit/ml2/test_ml2_plugin.py:134
+#: neutron/plugins/ml2/plugin.py:914
+#, python-format
+msgid "No Host supplied to bind DVR Port %s"
+msgstr ""
+
+#: neutron/plugins/ml2/plugin.py:972
+#: neutron/tests/unit/ml2/test_ml2_plugin.py:136
 #, python-format
 msgid "Deleting port %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:891
-#: neutron/tests/unit/ml2/test_ml2_plugin.py:135
+#: neutron/plugins/ml2/plugin.py:992
+#: neutron/tests/unit/ml2/test_ml2_plugin.py:137
 #, python-format
 msgid "The port '%s' was deleted"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:900
-msgid "Calling base delete_port"
+#: neutron/plugins/ml2/plugin.py:1041
+#, python-format
+msgid "mechanism_manager.delete_port_postcommit failed for port %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:917
-msgid "mechanism_manager.delete_port_postcommit failed"
+#: neutron/plugins/ml2/plugin.py:1065
+#, python-format
+msgid "Binding info for DVR port %s not found"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:956
+#: neutron/plugins/ml2/plugin.py:1091
 #, python-format
 msgid "Port %(port)s updated up by agent not found"
 msgstr ""
 
-#: neutron/plugins/ml2/rpc.py:94
+#: neutron/plugins/ml2/plugin.py:1121
+#, python-format
+msgid "Port %s not found during update"
+msgstr ""
+
+#: neutron/plugins/ml2/rpc.py:97
 #, python-format
 msgid "Device %(device)s requested by agent %(agent_id)s not found in database"
 msgstr ""
 
-#: neutron/plugins/ml2/rpc.py:103
+#: neutron/plugins/ml2/rpc.py:106
 #, python-format
 msgid ""
 "Device %(device)s requested by agent %(agent_id)s on network "
 "%(network_id)s not bound, vif_type: %(vif_type)s"
 msgstr ""
 
-#: neutron/plugins/ml2/rpc.py:129
+#: neutron/plugins/ml2/rpc.py:133
 #, python-format
 msgid "Returning: %s"
 msgstr ""
 
-#: neutron/plugins/ml2/rpc.py:148
+#: neutron/plugins/ml2/rpc.py:152
 #, python-format
 msgid "Device %(device)s no longer exists at agent %(agent_id)s"
 msgstr ""
 
-#: neutron/plugins/ml2/rpc.py:174
+#: neutron/plugins/ml2/rpc.py:178
 #, python-format
 msgid "Device %(device)s up at agent %(agent_id)s"
 msgstr ""
@@ -8544,6 +8614,7 @@ msgid "Bound using segment: %s"
 msgstr ""
 
 #: neutron/plugins/ml2/drivers/mech_agent.py:73
+#: neutron/plugins/ml2/drivers/mech_sriov/mech_driver.py:112
 #, python-format
 msgid "Attempting to bind with dead agent: %s"
 msgstr ""
@@ -8688,26 +8759,26 @@ msgstr ""
 msgid "ML2 FlatTypeDriver initialization complete"
 msgstr ""
 
-#: neutron/plugins/ml2/drivers/type_flat.py:87
+#: neutron/plugins/ml2/drivers/type_flat.py:90
 msgid "physical_network required for flat provider network"
 msgstr ""
 
-#: neutron/plugins/ml2/drivers/type_flat.py:90
+#: neutron/plugins/ml2/drivers/type_flat.py:93
 #, python-format
 msgid "physical_network '%s' unknown for flat provider network"
 msgstr ""
 
-#: neutron/plugins/ml2/drivers/type_flat.py:97
+#: neutron/plugins/ml2/drivers/type_flat.py:100
 #, python-format
 msgid "%s prohibited for flat provider network"
 msgstr ""
 
-#: neutron/plugins/ml2/drivers/type_flat.py:104
+#: neutron/plugins/ml2/drivers/type_flat.py:107
 #, python-format
 msgid "Reserving flat network on physical network %s"
 msgstr ""
 
-#: neutron/plugins/ml2/drivers/type_flat.py:127
+#: neutron/plugins/ml2/drivers/type_flat.py:130
 #, python-format
 msgid "No flat network found on physical network %s"
 msgstr ""
@@ -8752,7 +8823,7 @@ msgstr ""
 msgid "ML2 LocalTypeDriver initialization complete"
 msgstr ""
 
-#: neutron/plugins/ml2/drivers/type_local.py:46
+#: neutron/plugins/ml2/drivers/type_local.py:49
 #, python-format
 msgid "%s prohibited for local provider network"
 msgstr ""
@@ -8768,7 +8839,7 @@ msgid "%(type)s ID ranges: %(range)s"
 msgstr ""
 
 #: neutron/plugins/ml2/drivers/type_tunnel.py:73
-#: neutron/plugins/openvswitch/ovs_neutron_plugin.py:432
+#: neutron/plugins/openvswitch/ovs_neutron_plugin.py:433
 #, python-format
 msgid "provider:physical_network specified for %s network"
 msgstr ""
@@ -8851,6 +8922,130 @@ msgstr ""
 msgid "add_vxlan_endpoint() called for ip %s"
 msgstr ""
 
+#: neutron/plugins/ml2/drivers/arista/config.py:31
+msgid ""
+"Username for Arista EOS. This is required field. If not set, all "
+"communications to Arista EOSwill fail."
+msgstr ""
+
+#: neutron/plugins/ml2/drivers/arista/config.py:37
+msgid ""
+"Password for Arista EOS. This is required field. If not set, all "
+"communications to Arista EOS will fail."
+msgstr ""
+
+#: neutron/plugins/ml2/drivers/arista/config.py:42
+msgid ""
+"Arista EOS IP address. This is required field. If not set, all "
+"communications to Arista EOSwill fail."
+msgstr ""
+
+#: neutron/plugins/ml2/drivers/arista/config.py:47
+msgid ""
+"Defines if hostnames are sent to Arista EOS as FQDNs "
+"(\"node1.domain.com\") or as short names (\"node1\"). This is optional. "
+"If not set, a value of \"True\" is assumed."
+msgstr ""
+
+#: neutron/plugins/ml2/drivers/arista/config.py:53
+msgid ""
+"Sync interval in seconds between Neutron plugin and EOS. This interval "
+"defines how often the synchronization is performed. This is an optional "
+"field. If not set, a value of 180 seconds is assumed."
+msgstr ""
+
+#: neutron/plugins/ml2/drivers/arista/config.py:60
+msgid ""
+"Defines Region Name that is assigned to this OpenStack Controller. This "
+"is useful when multiple OpenStack/Neutron controllers are managing the "
+"same Arista HW clusters. Note that this name must match with the region "
+"name registered (or known) to keystone service. Authentication with "
+"Keysotne is performed by EOS. This is optional. If not set, a value of "
+"\"RegionOne\" is assumed."
+msgstr ""
+
+#: neutron/plugins/ml2/drivers/arista/mechanism_arista.py:31
+msgid "Unable to reach EOS"
+msgstr ""
+
+#: neutron/plugins/ml2/drivers/arista/mechanism_arista.py:73
+#, python-format
+msgid "'timestamp' command '%s' is not available on EOS"
+msgstr ""
+
+#: neutron/plugins/ml2/drivers/arista/mechanism_arista.py:313
+#, python-format
+msgid "VM id %(vmid)s not found for port %(portid)s"
+msgstr ""
+
+#: neutron/plugins/ml2/drivers/arista/mechanism_arista.py:332
+#, python-format
+msgid "Unknown device owner: %s"
+msgstr ""
+
+#: neutron/plugins/ml2/drivers/arista/mechanism_arista.py:428
+#, python-format
+msgid "Executing command on Arista EOS: %s"
+msgstr ""
+
+#: neutron/plugins/ml2/drivers/arista/mechanism_arista.py:436
+#, python-format
+msgid "Error %(err)s while trying to execute commands %(cmd)s on EOS %(host)s"
+msgstr ""
+
+#: neutron/plugins/ml2/drivers/arista/mechanism_arista.py:504
+msgid "Required option eapi_host is not set"
+msgstr ""
+
+#: neutron/plugins/ml2/drivers/arista/mechanism_arista.py:508
+msgid "Required option eapi_username is not set"
+msgstr ""
+
+#: neutron/plugins/ml2/drivers/arista/mechanism_arista.py:528
+msgid "Syncing Neutron <-> EOS"
+msgstr ""
+
+#: neutron/plugins/ml2/drivers/arista/mechanism_arista.py:534
+msgid "OpenStack and EOS are in sync!"
+msgstr ""
+
+#: neutron/plugins/ml2/drivers/arista/mechanism_arista.py:556
+#, python-format
+msgid ""
+"No Tenants configured in Neutron DB. But %d tenants disovered in EOS "
+"during synchronization.Enitre EOS region is cleared"
+msgstr ""
+
+#: neutron/plugins/ml2/drivers/arista/mechanism_arista.py:721
+#, python-format
+msgid "Network %s is not created as it is not found inArista DB"
+msgstr ""
+
+#: neutron/plugins/ml2/drivers/arista/mechanism_arista.py:735
+#, python-format
+msgid "Network name changed to %s"
+msgstr ""
+
+#: neutron/plugins/ml2/drivers/arista/mechanism_arista.py:763
+#, python-format
+msgid "Network %s is not updated as it is not found inArista DB"
+msgstr ""
+
+#: neutron/plugins/ml2/drivers/arista/mechanism_arista.py:855
+#, python-format
+msgid "VM %s is not created as it is not found in Arista DB"
+msgstr ""
+
+#: neutron/plugins/ml2/drivers/arista/mechanism_arista.py:870
+#, python-format
+msgid "Port name changed to %s"
+msgstr ""
+
+#: neutron/plugins/ml2/drivers/arista/mechanism_arista.py:920
+#, python-format
+msgid "VM %s is not updated as it is not found in Arista DB"
+msgstr ""
+
 #: neutron/plugins/ml2/drivers/brocade/mechanism_brocade.py:40
 msgid "Allowed physical networks"
 msgstr ""
@@ -9219,16 +9414,16 @@ msgstr ""
 msgid "Experimental L2 population driver"
 msgstr ""
 
-#: neutron/plugins/ml2/drivers/l2pop/mech_driver.py:133
+#: neutron/plugins/ml2/drivers/l2pop/mech_driver.py:165
 msgid "Unable to retrieve the agent ip, check the agent configuration."
 msgstr ""
 
-#: neutron/plugins/ml2/drivers/l2pop/mech_driver.py:139
+#: neutron/plugins/ml2/drivers/l2pop/mech_driver.py:171
 #, python-format
 msgid "Port %(port)s updated by agent %(agent)s isn't bound to any segment"
 msgstr ""
 
-#: neutron/plugins/ml2/drivers/l2pop/mech_driver.py:189
+#: neutron/plugins/ml2/drivers/l2pop/mech_driver.py:222
 #, python-format
 msgid ""
 "Unable to retrieve the agent ip, check the agent %(agent_host)s "
@@ -9249,140 +9444,50 @@ msgid ""
 "with %(fdb_entries)s"
 msgstr ""
 
-#: neutron/plugins/ml2/drivers/mech_arista/config.py:31
-msgid ""
-"Username for Arista EOS. This is required field. If not set, all "
-"communications to Arista EOSwill fail."
-msgstr ""
-
-#: neutron/plugins/ml2/drivers/mech_arista/config.py:37
-msgid ""
-"Password for Arista EOS. This is required field. If not set, all "
-"communications to Arista EOS will fail."
-msgstr ""
-
-#: neutron/plugins/ml2/drivers/mech_arista/config.py:42
-msgid ""
-"Arista EOS IP address. This is required field. If not set, all "
-"communications to Arista EOSwill fail."
-msgstr ""
-
-#: neutron/plugins/ml2/drivers/mech_arista/config.py:47
-msgid ""
-"Defines if hostnames are sent to Arista EOS as FQDNs "
-"(\"node1.domain.com\") or as short names (\"node1\"). This is optional. "
-"If not set, a value of \"True\" is assumed."
-msgstr ""
-
-#: neutron/plugins/ml2/drivers/mech_arista/config.py:53
-msgid ""
-"Sync interval in seconds between Neutron plugin and EOS. This interval "
-"defines how often the synchronization is performed. This is an optional "
-"field. If not set, a value of 180 seconds is assumed."
-msgstr ""
-
-#: neutron/plugins/ml2/drivers/mech_arista/config.py:60
-msgid ""
-"Defines Region Name that is assigned to this OpenStack Controller. This "
-"is useful when multiple OpenStack/Neutron controllers are managing the "
-"same Arista HW clusters. Note that this name must match with the region "
-"name registered (or known) to keystone service. Authentication with "
-"Keysotne is performed by EOS. This is optional. If not set, a value of "
-"\"RegionOne\" is assumed."
-msgstr ""
-
-#: neutron/plugins/ml2/drivers/mech_arista/mechanism_arista.py:32
-msgid "Unable to reach EOS"
-msgstr ""
-
-#: neutron/plugins/ml2/drivers/mech_arista/mechanism_arista.py:74
-#, python-format
-msgid "'timestamp' command '%s' is not available on EOS"
-msgstr ""
-
-#: neutron/plugins/ml2/drivers/mech_arista/mechanism_arista.py:314
-#, python-format
-msgid "VM id %(vmid)s not found for port %(portid)s"
-msgstr ""
-
-#: neutron/plugins/ml2/drivers/mech_arista/mechanism_arista.py:333
-#, python-format
-msgid "Unknown device owner: %s"
-msgstr ""
-
-#: neutron/plugins/ml2/drivers/mech_arista/mechanism_arista.py:429
-#, python-format
-msgid "Executing command on Arista EOS: %s"
-msgstr ""
-
-#: neutron/plugins/ml2/drivers/mech_arista/mechanism_arista.py:437
-#, python-format
-msgid "Error %(err)s while trying to execute commands %(cmd)s on EOS %(host)s"
-msgstr ""
-
-#: neutron/plugins/ml2/drivers/mech_arista/mechanism_arista.py:505
-msgid "Required option eapi_host is not set"
-msgstr ""
-
-#: neutron/plugins/ml2/drivers/mech_arista/mechanism_arista.py:509
-msgid "Required option eapi_username is not set"
+#: neutron/plugins/ml2/drivers/mech_bigswitch/driver.py:47
+msgid "Initializing driver"
 msgstr ""
 
-#: neutron/plugins/ml2/drivers/mech_arista/mechanism_arista.py:529
-msgid "Syncing Neutron <-> EOS"
+#: neutron/plugins/ml2/drivers/mech_bigswitch/driver.py:62
+msgid "Initialization done"
 msgstr ""
 
-#: neutron/plugins/ml2/drivers/mech_arista/mechanism_arista.py:535
-msgid "OpenStack and EOS are in sync!"
+#: neutron/plugins/ml2/drivers/mech_bigswitch/driver.py:123
+msgid "Ignoring port notification to controller because of missing host ID."
 msgstr ""
 
-#: neutron/plugins/ml2/drivers/mech_arista/mechanism_arista.py:557
-#, python-format
+#: neutron/plugins/ml2/drivers/mech_sriov/mech_driver.py:31
 msgid ""
-"No Tenants configured in Neutron DB. But %d tenants disovered in EOS "
-"during synchronization.Enitre EOS region is cleared"
+"Supported PCI vendor devices, defined by vendor_id:product_id according "
+"to the PCI ID Repository. Default enables support for Intel and Mellanox "
+"SR-IOV capable NICs"
 msgstr ""
 
-#: neutron/plugins/ml2/drivers/mech_arista/mechanism_arista.py:722
-#, python-format
-msgid "Network %s is not created as it is not found inArista DB"
+#: neutron/plugins/ml2/drivers/mech_sriov/mech_driver.py:37
+msgid "SRIOV neutron agent is required for port binding"
 msgstr ""
 
-#: neutron/plugins/ml2/drivers/mech_arista/mechanism_arista.py:736
-#, python-format
-msgid "Network name changed to %s"
+#: neutron/plugins/ml2/drivers/mech_sriov/mech_driver.py:86
+msgid "Failed to parse supported PCI vendor devices"
 msgstr ""
 
-#: neutron/plugins/ml2/drivers/mech_arista/mechanism_arista.py:764
-#, python-format
-msgid "Network %s is not updated as it is not found inArista DB"
+#: neutron/plugins/ml2/drivers/mech_sriov/mech_driver.py:87
+msgid "Parsing supported pci_vendor_devs failed"
 msgstr ""
 
-#: neutron/plugins/ml2/drivers/mech_arista/mechanism_arista.py:856
+#: neutron/plugins/ml2/drivers/mech_sriov/mech_driver.py:176
 #, python-format
-msgid "VM %s is not created as it is not found in Arista DB"
+msgid "Invalid pci_vendor_info: '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/drivers/mech_arista/mechanism_arista.py:871
+#: neutron/plugins/ml2/drivers/mech_sriov/mech_driver.py:179
 #, python-format
-msgid "Port name changed to %s"
+msgid "Missing vendor_id in: '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/drivers/mech_arista/mechanism_arista.py:921
+#: neutron/plugins/ml2/drivers/mech_sriov/mech_driver.py:182
 #, python-format
-msgid "VM %s is not updated as it is not found in Arista DB"
-msgstr ""
-
-#: neutron/plugins/ml2/drivers/mech_bigswitch/driver.py:47
-msgid "Initializing driver"
-msgstr ""
-
-#: neutron/plugins/ml2/drivers/mech_bigswitch/driver.py:62
-msgid "Initialization done"
-msgstr ""
-
-#: neutron/plugins/ml2/drivers/mech_bigswitch/driver.py:123
-msgid "Ignoring port notification to controller because of missing host ID."
+msgid "Missing product_id in: '%s'"
 msgstr ""
 
 #: neutron/plugins/ml2/drivers/mlnx/config.py:24
@@ -9434,7 +9539,7 @@ msgid "Physical Network type mappings: %s"
 msgstr ""
 
 #: neutron/plugins/mlnx/mlnx_plugin.py:176
-#: neutron/plugins/openvswitch/ovs_neutron_plugin.py:359
+#: neutron/plugins/openvswitch/ovs_neutron_plugin.py:360
 #, python-format
 msgid "%s. Server terminated!"
 msgstr ""
@@ -9552,11 +9657,13 @@ msgid "Device with mac_address %s not defined on Neutron Plugin"
 msgstr ""
 
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:353
+#: neutron/plugins/sriovnicagent/sriov_nic_agent.py:226
 #, python-format
 msgid "Removing device with mac_address %s"
 msgstr ""
 
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:361
+#: neutron/plugins/sriovnicagent/sriov_nic_agent.py:233
 #, python-format
 msgid "Removing port failed for device %(device)s due to %(exc)s"
 msgstr ""
@@ -10265,130 +10372,135 @@ msgid ""
 "or clear protocol before changing ether type."
 msgstr ""
 
-#: neutron/plugins/nuage/plugin.py:89
+#: neutron/plugins/nuage/plugin.py:88
 #, python-format
 msgid "%(resource)s with id %(resource_id)s does not exist"
 msgstr ""
 
-#: neutron/plugins/nuage/plugin.py:98
+#: neutron/plugins/nuage/plugin.py:97
 #, python-format
 msgid ""
 "Either %(resource)s %(req_resource)s not found or you dont have "
 "credential to access it"
 msgstr ""
 
-#: neutron/plugins/nuage/plugin.py:104
+#: neutron/plugins/nuage/plugin.py:103
 #, python-format
 msgid ""
 "More than one entry found for %(resource)s %(req_resource)s. Use id "
 "instead"
 msgstr ""
 
-#: neutron/plugins/nuage/plugin.py:214
+#: neutron/plugins/nuage/plugin.py:174
 #, python-format
 msgid "Subnet %s not found on VSD"
 msgstr ""
 
-#: neutron/plugins/nuage/plugin.py:219
+#: neutron/plugins/nuage/plugin.py:182
 #, python-format
-msgid "Port-Mapping for port %s not  found on VSD"
+msgid "Port %s not found on VSD"
 msgstr ""
 
-#: neutron/plugins/nuage/plugin.py:314
+#: neutron/plugins/nuage/plugin.py:282
 msgid "External network with subnets can not be changed to non-external network"
 msgstr ""
 
-#: neutron/plugins/nuage/plugin.py:368
+#: neutron/plugins/nuage/plugin.py:345
 msgid ""
 "Either net_partition is not provided with subnet OR default net_partition"
 " is not created at the start"
 msgstr ""
 
-#: neutron/plugins/nuage/plugin.py:397
+#: neutron/plugins/nuage/plugin.py:366
 #, python-format
 msgid "Only one subnet is allowed per external network %s"
 msgstr ""
 
-#: neutron/plugins/nuage/plugin.py:479
+#: neutron/plugins/nuage/plugin.py:449
 #, python-format
 msgid ""
 "Unable to complete operation on subnet %s.One or more ports have an IP "
 "allocation from this subnet."
 msgstr ""
 
-#: neutron/plugins/nuage/plugin.py:509
+#: neutron/plugins/nuage/plugin.py:476
 #, python-format
 msgid ""
-"Router %s does not hold default zone OR net_partition mapping. Router-IF "
-"add failed"
+"Router %s does not hold default zone OR domain in VSD. Router-IF add "
+"failed"
 msgstr ""
 
-#: neutron/plugins/nuage/plugin.py:519
+#: neutron/plugins/nuage/plugin.py:488
 #, python-format
 msgid "Subnet %s does not hold Nuage VSD reference. Router-IF add failed"
 msgstr ""
 
-#: neutron/plugins/nuage/plugin.py:529
+#: neutron/plugins/nuage/plugin.py:498
 #, python-format
 msgid ""
 "Subnet %(subnet)s and Router %(router)s belong to different net_partition"
 " Router-IF add not permitted"
 msgstr ""
 
-#: neutron/plugins/nuage/plugin.py:541
+#: neutron/plugins/nuage/plugin.py:510
 #, python-format
 msgid "Subnet %s has one or more active VMs Router-IF add not permitted"
 msgstr ""
 
-#: neutron/plugins/nuage/plugin.py:587 neutron/plugins/nuage/plugin.py:592
-#: neutron/plugins/nuage/plugin.py:598
+#: neutron/plugins/nuage/plugin.py:559 neutron/plugins/nuage/plugin.py:564
+#: neutron/plugins/nuage/plugin.py:570
 #, python-format
 msgid "No router interface found for Router %s. Router-IF delete failed"
 msgstr ""
 
-#: neutron/plugins/nuage/plugin.py:614
+#: neutron/plugins/nuage/plugin.py:586
 #, python-format
 msgid "Subnet %s has one or more active VMs Router-IF delete not permitted"
 msgstr ""
 
-#: neutron/plugins/nuage/plugin.py:623
+#: neutron/plugins/nuage/plugin.py:595
 #, python-format
 msgid ""
 "Router %s does not hold net_partition assoc on Nuage VSD. Router-IF "
 "delete failed"
 msgstr ""
 
-#: neutron/plugins/nuage/plugin.py:662
+#: neutron/plugins/nuage/plugin.py:633
 msgid ""
 "Either net_partition is not provided with router OR default net_partition"
 " is not created at the start"
 msgstr ""
 
-#: neutron/plugins/nuage/plugin.py:708
+#: neutron/plugins/nuage/plugin.py:674
 msgid "for same subnet, multiple static routes not allowed"
 msgstr ""
 
-#: neutron/plugins/nuage/plugin.py:724
+#: neutron/plugins/nuage/plugin.py:691
 #, python-format
 msgid "Router %s does not hold net-partition assoc on VSD. extra-route failed"
 msgstr ""
 
-#: neutron/plugins/nuage/plugin.py:837
+#: neutron/plugins/nuage/plugin.py:808
 #, python-format
 msgid "One or more router still attached to net_partition %s."
 msgstr ""
 
-#: neutron/plugins/nuage/plugin.py:842
+#: neutron/plugins/nuage/plugin.py:813
 #, python-format
 msgid "NetPartition with %s does not exist"
 msgstr ""
 
-#: neutron/plugins/nuage/plugin.py:888
+#: neutron/plugins/nuage/plugin.py:852
+#, python-format
+msgid "sharedresource %s not found on VSD"
+msgstr ""
+
+#: neutron/plugins/nuage/plugin.py:859 neutron/plugins/nuage/plugin.py:1001
 #, python-format
 msgid "router %s is not associated with any net-partition"
 msgstr ""
 
-#: neutron/plugins/nuage/plugin.py:903
+#: neutron/plugins/nuage/plugin.py:892
 msgid "Floating IP can not be associated to VM in different router context"
 msgstr ""
 
@@ -10433,350 +10545,328 @@ msgstr ""
 msgid "Nuage Plugin does not support this operation: %(msg)s"
 msgstr ""
 
-#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:93
+#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:94
 msgid "Agent terminated!: Failed to get a datapath."
 msgstr ""
 
-#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:112
+#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:113
 msgid "Agent terminated"
 msgstr ""
 
-#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:146
+#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:147
 msgid "Agent failed to create agent config map"
 msgstr ""
 
-#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:273
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1313
+#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:275
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1321
 #, python-format
 msgid "Unable to create tunnel port. Invalid remote IP: %s"
 msgstr ""
 
-#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:278
+#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:280
 #, python-format
 msgid "ryu send_msg() result: %s"
 msgstr ""
 
-#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:329
+#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:331
 #, python-format
 msgid "network_delete received network %s"
 msgstr ""
 
-#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:335
-#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:562
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:293
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:616
-#, python-format
-msgid "Network %s not used on agent."
-msgstr ""
-
-#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:344
-#, python-format
-msgid "port_update received port %s"
-msgstr ""
-
-#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:347
+#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:337
+#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:614
 #: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:305
-msgid "tunnel_update received"
-msgstr ""
-
-#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:353
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:314
-msgid "No tunnel_type specified, cannot create tunnels"
-msgstr ""
-
-#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:356
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:317
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:597
 #, python-format
-msgid "tunnel_type %s not supported by agent"
+msgid "Network %s not used on agent."
 msgstr ""
 
-#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:477
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:524
+#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:529
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:498
 #, python-format
 msgid "No local VLAN available for net-id=%s"
 msgstr ""
 
-#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:480
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:532
+#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:532
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:506
 #, python-format
 msgid "Assigning %(vlan_id)s as local vlan for net-id=%(net_uuid)s"
 msgstr ""
 
-#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:492
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:554
+#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:544
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:535
 #, python-format
 msgid ""
 "Cannot provision %(network_type)s network for net-id=%(net_uuid)s - "
 "tunneling disabled"
 msgstr ""
 
-#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:500
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:573
+#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:552
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:554
 #, python-format
 msgid ""
 "Cannot provision flat network for net-id=%(net_uuid)s - no bridge for "
 "physical_network %(physical_network)s"
 msgstr ""
 
-#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:510
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:593
+#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:562
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:574
 #, python-format
 msgid ""
 "Cannot provision VLAN network for net-id=%(net_uuid)s - no bridge for "
 "physical_network %(physical_network)s"
 msgstr ""
 
-#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:519
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:602
+#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:571
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:583
 #, python-format
 msgid ""
 "Cannot provision unknown network type %(network_type)s for net-"
 "id=%(net_uuid)s"
 msgstr ""
 
-#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:565
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:619
+#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:617
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:600
 #, python-format
 msgid "Reclaiming vlan = %(vlan_id)s from net-id = %(net_uuid)s"
 msgstr ""
 
-#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:599
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:659
+#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:654
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:640
 #, python-format
 msgid ""
 "Cannot reclaim unknown network type %(network_type)s for net-"
 "id=%(net_uuid)s"
 msgstr ""
 
-#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:650
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:705
+#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:705
 #, python-format
 msgid "port_unbound() net_uuid %s not in local_vlan_map"
 msgstr ""
 
-#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:724
+#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:779
 #, python-format
 msgid "ancillary bridge list: %s."
 msgstr ""
 
-#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:814
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:794
+#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:869
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:788
 msgid ""
 "Failed to create OVS patch port. Cannot have tunneling enabled on this "
 "agent, since this version of OVS does not support tunnels or patch ports."
 " Agent terminated!"
 msgstr ""
 
-#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:898
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:909
+#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:953
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:903
 #, python-format
 msgid "Mapping physical network %(physical_network)s to bridge %(bridge)s"
 msgstr ""
 
-#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:904
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:915
+#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:959
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:909
 #, python-format
 msgid ""
 "Bridge %(bridge)s for physical network %(physical_network)s does not "
 "exist. Agent terminated!"
 msgstr ""
 
-#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:975
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1019
+#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:1030
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1013
 #, python-format
 msgid "Port '%(port_name)s' has lost its vlan tag '%(vlan_tag)d'!"
 msgstr ""
 
-#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:1008
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1048
+#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:1063
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1042
 #, python-format
 msgid "VIF port: %s has no ofport configured, and might not be able to transmit"
 msgstr ""
 
-#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:1016
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1058
+#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:1071
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1052
 #, python-format
 msgid "No VIF port for port %s defined on agent."
 msgstr ""
 
-#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:1029
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1071
-#: neutron/tests/unit/ofagent/test_ofa_neutron_agent.py:703
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:849
+#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:1084
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1065
+#: neutron/tests/unit/ofagent/test_ofa_neutron_agent.py:863
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:1216
 msgid "ofport should have a value that can be interpreted as an integer"
 msgstr ""
 
-#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:1032
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1074
-#: neutron/tests/unit/ofagent/test_ofa_neutron_agent.py:686
-#: neutron/tests/unit/ofagent/test_ofa_neutron_agent.py:706
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:832
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:852
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:869
+#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:1087
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1068
+#: neutron/tests/unit/ofagent/test_ofa_neutron_agent.py:846
+#: neutron/tests/unit/ofagent/test_ofa_neutron_agent.py:866
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:1199
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:1219
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:1236
 #, python-format
 msgid "Failed to set-up %(type)s tunnel port to %(ip)s"
 msgstr ""
 
-#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:1082
+#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:1146
 #, python-format
 msgid "Processing port %s"
 msgstr ""
 
-#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:1087
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1129
+#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:1151
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1134
 #, python-format
 msgid ""
 "Port %s was not found on the integration bridge and will therefore not be"
 " processed"
 msgstr ""
 
-#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:1096
-#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:1135
+#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:1160
+#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:1199
 #, python-format
 msgid "Unable to get port details for %(device)s: %(e)s"
 msgstr ""
 
-#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:1113
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1150
+#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:1177
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1157
 #, python-format
 msgid "Setting status for %s to UP"
 msgstr ""
 
-#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:1117
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1154
+#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:1181
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1161
 #, python-format
 msgid "Setting status for %s to DOWN"
 msgstr ""
 
-#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:1120
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1157
+#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:1184
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1164
 #, python-format
 msgid "Configuration for device %s completed."
 msgstr ""
 
-#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:1130
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1175
+#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:1194
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1183
 #, python-format
 msgid "Ancillary Port %s added"
 msgstr ""
 
-#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:1205
+#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:1269
 #, python-format
 msgid ""
 "process_network_ports - iteration:%(iter_num)d - "
 "treat_devices_added_or_updated completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:1213
+#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:1277
 #, python-format
 msgid ""
 "process_network_ports - iteration:%(iter_num)d - treat_devices_removed "
 "completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:1226
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1284
+#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:1290
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1292
 #, python-format
 msgid ""
 "process_ancillary_network_ports - iteration: %(iter_num)d - "
 "treat_ancillary_devices_added completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:1235
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1300
+#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:1299
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1308
 #, python-format
 msgid ""
 "process_ancillary_network_ports - iteration: %(iter_num)d - "
 "treat_ancillary_devices_removed completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:1262
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1342
+#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:1316
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1349
 #, python-format
 msgid "Unable to sync tunnel IP %(local_ip)s: %(e)s"
 msgstr ""
 
-#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:1290
+#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:1344
 #, python-format
 msgid "Agent ovsdb_monitor_loop - iteration:%d started"
 msgstr ""
 
-#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:1301
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1396
+#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:1355
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1408
 msgid "Agent tunnel out of sync with plugin!"
 msgstr ""
 
-#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:1305
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1400
+#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:1359
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1412
 msgid "Error while synchronizing tunnels"
 msgstr ""
 
-#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:1309
+#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:1363
 #, python-format
 msgid ""
 "Agent ovsdb_monitor_loop - iteration:%(iter_num)d - starting polling. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:1322
+#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:1376
 #, python-format
 msgid ""
 "Agent ovsdb_monitor_loop - iteration:%(iter_num)d - port information "
 "retrieved. Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:1332
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1426
+#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:1386
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1438
 #, python-format
 msgid "Starting to process devices in:%s"
 msgstr ""
 
-#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:1336
+#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:1390
 #, python-format
 msgid ""
 "Agent ovsdb_monitor_loop - iteration:%(iter_num)d - ports processed. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:1351
+#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:1405
 #, python-format
 msgid ""
 "Agent ovsdb_monitor_loop - iteration:%(iter_num)d - ancillary port info "
 "retrieved. Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:1361
+#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:1415
 #, python-format
 msgid ""
 "Agent ovsdb_monitor_loop - iteration:%(iter_num)d - ancillary ports "
 "processed. Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:1376
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1469
+#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:1430
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1481
 msgid "Error while processing VIF ports"
 msgstr ""
 
-#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:1383
+#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:1437
 #, python-format
 msgid ""
 "Agent ovsdb_monitor_loop - iteration:%(iter_num)d completed. Processed "
 "ports statistics:%(port_stats)s. Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:1419
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1513
+#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:1473
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1525
 #, python-format
 msgid "Parsing bridge_mappings failed: %s."
 msgstr ""
 
-#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:1442
+#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:1495
 #, python-format
 msgid "Invalid tunnel type specificed: %s"
 msgstr ""
 
-#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:1445
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1540
+#: neutron/plugins/ofagent/agent/ofa_neutron_agent.py:1498
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1553
 msgid "Tunneling cannot be enabled without a valid local_ip."
 msgstr ""
 
@@ -11102,65 +11192,103 @@ msgstr ""
 msgid "Unable to generate a new tunnel id"
 msgstr ""
 
-#: neutron/plugins/openvswitch/ovs_neutron_plugin.py:307
+#: neutron/plugins/openvswitch/ovs_neutron_plugin.py:308
 #, python-format
 msgid "Invalid tenant_network_type: %s. Server terminated!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/ovs_neutron_plugin.py:324
+#: neutron/plugins/openvswitch/ovs_neutron_plugin.py:325
 #, python-format
 msgid "Tunneling disabled but tenant_network_type is '%s'. Server terminated!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/ovs_neutron_plugin.py:370
+#: neutron/plugins/openvswitch/ovs_neutron_plugin.py:371
 #, python-format
 msgid "Invalid tunnel ID range: '%(range)s' - %(e)s. Server terminated!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/ovs_neutron_plugin.py:374
+#: neutron/plugins/openvswitch/ovs_neutron_plugin.py:375
 #, python-format
 msgid "Tunnel ID ranges: %s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/ovs_neutron_plugin.py:429
+#: neutron/plugins/openvswitch/ovs_neutron_plugin.py:430
 #, python-format
 msgid "%s networks are not enabled"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:57
+#: neutron/plugins/openvswitch/agent/ovs_dvr_neutron_agent.py:158
+msgid "DVR: Failed to obtain local DVR Mac address"
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_dvr_neutron_agent.py:291
+#, python-format
+msgid "DVR: Duplicate DVR router interface detected for subnet %s"
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_dvr_neutron_agent.py:299
+#, python-format
+msgid "DVR: Unable to retrieve subnet information for subnet_id %s"
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_dvr_neutron_agent.py:458
+#, python-format
+msgid "Centralized-SNAT port %s already seen on "
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_dvr_neutron_agent.py:460
+#, python-format
+msgid "a different subnet %s"
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:59
 #, python-format
 msgid ""
 "Unable to retrieve port details for devices: %(devices)s because of "
 "error: %(error)s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:238
-msgid "OVS version can not support ARP responder."
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:314
+#, python-format
+msgid "port_update message processed for port %s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:302
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:317
+msgid "tunnel_update received"
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:326
+msgid "No tunnel_type specified, cannot create tunnels"
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:329
 #, python-format
-msgid "port_update message processed for port %s"
+msgid "tunnel_type %s not supported by agent"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:503
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:477
 #, python-format
 msgid "Action %s not supported"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:773
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:694
+#, python-format
+msgid "port_unbound(): net_uuid %s not in local_vlan_map"
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:767
 #, python-format
 msgid "Adding %s to list of bridges."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:888
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:882
 #, python-format
 msgid ""
 "Creating an interface named %(name)s exceeds the %(limit)d character "
 "limitation. It was shortened to %(new_name)s to fit."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1247
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1255
 #, python-format
 msgid ""
 "process_network_ports - iteration:%(iter_num)d "
@@ -11169,75 +11297,75 @@ msgid ""
 "%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1263
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1271
 #, python-format
 msgid ""
 "process_network_ports - iteration:%d - failure while retrieving port "
 "details from server"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1270
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1278
 #, python-format
 msgid ""
 "process_network_ports - iteration:%(iter_num)d -treat_devices_removed "
 "completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1292
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1300
 #, python-format
 msgid ""
 "process_ancillary_network_ports - iteration:%d - failure while retrieving"
 " port details from server"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1379
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1386
 #, python-format
 msgid "Agent rpc_loop - iteration:%d started"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1404
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1416
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - starting polling. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1416
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1428
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - port information retrieved. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1431
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1443
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d -ports processed. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1446
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1458
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d -ancillary port info retrieved. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1455
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1467
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - ancillary ports processed. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1476
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1488
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d completed. Processed ports "
 "statistics: %(port_stats)s. Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1537
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1550
 #, python-format
 msgid "Invalid tunnel type specified: %s"
 msgstr ""
@@ -11500,6 +11628,128 @@ msgstr ""
 msgid "Transaction retry exhausted (%d). Abandoned tunnel key allocation."
 msgstr ""
 
+#: neutron/plugins/sriovnicagent/eswitch_manager.py:46
+#, python-format
+msgid "Failed to get devices for %s"
+msgstr ""
+
+#: neutron/plugins/sriovnicagent/eswitch_manager.py:48
+msgid "Device not found"
+msgstr ""
+
+#: neutron/plugins/sriovnicagent/eswitch_manager.py:62
+msgid "Device has no virtual functions"
+msgstr ""
+
+#: neutron/plugins/sriovnicagent/eswitch_manager.py:141
+#: neutron/plugins/sriovnicagent/eswitch_manager.py:154
+#, python-format
+msgid "Cannot find vf index for pci slot %s"
+msgstr ""
+
+#: neutron/plugins/sriovnicagent/eswitch_manager.py:279
+#, python-format
+msgid "device pci mismatch: %(device_mac)s - %(pci_slot)s"
+msgstr ""
+
+#: neutron/plugins/sriovnicagent/pci_lib.py:58
+#: neutron/plugins/sriovnicagent/pci_lib.py:81
+#: neutron/plugins/sriovnicagent/pci_lib.py:108
+msgid "Failed executing ip command"
+msgstr ""
+
+#: neutron/plugins/sriovnicagent/pci_lib.py:129
+#, python-format
+msgid "Cannot find vfs %(vfs)s in device %(dev_name)s"
+msgstr ""
+
+#: neutron/plugins/sriovnicagent/pci_lib.py:145
+#, python-format
+msgid "failed to parse vf link show line %(line)s: for %(device)s"
+msgstr ""
+
+#: neutron/plugins/sriovnicagent/sriov_nic_agent.py:181
+#, python-format
+msgid "Failed to set device %s state"
+msgstr ""
+
+#: neutron/plugins/sriovnicagent/sriov_nic_agent.py:195
+#, python-format
+msgid "No device with MAC %s defined on agent."
+msgstr ""
+
+#: neutron/plugins/sriovnicagent/sriov_nic_agent.py:220
+#, python-format
+msgid "Device with MAC %s not defined on plugin"
+msgstr ""
+
+#: neutron/plugins/sriovnicagent/sriov_nic_agent.py:247
+msgid "SRIOV NIC Agent RPC Daemon Started!"
+msgstr ""
+
+#: neutron/plugins/sriovnicagent/sriov_nic_agent.py:317
+#, python-format
+msgid "Device name %(dev_name)s is missing from physical_device_mappings"
+msgstr ""
+
+#: neutron/plugins/sriovnicagent/sriov_nic_agent.py:333
+#, python-format
+msgid "Failed on Agent configuration parse : %s. Agent terminated!"
+msgstr ""
+
+#: neutron/plugins/sriovnicagent/sriov_nic_agent.py:336
+#, python-format
+msgid "Physical Devices mappings: %s"
+msgstr ""
+
+#: neutron/plugins/sriovnicagent/sriov_nic_agent.py:337
+#, python-format
+msgid "Exclude Devices: %s"
+msgstr ""
+
+#: neutron/plugins/sriovnicagent/sriov_nic_agent.py:347
+msgid "Agent Initialization Failed"
+msgstr ""
+
+#: neutron/plugins/sriovnicagent/common/config.py:41
+#, python-format
+msgid "Device %(dev_name)s in mapping: %(mapping)s not unique"
+msgstr ""
+
+#: neutron/plugins/sriovnicagent/common/config.py:65
+msgid ""
+"List of <physical_network>:<network_device> mapping physical network "
+"names to the agent's node-specific physical network device of SR-IOV "
+"physical function to be used for VLAN networks. All physical networks "
+"listed in network_vlan_ranges on the server should have mappings to "
+"appropriate interfaces on each agent"
+msgstr ""
+
+#: neutron/plugins/sriovnicagent/common/config.py:74
+msgid ""
+"List of <network_device>:<excluded_devices> mapping network_device to the"
+" agent's node-specific list of virtual functions that should not be used "
+"for virtual networking. excluded_devices is a semicolon separated list of"
+" virtual functions (BDF format).to exclude from network_device. The "
+"network_device in the mapping should appear in the "
+"physical_device_mappings list."
+msgstr ""
+
+#: neutron/plugins/sriovnicagent/common/exceptions.py:24
+#, python-format
+msgid "Invalid Device %(dev_name)s: %(reason)s"
+msgstr ""
+
+#: neutron/plugins/sriovnicagent/common/exceptions.py:28
+#, python-format
+msgid "ip command failed on device %(dev_name)s: %(reason)s"
+msgstr ""
+
+#: neutron/plugins/sriovnicagent/common/exceptions.py:32
+#, python-format
+msgid "Invalid pci slot %(pci_slot)s"
+msgstr ""
+
 #: neutron/plugins/vmware/check_nsx_config.py:45
 #: neutron/plugins/vmware/check_nsx_config.py:80
 #, python-format
@@ -12964,7 +13214,6 @@ msgid ""
 msgstr ""
 
 #: neutron/plugins/vmware/plugins/base.py:535
-#: neutron/plugins/vmware/plugins/base.py:1024
 #, python-format
 msgid ""
 "Ignoring exception as this means the peer for port '%s' has already been "
@@ -13005,13 +13254,13 @@ msgid ""
 msgstr ""
 
 #: neutron/plugins/vmware/plugins/base.py:671
-#: neutron/plugins/vmware/plugins/base.py:1769
+#: neutron/plugins/vmware/plugins/base.py:1737
 #, python-format
 msgid "Logical router resource %s not found on NSX platform"
 msgstr ""
 
 #: neutron/plugins/vmware/plugins/base.py:675
-#: neutron/plugins/vmware/plugins/base.py:1773
+#: neutron/plugins/vmware/plugins/base.py:1741
 msgid "Unable to update logical routeron NSX Platform"
 msgstr ""
 
@@ -13029,284 +13278,271 @@ msgid ""
 "%(network_id)s. The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/vmware/plugins/base.py:761
+#: neutron/plugins/vmware/plugins/base.py:763
 #, python-format
 msgid "%s required"
 msgstr ""
 
-#: neutron/plugins/vmware/plugins/base.py:766
+#: neutron/plugins/vmware/plugins/base.py:768
 msgid "Segmentation ID cannot be specified with flat network type"
 msgstr ""
 
-#: neutron/plugins/vmware/plugins/base.py:770
+#: neutron/plugins/vmware/plugins/base.py:772
 msgid "Segmentation ID must be specified with vlan network type"
 msgstr ""
 
-#: neutron/plugins/vmware/plugins/base.py:774
-#: neutron/plugins/vmware/plugins/base.py:790
+#: neutron/plugins/vmware/plugins/base.py:776
+#: neutron/plugins/vmware/plugins/base.py:792
 #, python-format
 msgid "%(segmentation_id)s out of range (%(min_id)s through %(max_id)s)"
 msgstr ""
 
-#: neutron/plugins/vmware/plugins/base.py:796
+#: neutron/plugins/vmware/plugins/base.py:798
 #, python-format
 msgid "%(net_type_param)s %(net_type_value)s not supported"
 msgstr ""
 
-#: neutron/plugins/vmware/plugins/base.py:841
+#: neutron/plugins/vmware/plugins/base.py:843
 #, python-format
 msgid "No switch has available ports (%d checked)"
 msgstr ""
 
-#: neutron/plugins/vmware/plugins/base.py:875
+#: neutron/plugins/vmware/plugins/base.py:877
 #, python-format
 msgid "Maximum number of logical ports reached for logical network %s"
 msgstr ""
 
-#: neutron/plugins/vmware/plugins/base.py:921
+#: neutron/plugins/vmware/plugins/base.py:923
 #, python-format
 msgid ""
 "Network with admin_state_up=False are not yet supported by this plugin. "
 "Ignoring setting for network %s"
 msgstr ""
 
-#: neutron/plugins/vmware/plugins/base.py:1013
+#: neutron/plugins/vmware/plugins/base.py:1001
 #, python-format
-msgid ""
-"A nsx lport identifier was not found for neutron port '%s'. Unable to "
-"remove the peer router port for this switch port"
-msgstr ""
-
-#: neutron/plugins/vmware/plugins/base.py:1032
-#, python-format
-msgid "delete_network completed for tenant: %s"
+msgid "The following logical switches were not found on the NSX backend:%s"
 msgstr ""
 
-#: neutron/plugins/vmware/plugins/base.py:1035
-#: neutron/plugins/vmware/plugins/service.py:541
-#, python-format
-msgid "Did not found lswitch %s in NSX"
-msgstr ""
-
-#: neutron/plugins/vmware/plugins/base.py:1070
+#: neutron/plugins/vmware/plugins/base.py:1038
 msgid "admin_state_up=False networks are not supported."
 msgstr ""
 
-#: neutron/plugins/vmware/plugins/base.py:1090
+#: neutron/plugins/vmware/plugins/base.py:1058
 #, python-format
 msgid "Unable to find NSX mappings for neutron network:%s"
 msgstr ""
 
-#: neutron/plugins/vmware/plugins/base.py:1097
+#: neutron/plugins/vmware/plugins/base.py:1065
 #, python-format
 msgid ""
 "Logical switch update on NSX backend failed. Neutron network "
 "id:%(net_id)s; NSX lswitch id:%(lswitch_id)s;Error:%(error)s"
 msgstr ""
 
-#: neutron/plugins/vmware/plugins/base.py:1168
+#: neutron/plugins/vmware/plugins/base.py:1136
 #, python-format
 msgid "port created on NSX backend for tenant %(tenant_id)s: (%(id)s)"
 msgstr ""
 
-#: neutron/plugins/vmware/plugins/base.py:1171
+#: neutron/plugins/vmware/plugins/base.py:1139
 #, python-format
 msgid "Logical switch for network %s was not found in NSX."
 msgstr ""
 
-#: neutron/plugins/vmware/plugins/base.py:1182
+#: neutron/plugins/vmware/plugins/base.py:1150
 msgid "Unable to create port or set port attachment in NSX."
 msgstr ""
 
-#: neutron/plugins/vmware/plugins/base.py:1270
+#: neutron/plugins/vmware/plugins/base.py:1238
 #, python-format
 msgid "Updating port: %s"
 msgstr ""
 
-#: neutron/plugins/vmware/plugins/base.py:1305
+#: neutron/plugins/vmware/plugins/base.py:1273
 #, python-format
 msgid "Unable to update port id: %s."
 msgstr ""
 
-#: neutron/plugins/vmware/plugins/base.py:1388
+#: neutron/plugins/vmware/plugins/base.py:1356
 msgid ""
 "Cannot create a distributed router with the NSX platform currently in "
 "execution. Please, try without specifying the 'distributed' attribute."
 msgstr ""
 
-#: neutron/plugins/vmware/plugins/base.py:1394
+#: neutron/plugins/vmware/plugins/base.py:1362
 msgid "Unable to create logical router on NSX Platform"
 msgstr ""
 
-#: neutron/plugins/vmware/plugins/base.py:1405
+#: neutron/plugins/vmware/plugins/base.py:1373
 #, python-format
 msgid ""
 "Unable to create L3GW port on logical router %(router_uuid)s. Verify "
 "Default Layer-3 Gateway service %(def_l3_gw_svc)s id is correct"
 msgstr ""
 
-#: neutron/plugins/vmware/plugins/base.py:1415
+#: neutron/plugins/vmware/plugins/base.py:1383
 #, python-format
 msgid "Unable to create router %s on NSX backend"
 msgstr ""
 
-#: neutron/plugins/vmware/plugins/base.py:1444
-#: neutron/plugins/vmware/plugins/base.py:1529
+#: neutron/plugins/vmware/plugins/base.py:1412
+#: neutron/plugins/vmware/plugins/base.py:1497
 #: neutron/plugins/vmware/plugins/service.py:201
 #: neutron/plugins/vmware/plugins/service.py:1240
 #, python-format
 msgid "Network '%s' is not a valid external network"
 msgstr ""
 
-#: neutron/plugins/vmware/plugins/base.py:1493
+#: neutron/plugins/vmware/plugins/base.py:1461
 #, python-format
 msgid "Failed to set gateway info for router being created:%s - removing router"
 msgstr ""
 
-#: neutron/plugins/vmware/plugins/base.py:1496
+#: neutron/plugins/vmware/plugins/base.py:1464
 #, python-format
 msgid ""
 "Create router failed while setting external gateway. Router:%s has been "
 "removed from DB and backend"
 msgstr ""
 
-#: neutron/plugins/vmware/plugins/base.py:1538
+#: neutron/plugins/vmware/plugins/base.py:1506
 msgid ""
 "'routes' cannot contain route '0.0.0.0/0', this must be updated through "
 "the default gateway attribute"
 msgstr ""
 
-#: neutron/plugins/vmware/plugins/base.py:1554
+#: neutron/plugins/vmware/plugins/base.py:1522
 #, python-format
 msgid "Logical router %s not found on NSX Platform"
 msgstr ""
 
-#: neutron/plugins/vmware/plugins/base.py:1558
+#: neutron/plugins/vmware/plugins/base.py:1526
 msgid "Unable to update logical router on NSX Platform"
 msgstr ""
 
-#: neutron/plugins/vmware/plugins/base.py:1560
+#: neutron/plugins/vmware/plugins/base.py:1528
 msgid ""
 "Request cannot contain 'routes' with the NSX platform currently in "
 "execution. Please, try without specifying the static routes."
 msgstr ""
 
-#: neutron/plugins/vmware/plugins/base.py:1617
+#: neutron/plugins/vmware/plugins/base.py:1585
 #, python-format
 msgid "Logical router '%s' not found on NSX Platform"
 msgstr ""
 
-#: neutron/plugins/vmware/plugins/base.py:1621
+#: neutron/plugins/vmware/plugins/base.py:1589
 #, python-format
 msgid "Unable to delete logical router '%s' on NSX Platform"
 msgstr ""
 
-#: neutron/plugins/vmware/plugins/base.py:1631
+#: neutron/plugins/vmware/plugins/base.py:1599
 #, python-format
 msgid ""
 "Unable to remove NSX mapping for Neutron router %(router_id)s because of "
 "the following exception:%(d_exc)s"
 msgstr ""
 
-#: neutron/plugins/vmware/plugins/base.py:1706
+#: neutron/plugins/vmware/plugins/base.py:1674
 #, python-format
 msgid ""
 "Add_router_interface completed for subnet:%(subnet_id)s and "
 "router:%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/vmware/plugins/base.py:1805
+#: neutron/plugins/vmware/plugins/base.py:1773
 #, python-format
 msgid ""
 "An error occurred while removing NAT rules on the NSX platform for "
 "floating ip:%s"
 msgstr ""
 
-#: neutron/plugins/vmware/plugins/base.py:1810
+#: neutron/plugins/vmware/plugins/base.py:1778
 msgid "An incorrect number of matching NAT rules was found on the NSX platform"
 msgstr ""
 
-#: neutron/plugins/vmware/plugins/base.py:1950
+#: neutron/plugins/vmware/plugins/base.py:1918
 #, python-format
 msgid ""
 "An error occurred while creating NAT rules on the NSX platform for "
 "floating ip:%(floating_ip)s mapped to internal ip:%(internal_ip)s"
 msgstr ""
 
-#: neutron/plugins/vmware/plugins/base.py:1956
+#: neutron/plugins/vmware/plugins/base.py:1924
 msgid "Failed to update NAT rules for floatingip update"
 msgstr ""
 
-#: neutron/plugins/vmware/plugins/base.py:1995
+#: neutron/plugins/vmware/plugins/base.py:1963
 #, python-format
 msgid "The port '%s' is not associated with floating IPs"
 msgstr ""
 
-#: neutron/plugins/vmware/plugins/base.py:1998
+#: neutron/plugins/vmware/plugins/base.py:1966
 #, python-format
 msgid "Nat rules not found in nsx for port: %s"
 msgstr ""
 
-#: neutron/plugins/vmware/plugins/base.py:2034
+#: neutron/plugins/vmware/plugins/base.py:2006
 #, python-format
 msgid "Unable to create l2_gw_service for: %s"
 msgstr ""
 
-#: neutron/plugins/vmware/plugins/base.py:2057
+#: neutron/plugins/vmware/plugins/base.py:2029
 msgid ""
 "Unable to remove gateway service from NSX plaform - the resource was not "
 "found"
 msgstr ""
 
-#: neutron/plugins/vmware/plugins/base.py:2086
+#: neutron/plugins/vmware/plugins/base.py:2058
 #, python-format
 msgid "Unable to update name on NSX backend for network gateway: %s"
 msgstr ""
 
-#: neutron/plugins/vmware/plugins/base.py:2115
+#: neutron/plugins/vmware/plugins/base.py:2087
 #, python-format
 msgid ""
 "Rolling back database changes for gateway device %s because of an error "
 "in the NSX backend"
 msgstr ""
 
-#: neutron/plugins/vmware/plugins/base.py:2160
-#: neutron/plugins/vmware/plugins/base.py:2198
+#: neutron/plugins/vmware/plugins/base.py:2132
+#: neutron/plugins/vmware/plugins/base.py:2170
 #, python-format
 msgid ""
 "Neutron gateway device: %(neutron_id)s; NSX transport node identifier: "
 "%(nsx_id)s; Operational status: %(status)s."
 msgstr ""
 
-#: neutron/plugins/vmware/plugins/base.py:2295
+#: neutron/plugins/vmware/plugins/base.py:2267
 #, python-format
 msgid ""
 "Removal of gateway device: %(neutron_id)s failed on NSX backend (NSX "
 "id:%(nsx_id)s) because the NSX resource was not found"
 msgstr ""
 
-#: neutron/plugins/vmware/plugins/base.py:2302
+#: neutron/plugins/vmware/plugins/base.py:2274
 #, python-format
 msgid ""
 "Removal of gateway device: %(neutron_id)s failed on NSX backend (NSX "
 "id:%(nsx_id)s). Neutron and NSX states have diverged."
 msgstr ""
 
-#: neutron/plugins/vmware/plugins/base.py:2350
+#: neutron/plugins/vmware/plugins/base.py:2322
 #, python-format
 msgid ""
 "Error while updating security profile %(uuid)s with name %(name)s: "
 "%(error)s."
 msgstr ""
 
-#: neutron/plugins/vmware/plugins/base.py:2382
+#: neutron/plugins/vmware/plugins/base.py:2354
 #, python-format
 msgid ""
 "The NSX security profile %(sec_profile_id)s, associated with the Neutron "
 "security group %(sec_group_id)s was not found on the backend"
 msgstr ""
 
-#: neutron/plugins/vmware/plugins/base.py:2390
+#: neutron/plugins/vmware/plugins/base.py:2362
 #, python-format
 msgid ""
 "An exception occurred while removing the NSX security profile "
@@ -13314,12 +13550,12 @@ msgid ""
 "%(sec_group_id)s"
 msgstr ""
 
-#: neutron/plugins/vmware/plugins/base.py:2397
+#: neutron/plugins/vmware/plugins/base.py:2369
 #, python-format
 msgid "Unable to remove security group %s from backend"
 msgstr ""
 
-#: neutron/plugins/vmware/plugins/base.py:2410
+#: neutron/plugins/vmware/plugins/base.py:2382
 #, python-format
 msgid "Port values not valid for protocol: %s"
 msgstr ""
@@ -13362,6 +13598,11 @@ msgstr ""
 msgid "Unable to create advance service router for %s"
 msgstr ""
 
+#: neutron/plugins/vmware/plugins/service.py:541
+#, python-format
+msgid "Did not found lswitch %s in NSX"
+msgstr ""
+
 #: neutron/plugins/vmware/plugins/service.py:887
 #, python-format
 msgid "Failed to create firewall on vShield Edge bound on router %s"
@@ -14120,45 +14361,36 @@ msgstr ""
 msgid "DHCP agent %s is not active"
 msgstr ""
 
-#: neutron/scheduler/l3_agent_scheduler.py:63
+#: neutron/scheduler/l3_agent_scheduler.py:74
 #, python-format
 msgid "No enabled L3 agent on host %s"
 msgstr ""
 
-#: neutron/scheduler/l3_agent_scheduler.py:68
+#: neutron/scheduler/l3_agent_scheduler.py:79
 #, python-format
 msgid "L3 agent %s is not active"
 msgstr ""
 
-#: neutron/scheduler/l3_agent_scheduler.py:76
-#: neutron/scheduler/l3_agent_scheduler.py:127
+#: neutron/scheduler/l3_agent_scheduler.py:89
+#: neutron/scheduler/l3_agent_scheduler.py:149
 #, python-format
 msgid "Router %(router_id)s has already been hosted by L3 agent %(agent_id)s"
 msgstr ""
 
-#: neutron/scheduler/l3_agent_scheduler.py:95
+#: neutron/scheduler/l3_agent_scheduler.py:108
 msgid "No non-hosted routers"
 msgstr ""
 
-#: neutron/scheduler/l3_agent_scheduler.py:109
+#: neutron/scheduler/l3_agent_scheduler.py:126
 #, python-format
 msgid "No routers compatible with L3 agent configuration on host %s"
 msgstr ""
 
-#: neutron/scheduler/l3_agent_scheduler.py:135
-msgid "No active L3 agents"
-msgstr ""
-
-#: neutron/scheduler/l3_agent_scheduler.py:140
+#: neutron/scheduler/l3_agent_scheduler.py:170
 #, python-format
 msgid "No L3 agents can host the router %s"
 msgstr ""
 
-#: neutron/scheduler/l3_agent_scheduler.py:153
-#, python-format
-msgid "Router %(router_id)s is scheduled to L3 agent %(agent_id)s"
-msgstr ""
-
 #: neutron/server/__init__.py:42
 msgid ""
 "ERROR: Unable to find configuration file via the default search paths "
@@ -14804,33 +15036,33 @@ msgstr ""
 msgid "Location to store config and state files"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:52
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:53
 msgid "The user group"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:58
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:59
 msgid ""
 "When delete and re-add the same vip, send this many gratuitous ARPs to "
 "flush the ARP cache in the Router. Set it below or equal to 0 to disable "
 "this feature."
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:75
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:76
 #, python-format
 msgid "Error importing interface driver: %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:171
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:172
 #, python-format
 msgid "Stats socket not found for pool %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:213
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:214
 #, python-format
 msgid "Error while connecting to stats socket: %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:392
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:393
 #, python-format
 msgid "Unable to kill haproxy process: %s"
 msgstr ""
@@ -15727,18 +15959,13 @@ msgstr ""
 msgid "Removed mapping for connection %s"
 msgstr ""
 
-#: neutron/services/vpn/service_drivers/cisco_ipsec.py:39
+#: neutron/services/vpn/service_drivers/cisco_validator.py:34
 #, python-format
 msgid ""
 "Cisco CSR does not support %(resource)s attribute %(key)s with value "
 "'%(value)s'"
 msgstr ""
 
-#: neutron/services/vpn/service_drivers/cisco_ipsec.py:160
-#, python-format
-msgid "IPSec connection %s validated for Cisco CSR"
-msgstr ""
-
 #: neutron/tests/unit/test_api_v2_resource.py:174
 #: neutron/tests/unit/test_api_v2_resource.py:244
 msgid "Unmapped error"
@@ -15766,10 +15993,10 @@ msgstr ""
 msgid "No host cert for %(server)s in cert %(cert)s"
 msgstr ""
 
-#: neutron/tests/unit/db/loadbalancer/test_db_loadbalancer.py:217
-#: neutron/tests/unit/db/loadbalancer/test_db_loadbalancer.py:239
-#: neutron/tests/unit/db/loadbalancer/test_db_loadbalancer.py:258
-#: neutron/tests/unit/db/loadbalancer/test_db_loadbalancer.py:281
+#: neutron/tests/unit/db/loadbalancer/test_db_loadbalancer.py:219
+#: neutron/tests/unit/db/loadbalancer/test_db_loadbalancer.py:241
+#: neutron/tests/unit/db/loadbalancer/test_db_loadbalancer.py:260
+#: neutron/tests/unit/db/loadbalancer/test_db_loadbalancer.py:283
 #, python-format
 msgid "Unexpected error code: %s"
 msgstr ""
diff --git a/neutron/locale/te_IN/LC_MESSAGES/neutron-log-critical.po b/neutron/locale/te_IN/LC_MESSAGES/neutron-log-critical.po
new file mode 100644 (file)
index 0000000..0019923
--- /dev/null
@@ -0,0 +1,21 @@
+# Translations template for neutron.
+# Copyright (C) 2014 ORGANIZATION
+# This file is distributed under the same license as the neutron project.
+#
+# Translators:
+# rajeshmalisettty <venkatarajesh.malisetty@gmail.com>, 2014
+msgid ""
+msgstr ""
+"Project-Id-Version: Neutron\n"
+"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
+"POT-Creation-Date: 2014-08-01 06:06+0000\n"
+"PO-Revision-Date: 2014-07-31 15:31+0000\n"
+"Last-Translator: rajeshmalisettty <venkatarajesh.malisetty@gmail.com>\n"
+"Language-Team: Telugu (India) (http://www.transifex.com/projects/p/neutron/"
+"language/te_IN/)\n"
+"Language: te_IN\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Generated-By: Babel 1.3\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
diff --git a/neutron/locale/te_IN/LC_MESSAGES/neutron-log-error.po b/neutron/locale/te_IN/LC_MESSAGES/neutron-log-error.po
new file mode 100644 (file)
index 0000000..266d692
--- /dev/null
@@ -0,0 +1,64 @@
+# Translations template for neutron.
+# Copyright (C) 2014 ORGANIZATION
+# This file is distributed under the same license as the neutron project.
+#
+# Translators:
+# rajeshmalisettty <venkatarajesh.malisetty@gmail.com>, 2014
+msgid ""
+msgstr ""
+"Project-Id-Version: Neutron\n"
+"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
+"POT-Creation-Date: 2014-08-01 06:06+0000\n"
+"PO-Revision-Date: 2014-07-29 10:41+0000\n"
+"Last-Translator: rajeshmalisettty <venkatarajesh.malisetty@gmail.com>\n"
+"Language-Team: Telugu (India) (http://www.transifex.com/projects/p/neutron/"
+"language/te_IN/)\n"
+"Language: te_IN\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Generated-By: Babel 1.3\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+
+#: neutron/policy.py:115
+#, python-format
+msgid ""
+"Backward compatibility unavailable for deprecated policy %s. The policy will "
+"not be enforced"
+msgstr "నిరాశపర్చింది విధానం %s కోసం అందుబాటులో వెనుకబడిన అనుకూలత. విధానం అమలు చేయబడదు"
+
+#: neutron/policy.py:280
+#, python-format
+msgid "Policy check error while calling %s!"
+msgstr "పాలసీ చెక్ లోపం %s కాల్ఐంది !"
+
+#: neutron/cmd/sanity_check.py:58
+msgid ""
+"Nova notifications are enabled, but novaclient is not installed. Either "
+"disable nova notifications or install python-novaclient."
+msgstr ""
+"నోవా నోటిఫికేషన్లను ప్రారంభించి, కానీ novaclient ఇన్స్టాల్ కాలేదు. గాని డిసేబుల్ నోవా నోటిఫికేషన్లు లేదా "
+"python-novaclient ఇన్స్టాల్."
+
+#: neutron/openstack/common/excutils.py:76
+#, python-format
+msgid "Original exception being dropped: %s"
+msgstr "అసలు మినహాయింపు ఔటైన:%s"
+
+#: neutron/openstack/common/excutils.py:105
+#, python-format
+msgid "Unexpected exception occurred %d time(s)... retrying."
+msgstr "ఊహించని మినహాయింపు%d సమయం (s) ఏర్పడింది ... ప్రయత్నించడానికి"
+
+#: neutron/openstack/common/periodic_task.py:202
+#, python-format
+msgid "Error during %(full_task_name)s: %(e)s"
+msgstr "సమయంలో లోపం %(full_task_name)s: %(e)s"
+
+#: neutron/openstack/common/service.py:188
+msgid "Exception during rpc cleanup."
+msgstr "RPC క్లీనప్ సమయంలో మినహాయింపు."
+
+#: neutron/openstack/common/service.py:277
+msgid "Unhandled exception"
+msgstr "నిర్వహించని మినహాయింపు"
diff --git a/neutron/locale/te_IN/LC_MESSAGES/neutron-log-info.po b/neutron/locale/te_IN/LC_MESSAGES/neutron-log-info.po
new file mode 100644 (file)
index 0000000..5527d40
--- /dev/null
@@ -0,0 +1,89 @@
+# Translations template for neutron.
+# Copyright (C) 2014 ORGANIZATION
+# This file is distributed under the same license as the neutron project.
+#
+# Translators:
+# rajeshmalisettty <venkatarajesh.malisetty@gmail.com>, 2014
+msgid ""
+msgstr ""
+"Project-Id-Version: Neutron\n"
+"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
+"POT-Creation-Date: 2014-08-01 06:06+0000\n"
+"PO-Revision-Date: 2014-07-31 16:11+0000\n"
+"Last-Translator: rajeshmalisettty <venkatarajesh.malisetty@gmail.com>\n"
+"Language-Team: Telugu (India) (http://www.transifex.com/projects/p/neutron/"
+"language/te_IN/)\n"
+"Language: te_IN\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Generated-By: Babel 1.3\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+
+#: neutron/policy.py:106
+#, python-format
+msgid ""
+"Inserting policy:%(new_policy)s in place of deprecated policy:%(old_policy)s"
+msgstr "చేర్చడం విధానం:%(new_policy)s నిరాశపర్చింది విధానం స్థానంలో :%(old_policy)s"
+
+#: neutron/openstack/common/periodic_task.py:126
+#, python-format
+msgid "Skipping periodic task %(task)s because its interval is negative"
+msgstr "దాని విరామం ప్రతికూల ఎందుకంటే ఆవర్తన పని %(task)s దాటవేయడం"
+
+#: neutron/openstack/common/periodic_task.py:131
+#, python-format
+msgid "Skipping periodic task %(task)s because it is disabled"
+msgstr "అది అసాధ్యమని ఎందుకంటే ఆవర్తన పని %(task)s దాటవేయడం"
+
+#: neutron/openstack/common/service.py:176
+#, python-format
+msgid "Caught %s, exiting"
+msgstr "%s క్యాచ్ నిష్క్రమించే"
+
+#: neutron/openstack/common/service.py:240
+msgid "Parent process has died unexpectedly, exiting"
+msgstr "parrent  ప్రక్రియ నిష్క్రమించే, అనుకోకుండా మరణించాడు,"
+
+#: neutron/openstack/common/service.py:271
+#, python-format
+msgid "Child caught %s, exiting"
+msgstr "చైల్డ్ నిష్క్రమించే,%s క్యాచ్"
+
+#: neutron/openstack/common/service.py:310
+msgid "Forking too fast, sleeping"
+msgstr "Forking చాలా వేగంగా, పడుకుంది "
+
+#: neutron/openstack/common/service.py:329
+#, python-format
+msgid "Started child %d"
+msgstr "మొదలైంది పిల్లల%d"
+
+#: neutron/openstack/common/service.py:339
+#, python-format
+msgid "Starting %d workers"
+msgstr "%d కార్మికులు ప్రారంభిస్తోంది"
+
+#: neutron/openstack/common/service.py:356
+#, python-format
+msgid "Child %(pid)d killed by signal %(sig)d"
+msgstr "చైల్డ్ %(pid)d సిగ్నల్ ద్వారా హత్య %(sig)d"
+
+#: neutron/openstack/common/service.py:360
+#, python-format
+msgid "Child %(pid)s exited with status %(code)d"
+msgstr "చైల్డ్ %(pid)s స్థితి తో నిష్క్రమించారు %(code)d  "
+
+#: neutron/openstack/common/service.py:399
+#, python-format
+msgid "Caught %s, stopping children"
+msgstr " పిల్లలు ఆపటం %s దోరికిను "
+
+#: neutron/openstack/common/service.py:408
+msgid "Wait called after thread killed.  Cleaning up."
+msgstr "థ్రెడ్ మృతి తర్వాత అని వేచి. క్లీనింగ్ అప్."
+
+#: neutron/openstack/common/service.py:424
+#, python-format
+msgid "Waiting on %d children to exit"
+msgstr "%d పిల్లల వెయిటింగ్ నిష్క్రమణ"
diff --git a/neutron/locale/te_IN/LC_MESSAGES/neutron-log-warning.po b/neutron/locale/te_IN/LC_MESSAGES/neutron-log-warning.po
new file mode 100644 (file)
index 0000000..20700d4
--- /dev/null
@@ -0,0 +1,39 @@
+# Translations template for neutron.
+# Copyright (C) 2014 ORGANIZATION
+# This file is distributed under the same license as the neutron project.
+#
+# Translators:
+# rajeshmalisettty <venkatarajesh.malisetty@gmail.com>, 2014
+msgid ""
+msgstr ""
+"Project-Id-Version: Neutron\n"
+"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
+"POT-Creation-Date: 2014-08-01 06:06+0000\n"
+"PO-Revision-Date: 2014-07-23 14:51+0000\n"
+"Last-Translator: rajeshmalisettty <venkatarajesh.malisetty@gmail.com>\n"
+"Language-Team: Telugu (India) (http://www.transifex.com/projects/p/neutron/"
+"language/te_IN/)\n"
+"Language: te_IN\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Generated-By: Babel 1.3\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+
+#: neutron/policy.py:94
+#, python-format
+msgid ""
+"Found deprecated policy rule:%s. Please consider upgrading your policy "
+"configuration file"
+msgstr ""
+"చూపిస్తున్న డీప్రికేటెడ్ విధాన నియమం:%s. మీ విధానం ఆకృతీకరణ ఫైలు అప్గ్రేడ్ పరిగణలోకి  ఆకృతీకరణ ఫైలు"
+
+#: neutron/policy.py:137
+#, python-format
+msgid "Unable to find data type descriptor for attribute %s"
+msgstr "%s యొక్క లక్షణం కోసం డేటా రకం  సాధ్యం కాలేదు"
+
+#: neutron/openstack/common/service.py:364
+#, python-format
+msgid "pid %d not in child list"
+msgstr "pid %d  బాల జాబితా లేదు "