Hi Team, Guest machine is not pingable from Host machine after creating a bridge with datapath_type "netdev" in the configuration database and adding dpdk ports. Can anyone please let me know what is the issue. Thanks in advance. Thanks & Regards Arkajit Ghosh =====-----=====-----===== Notice: The information contained in this e-mail message and/or attachments to it may contain confidential or privileged information. If you are not the intended recipient, any dissemination, use, review, distribution, printing or copying of the information contained in this e-mail message and/or attachments to it are strictly prohibited. If you have received this communication in error, please notify us by reply e-mail or telephone and immediately and permanently delete the message and any attachments. Thank you
Hi, Can anyone please suggest how to proceed. Thanks & Regards Arkajit Ghosh -----Arkajit Ghosh/DEL/TCS wrote: ----- To: dev@dpdk.org From: Arkajit Ghosh/DEL/TCS Date: 03/04/2015 12:39PM Subject: Guest Machine is not Pingable from Host Machine Hi Team, Guest machine is not pingable from Host machine after creating a bridge with datapath_type "netdev" in the configuration database and adding dpdk ports. Can anyone please let me know what is the issue. Thanks in advance. Thanks & Regards Arkajit Ghosh =====-----=====-----===== Notice: The information contained in this e-mail message and/or attachments to it may contain confidential or privileged information. If you are not the intended recipient, any dissemination, use, review, distribution, printing or copying of the information contained in this e-mail message and/or attachments to it are strictly prohibited. If you have received this communication in error, please notify us by reply e-mail or telephone and immediately and permanently delete the message and any attachments. Thank you
Hi,
Can you show the log output of OVS? and the ouput of following command
cd path/to/ovs/utilities/
./ovs-ofctl show br0
./ovs-ofctl dump-flows br0
(Assum that br0 is a bridge name that you had created)
On Fri, Mar 6, 2015 at 10:14 PM, Arkajit Ghosh <arkajit.ghosh@tcs.com>
wrote:
> Hi,
>
> Can anyone please suggest how to proceed.
>
>
> Thanks & Regards
> Arkajit Ghosh
>
> -----Arkajit Ghosh/DEL/TCS wrote: -----
> To: dev@dpdk.org
> From: Arkajit Ghosh/DEL/TCS
> Date: 03/04/2015 12:39PM
> Subject: Guest Machine is not Pingable from Host Machine
>
> Hi Team,
>
> Guest machine is not pingable from Host machine after creating a bridge
> with datapath_type "netdev" in the configuration database and adding dpdk
> ports. Can anyone please let me know what is the issue.
>
> Thanks in advance.
>
> Thanks & Regards
> Arkajit Ghosh
>
>
> =====-----=====-----=====
> Notice: The information contained in this e-mail
> message and/or attachments to it may contain
> confidential or privileged information. If you are
> not the intended recipient, any dissemination, use,
> review, distribution, printing or copying of the
> information contained in this e-mail message
> and/or attachments to it are strictly prohibited. If
> you have received this communication in error,
> please notify us by reply e-mail or telephone and
> immediately and permanently delete the message
> and any attachments. Thank you
>
>
>
--
Thanks and Best Regards,
Ngo Doan Lap
Mobile: 0977.833.757
Hi, I have executed below commands: ./utilities/ovs-vsctl add-br ovsbr0 ./utilities/ovs-vsctl set bridge datapath_type=netdev ./utilities/ovs-vsctl add-port ovsbr0 dpdk0 -- set Interface dpdk0 type=dpdk ./utilities/ovs-vsctl add-port ovsbr0 dpdk1 -- set Interface dpdk1 type=dpdk ./utilities/ovs-vsctl show Please find the attachement for bridge and dpdk-port creation.. Now, If i do "ifconfig -a" the created bridge ovsbr0 is showing Broadcast Running and Multicast but ip address was not given. So i had assign an IP-address to ovsbr0 which previously Eth1 had. So, now I try to ping this guest machine ip address from its host. Here is the output. ping 192.168.1.7 PING 192.168.1.7 (192.168.1.7) 56(84) bytes of data. >From 192.168.1.40 icmp_seq=1 Destination Host Unreachable >From 192.168.1.40 icmp_seq=5 Destination Host Unreachable >From 192.168.1.40 icmp_seq=6 Destination Host Unreachable >From 192.168.1.40 icmp_seq=7 Destination Host Unreachable >From 192.168.1.40 icmp_seq=8 Destination Host Unreachable >From 192.168.1.40 icmp_seq=9 Destination Host Unreachable I believe it should be pinged from its host machine. Can please let me know what is the issue and how to proceed. Thanks & Regards Arkajit Ghosh ____________________________________________ -----Ngo Doan Lap <lapngodoan@gmail.com> wrote: ----- To: Arkajit Ghosh <arkajit.ghosh@tcs.com> From: Ngo Doan Lap <lapngodoan@gmail.com> Date: 03/06/2015 08:52PM Cc: dev@dpdk.org Subject: Re: [dpdk-dev] Guest Machine is not Pingable from Host Machine Hi, Can you show the log output of OVS? and the ouput of following command cd path/to/ovs/utilities/ ./ovs-ofctl show br0 ./ovs-ofctl dump-flows br0 (Assum that br0 is a bridge name that you had created) On Fri, Mar 6, 2015 at 10:14 PM, Arkajit Ghosh <arkajit.ghosh@tcs.com> wrote: Hi, Can anyone please suggest how to proceed. Thanks & Regards Arkajit Ghosh -----Arkajit Ghosh/DEL/TCS wrote: ----- To: dev@dpdk.org From: Arkajit Ghosh/DEL/TCS Date: 03/04/2015 12:39PM Subject: Guest Machine is not Pingable from Host Machine Hi Team, Guest machine is not pingable from Host machine after creating a bridge with datapath_type "netdev" in the configuration database and adding dpdk ports. Can anyone please let me know what is the issue. Thanks in advance. Thanks & Regards Arkajit Ghosh =====-----=====-----===== Notice: The information contained in this e-mail message and/or attachments to it may contain confidential or privileged information. If you are not the intended recipient, any dissemination, use, review, distribution, printing or copying of the information contained in this e-mail message and/or attachments to it are strictly prohibited. If you have received this communication in error, please notify us by reply e-mail or telephone and immediately and permanently delete the message and any attachments. Thank you -- Thanks and Best Regards, Ngo Doan Lap Mobile: 0977.833.757 From michael.qiu@intel.com Mon Mar 9 06:21:27 2015 Return-Path: <michael.qiu@intel.com> Received: from mga01.intel.com (mga01.intel.com [192.55.52.88]) by dpdk.org (Postfix) with ESMTP id 460B95A9C for <dev@dpdk.org>; Mon, 9 Mar 2015 06:21:27 +0100 (CET) Received: from orsmga003.jf.intel.com ([10.7.209.27]) by fmsmga101.fm.intel.com with ESMTP; 08 Mar 2015 22:21:25 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.11,365,1422950400"; d="scan'208";a="537885754" Received: from pgsmsx107.gar.corp.intel.com ([10.221.44.105]) by orsmga003.jf.intel.com with ESMTP; 08 Mar 2015 22:20:58 -0700 Received: from shsmsx152.ccr.corp.intel.com (10.239.6.52) by PGSMSX107.gar.corp.intel.com (10.221.44.105) with Microsoft SMTP Server (TLS) id 14.3.195.1; Mon, 9 Mar 2015 13:21:24 +0800 Received: from shsmsx101.ccr.corp.intel.com ([169.254.1.192]) by SHSMSX152.ccr.corp.intel.com ([169.254.6.46]) with mapi id 14.03.0195.001; Mon, 9 Mar 2015 13:21:23 +0800 From: "Qiu, Michael" <michael.qiu@intel.com> To: Thomas Monjalon <thomas.monjalon@6wind.com> Thread-Topic: [dpdk-dev] [PATCH 1/3 v2] librte_hash: Fix unsupported instruction `crc32' in i686 platform Thread-Index: AQHQV2U5FnYjrJBY6UetCuCVTidWCg=Date: Mon, 9 Mar 2015 05:21:22 +0000 Message-ID: <533710CFB86FA344BFBF2D6802E60286CF0575@SHSMSX101.ccr.corp.intel.com> References: <1425561339-13300-2-git-send-email-michael.qiu@intel.com> <9902699.YtPW44peIi@xps13> <533710CFB86FA344BFBF2D6802E60286CEF549@SHSMSX101.ccr.corp.intel.com> <9442704.dXlXz1iyK3@xps13> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-originating-ip: [10.239.127.40] Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 Cc: "dev@dpdk.org" <dev@dpdk.org> Subject: Re: [dpdk-dev] [PATCH 1/3 v2] librte_hash: Fix unsupported instruction `crc32' in i686 platform X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: patches and discussions about DPDK <dev.dpdk.org> List-Unsubscribe: <http://dpdk.org/ml/options/dev>, <mailto:dev-request@dpdk.org?subject=unsubscribe> List-Archive: <http://dpdk.org/ml/archives/dev/> List-Post: <mailto:dev@dpdk.org> List-Help: <mailto:dev-request@dpdk.org?subject=help> List-Subscribe: <http://dpdk.org/ml/listinfo/dev>, <mailto:dev-request@dpdk.org?subject=subscribe> X-List-Received-Date: Mon, 09 Mar 2015 05:21:27 -0000 On 3/8/2015 2:39 AM, Thomas Monjalon wrote: > 2015-03-06 01:39, Qiu, Michael: >> On 3/6/2015 1:11 AM, Thomas Monjalon wrote: >>> 2015-03-06 00:55, Michael Qiu: >>>> CC rte_hash.o >>>> Error: unsupported instruction `crc32' >>>> >>>> The root cause is that i686 platform does not support 'crc32q' >>>> Need make it only available in x86_64 platform >>>> >>>> Signed-off-by: Michael Qiu <michael.qiu@intel.com> >>>> --- >>>> v2 --> v1: >>>> Make crc32 instruction only works in X86 platform >>>> lib/librte_hash/rte_hash_crc.h | 12 ++++++++++++ >>>> 1 file changed, 12 insertions(+) >>>> >>>> diff --git a/lib/librte_hash/rte_hash_crc.h b/lib/librte_hash/rte_hash_crc.h >>>> index d28bb2a..c0a789e 100644 >>>> --- a/lib/librte_hash/rte_hash_crc.h >>>> +++ b/lib/librte_hash/rte_hash_crc.h >>>> @@ -364,6 +364,7 @@ crc32c_2words(uint64_t data, uint32_t init_val) >>>> return crc; >>>> } >>>> >>>> +#if defined RTE_ARCH_I686 || defined RTE_ARCH_X86_64 >>>> static inline uint32_t >>>> crc32c_sse42_u32(uint32_t data, uint32_t init_val) >>>> { >>>> @@ -373,7 +374,9 @@ crc32c_sse42_u32(uint32_t data, uint32_t init_val) >>>> : [data] "rm" (data)); >>>> return init_val; >>>> } >>>> +#endif >>> Wouldn't it be more elegant to define a stub which returns 0 in #else >>> in order to remove #ifdef below? >>> Not sure, matter of taste. >> It may be not a good idea, see rte_hash_crc_8byte(), if no crc32 >> support, it will use crc32c_2words(), if we define a stub which returns >> 0 in #else, then we need always check the return value whether it is >> none-zero otherwise need fallback. > I don't think so. > The stub won't never been called because they are protected by the cpuflag > condition. Hi, Thomas You are right, I will send out v3 patch to fix this Thanks, Michael >
Hi, Can any one please suggest how to proceed. Thanks & Regards Arkajit Ghosh ____________________________________________ -----Arkajit Ghosh/DEL/TCS wrote: ----- To: Ngo Doan Lap <lapngodoan@gmail.com> From: Arkajit Ghosh/DEL/TCS Date: 03/09/2015 09:39AM Cc: dev@dpdk.org Subject: Re: [dpdk-dev] Guest Machine is not Pingable from Host Machine Hi, I have executed below commands: ./utilities/ovs-vsctl add-br ovsbr0 ./utilities/ovs-vsctl set bridge datapath_type=netdev ./utilities/ovs-vsctl add-port ovsbr0 dpdk0 -- set Interface dpdk0 type=dpdk ./utilities/ovs-vsctl add-port ovsbr0 dpdk1 -- set Interface dpdk1 type=dpdk ./utilities/ovs-vsctl show Please find the attachement for bridge and dpdk-port creation.. Now, If i do "ifconfig -a" the created bridge ovsbr0 is showing Broadcast Running and Multicast but ip address was not given. So i had assign an IP-address to ovsbr0 which previously Eth1 had. So, now I try to ping this guest machine ip address from its host. Here is the output. ping 192.168.1.7 PING 192.168.1.7 (192.168.1.7) 56(84) bytes of data. >From 192.168.1.40 icmp_seq=1 Destination Host Unreachable >From 192.168.1.40 icmp_seq=5 Destination Host Unreachable >From 192.168.1.40 icmp_seq=6 Destination Host Unreachable >From 192.168.1.40 icmp_seq=7 Destination Host Unreachable >From 192.168.1.40 icmp_seq=8 Destination Host Unreachable >From 192.168.1.40 icmp_seq=9 Destination Host Unreachable I believe it should be pinged from its host machine. Can please let me know what is the issue and how to proceed. Thanks & Regards Arkajit Ghosh ____________________________________________ -----Ngo Doan Lap <lapngodoan@gmail.com> wrote: ----- To: Arkajit Ghosh <arkajit.ghosh@tcs.com> From: Ngo Doan Lap <lapngodoan@gmail.com> Date: 03/06/2015 08:52PM Cc: dev@dpdk.org Subject: Re: [dpdk-dev] Guest Machine is not Pingable from Host Machine Hi, Can you show the log output of OVS? and the ouput of following command cd path/to/ovs/utilities/ ./ovs-ofctl show br0 ./ovs-ofctl dump-flows br0 (Assum that br0 is a bridge name that you had created) On Fri, Mar 6, 2015 at 10:14 PM, Arkajit Ghosh <arkajit.ghosh@tcs.com> wrote: Hi, Can anyone please suggest how to proceed. Thanks & Regards Arkajit Ghosh -----Arkajit Ghosh/DEL/TCS wrote: ----- To: dev@dpdk.org From: Arkajit Ghosh/DEL/TCS Date: 03/04/2015 12:39PM Subject: Guest Machine is not Pingable from Host Machine Hi Team, Guest machine is not pingable from Host machine after creating a bridge with datapath_type "netdev" in the configuration database and adding dpdk ports. Can anyone please let me know what is the issue. Thanks in advance. Thanks & Regards Arkajit Ghosh =====-----=====-----===== Notice: The information contained in this e-mail message and/or attachments to it may contain confidential or privileged information. If you are not the intended recipient, any dissemination, use, review, distribution, printing or copying of the information contained in this e-mail message and/or attachments to it are strictly prohibited. If you have received this communication in error, please notify us by reply e-mail or telephone and immediately and permanently delete the message and any attachments. Thank you -- Thanks and Best Regards, Ngo Doan Lap Mobile: 0977.833.757 [attachment "DPDK_Output_Result.odt" removed by Arkajit Ghosh/DEL/TCS] From vladz@cloudius-systems.com Mon Mar 9 16:57:30 2015 Return-Path: <vladz@cloudius-systems.com> Received: from mail-wi0-f172.google.com (mail-wi0-f172.google.com [209.85.212.172]) by dpdk.org (Postfix) with ESMTP id B7A7A9A91 for <dev@dpdk.org>; Mon, 9 Mar 2015 16:57:30 +0100 (CET) Received: by wivr20 with SMTP id r20so22085917wiv.5 for <dev@dpdk.org>; Mon, 09 Mar 2015 08:57:30 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d\x1e100.net; s 130820; h=x-gm-message-state:message-id:date:from:user-agent:mime-version:to :subject:references:in-reply-to:content-type :content-transfer-encoding; bh=rAApmQhYXY8zgRaPBMXHOzHbKY/1Y5NCwSDf0De8OsE=; b=RIzhxdAMpH9oPXhd/XYkN0Ix4F8UUab2+AqVnzAVeEfmqbt7ea+bj1SpJK2MQrRsBs 8iHMfcSU2eQ+d1C7mqcgXji3GXbzq2Dqq0AFHmoqB9KOtgRX0gn93LRQFqSxPKQDKqJs DkoMNpXiN5zEwn6ONhYsPKDY6mYXakgw7Qr77HiKOdZtpk7schuwQCK5tzepMGKK1gC9 baD2rtSneeT1VMn0CGw3SQMprvGCg9+CrBIOGaj4e5FqT3PxzfmfeukU8pLA5+Rf1E7i tIJNkX6cfH07UlISQD6lz6igCiOv8XM/nzzS3DT/7VPM4ZWrJQfMv4WBuOPY3OgzNQHB q99A=X-Gm-Message-State: ALoCoQkLLdWc9CPV5PV3Hy/h/h6CleXK2ePyZcnwA6Po6dQezuH6d4RREQ4Tg4fjpgJW6O0qS5KU X-Received: by 10.194.60.173 with SMTP id i13mr58070469wjr.124.1425916649774; Mon, 09 Mar 2015 08:57:29 -0700 (PDT) Received: from [10.0.0.2] (bzq-109-65-117-109.red.bezeqint.net. [109.65.117.109]) by mx.google.com with ESMTPSA id bx3sm28810666wjc.21.2015.03.09.08.57.28 (version=TLSv1.2 cipherìDHE-RSA-AES128-GCM-SHA256 bits\x128/128); Mon, 09 Mar 2015 08:57:28 -0700 (PDT) Message-ID: <54FDC2E7.7070703@cloudius-systems.com> Date: Mon, 09 Mar 2015 17:57:27 +0200 From: Vlad Zolotarov <vladz@cloudius-systems.com> User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:31.0) Gecko/20100101 Thunderbird/31.5.0 MIME-Version: 1.0 To: "Mcnamara, John" <john.mcnamara@intel.com>, "dev@dpdk.org" <dev@dpdk.org> References: <1425895968-8597-1-git-send-email-vladz@cloudius-systems.com> <1425895968-8597-4-git-send-email-vladz@cloudius-systems.com> <B27915DBBA3421428155699D51E4CFE2ECC42A@IRSMSX103.ger.corp.intel.com> In-Reply-To: <B27915DBBA3421428155699D51E4CFE2ECC42A@IRSMSX103.ger.corp.intel.com> Content-Type: text/plain; charset=windows-1252; format=flowed Content-Transfer-Encoding: 7bit Subject: Re: [dpdk-dev] [PATCH v1 3/3] ixgbe: Unify the rx_pkt_bulk callback initialization X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: patches and discussions about DPDK <dev.dpdk.org> List-Unsubscribe: <http://dpdk.org/ml/options/dev>, <mailto:dev-request@dpdk.org?subject=unsubscribe> List-Archive: <http://dpdk.org/ml/archives/dev/> List-Post: <mailto:dev@dpdk.org> List-Help: <mailto:dev-request@dpdk.org?subject=help> List-Subscribe: <http://dpdk.org/ml/listinfo/dev>, <mailto:dev-request@dpdk.org?subject=subscribe> X-List-Received-Date: Mon, 09 Mar 2015 15:57:30 -0000 On 03/09/15 15:39, Mcnamara, John wrote: >> -----Original Message----- >> From: dev [mailto:dev-bounces@dpdk.org] On Behalf Of Vlad Zolotarov >> Sent: Monday, March 9, 2015 10:13 AM >> To: dev@dpdk.org >> Subject: [dpdk-dev] [PATCH v1 3/3] ixgbe: Unify the rx_pkt_bulk callback >> initialization >> >> @@ -3641,23 +3676,17 @@ ixgbe_dev_rx_init(struct rte_eth_dev *dev) >> buf_size = (uint16_t) ((srrctl & IXGBE_SRRCTL_BSIZEPKT_MASK) >> << >> IXGBE_SRRCTL_BSIZEPKT_SHIFT); >> >> - if (dev->data->dev_conf.rxmode.enable_scatter || >> - /* It adds dual VLAN length for supporting dual VLAN */ >> - (dev->data->dev_conf.rxmode.max_rx_pkt_len + >> - 2 * IXGBE_VLAN_TAG_SIZE) > buf_size){ >> - if (!dev->data->scattered_rx) >> - PMD_INIT_LOG(DEBUG, "forcing scatter mode"); >> + /* It adds dual VLAN length for supporting dual VLAN */ >> + if (dev->data->dev_conf.rxmode.max_rx_pkt_len + >> + 2 * IXGBE_VLAN_TAG_SIZE > buf_size) >> dev->data->scattered_rx = 1; >> -#ifdef RTE_IXGBE_INC_VECTOR >> - if (rte_is_power_of_2(rxq->nb_rx_desc)) >> - dev->rx_pkt_burst >> - ixgbe_recv_scattered_pkts_vec; >> - else >> -#endif >> - dev->rx_pkt_burst = ixgbe_recv_scattered_pkts; >> - } >> } >> >> + if (rx_conf->enable_scatter) >> + dev->data->scattered_rx = 1; > Hi, > > There is a compilation issue here when this patch is applied to the current master (with previous 2 patches applied as well): > > make T=x86_64-native-linuxapp-gcc install CC=gcc > ... > == Build lib/librte_pmd_ixgbe > CC ixgbe_rxtx.o > /home/user/dpdk/lib/librte_pmd_ixgbe/ixgbe_rxtx.c: In function 'ixgbe_dev_rx_init': > /home/user/dpdk/lib/librte_pmd_ixgbe/ixgbe_rxtx.c:3689:6: error: 'rx_conf' undeclared (first use in this function) > /home/user/dpdk/lib/librte_pmd_ixgbe/ixgbe_rxtx.c:3689:6: note: each undeclared identifier is reported only once for each function it appears in > make[5]: *** [ixgbe_rxtx.o] Error 1 > > This is using the default DPDK linuxapp config. Oops. I see. After all the acrobatics I've done with the patches I must have forgotten to check the compilation of this series stand alone - shame on me! Let me fix it and resend the patches... > > John >
Hi,
Can any one please suggest how to proceed now.
Thanks & Regards
Arkajit Ghosh
____________________________________________
-----Arkajit Ghosh/DEL/TCS wrote: -----
To: Ngo Doan Lap <lapngodoan@gmail.com>
From: Arkajit Ghosh/DEL/TCS
Date: 03/09/2015 09:39AM
Cc: dev@dpdk.org
Subject: Re: [dpdk-dev] Guest Machine is not Pingable from Host Machine
Hi,
I have executed below commands:
./utilities/ovs-vsctl add-br ovsbr0
./utilities/ovs-vsctl set bridge datapath_type=netdev
./utilities/ovs-vsctl add-port ovsbr0 dpdk0 -- set Interface dpdk0 type=dpdk
./utilities/ovs-vsctl add-port ovsbr0 dpdk1 -- set Interface dpdk1 type=dpdk
./utilities/ovs-vsctl show
Please find the attachement for bridge and dpdk-port creation..
Now, If i do "ifconfig -a" the created bridge ovsbr0 is showing Broadcast Running and Multicast but ip address was not given. So i had assign an IP-address to ovsbr0 which previously Eth1 had.
So, now I try to ping this guest machine ip address from its host. Here is the output.
ping 192.168.1.7
PING 192.168.1.7 (192.168.1.7) 56(84) bytes of data.
>From 192.168.1.40 icmp_seq=1 Destination Host Unreachable
>From 192.168.1.40 icmp_seq=5 Destination Host Unreachable
>From 192.168.1.40 icmp_seq=6 Destination Host Unreachable
>From 192.168.1.40 icmp_seq=7 Destination Host Unreachable
>From 192.168.1.40 icmp_seq=8 Destination Host Unreachable
>From 192.168.1.40 icmp_seq=9 Destination Host Unreachable
I believe it should be pinged from its host machine. Can please let me know what is the issue and how to proceed.
Thanks & Regards
Arkajit Ghosh
____________________________________________
-----Ngo Doan Lap <lapngodoan@gmail.com> wrote: -----
To: Arkajit Ghosh <arkajit.ghosh@tcs.com>
From: Ngo Doan Lap <lapngodoan@gmail.com>
Date: 03/06/2015 08:52PM
Cc: dev@dpdk.org
Subject: Re: [dpdk-dev] Guest Machine is not Pingable from Host Machine
Hi,
Can you show the log output of OVS? and the ouput of following command
cd path/to/ovs/utilities/
./ovs-ofctl show br0
./ovs-ofctl dump-flows br0
(Assum that br0 is a bridge name that you had created)
On Fri, Mar 6, 2015 at 10:14 PM, Arkajit Ghosh <arkajit.ghosh@tcs.com> wrote:
Hi,
Can anyone please suggest how to proceed.
Thanks & Regards
Arkajit Ghosh
-----Arkajit Ghosh/DEL/TCS wrote: -----
To: dev@dpdk.org
From: Arkajit Ghosh/DEL/TCS
Date: 03/04/2015 12:39PM
Subject: Guest Machine is not Pingable from Host Machine
Hi Team,
Guest machine is not pingable from Host machine after creating a bridge with datapath_type "netdev" in the configuration database and adding dpdk ports. Can anyone please let me know what is the issue.
Thanks in advance.
Thanks & Regards
Arkajit Ghosh
=====-----=====-----=====
Notice: The information contained in this e-mail
message and/or attachments to it may contain
confidential or privileged information. If you are
not the intended recipient, any dissemination, use,
review, distribution, printing or copying of the
information contained in this e-mail message
and/or attachments to it are strictly prohibited. If
you have received this communication in error,
please notify us by reply e-mail or telephone and
immediately and permanently delete the message
and any attachments. Thank you
--
Thanks and Best Regards,
Ngo Doan Lap
Mobile: 0977.833.757
[attachment "DPDK_Output_Result.odt" removed by Arkajit Ghosh/DEL/TCS]
Hi Arkajit,
I can't find your attachment.
On Tue, Mar 10, 2015 at 10:23 AM, Arkajit Ghosh <arkajit.ghosh@tcs.com>
wrote:
>
> Hi,
>
> Can any one please suggest how to proceed now.
>
>
> Thanks & Regards
> Arkajit Ghosh
> ____________________________________________
>
> -----Arkajit Ghosh/DEL/TCS wrote: -----
> To: Ngo Doan Lap <lapngodoan@gmail.com>
> From: Arkajit Ghosh/DEL/TCS
> Date: 03/09/2015 09:39AM
> Cc: dev@dpdk.org
> Subject: Re: [dpdk-dev] Guest Machine is not Pingable from Host Machine
>
>
> Hi,
>
> I have executed below commands:
>
> ./utilities/ovs-vsctl add-br ovsbr0
> ./utilities/ovs-vsctl set bridge datapath_type=netdev
> ./utilities/ovs-vsctl add-port ovsbr0 dpdk0 -- set Interface dpdk0
> type=dpdk
> ./utilities/ovs-vsctl add-port ovsbr0 dpdk1 -- set Interface dpdk1
> type=dpdk
> ./utilities/ovs-vsctl show
>
> Please find the attachement for bridge and dpdk-port creation..
>
> Now, If i do "ifconfig -a" the created bridge ovsbr0 is showing Broadcast
> Running and Multicast but ip address was not given. So i had assign an
> IP-address to ovsbr0 which previously Eth1 had.
>
> So, now I try to ping this guest machine ip address from its host. Here
> is the output.
>
> ping 192.168.1.7
> PING 192.168.1.7 (192.168.1.7) 56(84) bytes of data.
> From 192.168.1.40 icmp_seq=1 Destination Host Unreachable
> From 192.168.1.40 icmp_seq=5 Destination Host Unreachable
> From 192.168.1.40 icmp_seq=6 Destination Host Unreachable
> From 192.168.1.40 icmp_seq=7 Destination Host Unreachable
> From 192.168.1.40 icmp_seq=8 Destination Host Unreachable
> From 192.168.1.40 icmp_seq=9 Destination Host Unreachable
>
>
> *I believe it should be pinged from its host machine. Can please let me
> know what is the issue and how to proceed.*
> Thanks & Regards
> Arkajit Ghosh
> ____________________________________________
>
> -----Ngo Doan Lap <lapngodoan@gmail.com> wrote: -----
> To: Arkajit Ghosh <arkajit.ghosh@tcs.com>
> From: Ngo Doan Lap <lapngodoan@gmail.com>
> Date: 03/06/2015 08:52PM
> Cc: dev@dpdk.org
> Subject: Re: [dpdk-dev] Guest Machine is not Pingable from Host Machine
>
> Hi,
> Can you show the log output of OVS? and the ouput of following command
> cd path/to/ovs/utilities/
> ./ovs-ofctl show br0
> ./ovs-ofctl dump-flows br0
> (Assum that br0 is a bridge name that you had created)
>
> On Fri, Mar 6, 2015 at 10:14 PM, Arkajit Ghosh <arkajit.ghosh@tcs.com>
> wrote:
>
>> Hi,
>>
>> Can anyone please suggest how to proceed.
>>
>>
>> Thanks & Regards
>> Arkajit Ghosh
>>
>> -----Arkajit Ghosh/DEL/TCS wrote: -----
>> To: dev@dpdk.org
>> From: Arkajit Ghosh/DEL/TCS
>> Date: 03/04/2015 12:39PM
>> Subject: Guest Machine is not Pingable from Host Machine
>>
>> Hi Team,
>>
>> Guest machine is not pingable from Host machine after creating a bridge
>> with datapath_type "netdev" in the configuration database and adding dpdk
>> ports. Can anyone please let me know what is the issue.
>>
>> Thanks in advance.
>>
>> Thanks & Regards
>> Arkajit Ghosh
>>
>>
>> =====-----=====-----=====
>> Notice: The information contained in this e-mail
>> message and/or attachments to it may contain
>> confidential or privileged information. If you are
>> not the intended recipient, any dissemination, use,
>> review, distribution, printing or copying of the
>> information contained in this e-mail message
>> and/or attachments to it are strictly prohibited. If
>> you have received this communication in error,
>> please notify us by reply e-mail or telephone and
>> immediately and permanently delete the message
>> and any attachments. Thank you
>>
>>
>>
>
>
> --
> Thanks and Best Regards,
> Ngo Doan Lap
> Mobile: 0977.833.757
>
>
> [attachment "DPDK_Output_Result.odt" removed by Arkajit Ghosh/DEL/TCS]
>
--
Thanks and Best Regards,
Ngo Doan Lap
Mobile: 0977.833.757
Hi, Please find the attachement. Thanks & Regards Arkajit Ghosh ____________________________________________ -----Ngo Doan Lap <lapngodoan@gmail.com> wrote: ----- To: Arkajit Ghosh <arkajit.ghosh@tcs.com> From: Ngo Doan Lap <lapngodoan@gmail.com> Date: 03/10/2015 10:25AM Cc: dev@dpdk.org Subject: Re: #PERSONAL#[dpdk-dev] Guest Machine is not Pingable from Host Machine Hi Arkajit, I can't find your attachment. On Tue, Mar 10, 2015 at 10:23 AM, Arkajit Ghosh <arkajit.ghosh@tcs.com> wrote: Hi, Can any one please suggest how to proceed now. Thanks & Regards Arkajit Ghosh ____________________________________________ -----Arkajit Ghosh/DEL/TCS wrote: ----- To: Ngo Doan Lap <lapngodoan@gmail.com> From: Arkajit Ghosh/DEL/TCS Date: 03/09/2015 09:39AM Cc: dev@dpdk.org Subject: Re: [dpdk-dev] Guest Machine is not Pingable from Host Machine Hi, I have executed below commands: ./utilities/ovs-vsctl add-br ovsbr0 ./utilities/ovs-vsctl set bridge datapath_type=netdev ./utilities/ovs-vsctl add-port ovsbr0 dpdk0 -- set Interface dpdk0 type=dpdk ./utilities/ovs-vsctl add-port ovsbr0 dpdk1 -- set Interface dpdk1 type=dpdk ./utilities/ovs-vsctl show Please find the attachement for bridge and dpdk-port creation.. Now, If i do "ifconfig -a" the created bridge ovsbr0 is showing Broadcast Running and Multicast but ip address was not given. So i had assign an IP-address to ovsbr0 which previously Eth1 had. So, now I try to ping this guest machine ip address from its host. Here is the output. ping 192.168.1.7 PING 192.168.1.7 (192.168.1.7) 56(84) bytes of data. >From 192.168.1.40 icmp_seq=1 Destination Host Unreachable >From 192.168.1.40 icmp_seq=5 Destination Host Unreachable >From 192.168.1.40 icmp_seq=6 Destination Host Unreachable >From 192.168.1.40 icmp_seq=7 Destination Host Unreachable >From 192.168.1.40 icmp_seq=8 Destination Host Unreachable >From 192.168.1.40 icmp_seq=9 Destination Host Unreachable I believe it should be pinged from its host machine. Can please let me know what is the issue and how to proceed. Thanks & Regards Arkajit Ghosh ____________________________________________ -----Ngo Doan Lap <lapngodoan@gmail.com> wrote: ----- To: Arkajit Ghosh <arkajit.ghosh@tcs.com> From: Ngo Doan Lap <lapngodoan@gmail.com> Date: 03/06/2015 08:52PM Cc: dev@dpdk.org Subject: Re: [dpdk-dev] Guest Machine is not Pingable from Host Machine Hi, Can you show the log output of OVS? and the ouput of following command cd path/to/ovs/utilities/ ./ovs-ofctl show br0 ./ovs-ofctl dump-flows br0 (Assum that br0 is a bridge name that you had created) On Fri, Mar 6, 2015 at 10:14 PM, Arkajit Ghosh <arkajit.ghosh@tcs.com> wrote: Hi, Can anyone please suggest how to proceed. Thanks & Regards Arkajit Ghosh -----Arkajit Ghosh/DEL/TCS wrote: ----- To: dev@dpdk.org From: Arkajit Ghosh/DEL/TCS Date: 03/04/2015 12:39PM Subject: Guest Machine is not Pingable from Host Machine Hi Team, Guest machine is not pingable from Host machine after creating a bridge with datapath_type "netdev" in the configuration database and adding dpdk ports. Can anyone please let me know what is the issue. Thanks in advance. Thanks & Regards Arkajit Ghosh =====-----=====-----===== Notice: The information contained in this e-mail message and/or attachments to it may contain confidential or privileged information. If you are not the intended recipient, any dissemination, use, review, distribution, printing or copying of the information contained in this e-mail message and/or attachments to it are strictly prohibited. If you have received this communication in error, please notify us by reply e-mail or telephone and immediately and permanently delete the message and any attachments. Thank you -- Thanks and Best Regards, Ngo Doan Lap Mobile: 0977.833.757 [attachment "DPDK_Output_Result.odt" removed by Arkajit Ghosh/DEL/TCS] -- Thanks and Best Regards, Ngo Doan Lap Mobile: 0977.833.757 From jijiang.liu@intel.com Tue Mar 10 08:03:19 2015 Return-Path: <jijiang.liu@intel.com> Received: from mga03.intel.com (mga03.intel.com [134.134.136.65]) by dpdk.org (Postfix) with ESMTP id 6C43B58E4 for <dev@dpdk.org>; Tue, 10 Mar 2015 08:03:18 +0100 (CET) Received: from orsmga001.jf.intel.com ([10.7.209.18]) by orsmga103.jf.intel.com with ESMTP; 10 Mar 2015 00:00:28 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.11,373,1422950400"; d="scan'208";a="662921048" Received: from kmsmsx151.gar.corp.intel.com ([172.21.73.86]) by orsmga001.jf.intel.com with ESMTP; 10 Mar 2015 00:03:15 -0700 Received: from shsmsx103.ccr.corp.intel.com (10.239.4.69) by KMSMSX151.gar.corp.intel.com (172.21.73.86) with Microsoft SMTP Server (TLS) id 14.3.195.1; Tue, 10 Mar 2015 15:02:33 +0800 Received: from shsmsx101.ccr.corp.intel.com ([169.254.1.150]) by SHSMSX103.ccr.corp.intel.com ([169.254.4.45]) with mapi id 14.03.0224.002; Tue, 10 Mar 2015 15:02:32 +0800 From: "Liu, Jijiang" <jijiang.liu@intel.com> To: Stephen Hemminger <stephen@networkplumber.org>, "dev@dpdk.org" <dev@dpdk.org> Thread-Topic: [dpdk-dev] [PATCH 1/5] xen: allow choosing dom0 support at runtime Thread-Index: AQHQSTOswcupOJhAwU2665gohh/CS50VbY0A Date: Tue, 10 Mar 2015 07:02:31 +0000 Message-ID: <1ED644BD7E0A5F4091CF203DAFB8E4CC01DF0E01@SHSMSX101.ccr.corp.intel.com> References: <1424013889-2226-1-git-send-email-shemming@brocade.com> In-Reply-To: <1424013889-2226-1-git-send-email-shemming@brocade.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-originating-ip: [10.239.127.40] Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 Cc: Stephen Hemminger <shemming@brocade.com> Subject: Re: [dpdk-dev] [PATCH 1/5] xen: allow choosing dom0 support at runtime X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: patches and discussions about DPDK <dev.dpdk.org> List-Unsubscribe: <http://dpdk.org/ml/options/dev>, <mailto:dev-request@dpdk.org?subject=unsubscribe> List-Archive: <http://dpdk.org/ml/archives/dev/> List-Post: <mailto:dev@dpdk.org> List-Help: <mailto:dev-request@dpdk.org?subject=help> List-Subscribe: <http://dpdk.org/ml/listinfo/dev>, <mailto:dev-request@dpdk.org?subject=subscribe> X-List-Received-Date: Tue, 10 Mar 2015 07:03:19 -0000 > -----Original Message----- > From: dev [mailto:dev-bounces@dpdk.org] On Behalf Of Stephen Hemminger > Sent: Sunday, February 15, 2015 11:25 PM > To: dev@dpdk.org > Cc: Stephen Hemminger > Subject: [dpdk-dev] [PATCH 1/5] xen: allow choosing dom0 support at runtime > > The previous code would only allow building library and application so that it > ran on Xen DOM0 or not on DOM0. This changes that to a runtime flag. > > Signed-off-by: Stephen Hemminger <stephen@networkplumber.org> > --- > v2 -- fix i40e as well > > lib/librte_eal/common/include/rte_memory.h | 4 +++ > lib/librte_eal/linuxapp/eal/eal_memory.c | 7 ++++ > lib/librte_ether/rte_ethdev.c | 22 ++++++++++++ > lib/librte_ether/rte_ethdev.h | 23 ++++++++++++ > lib/librte_mempool/rte_mempool.c | 26 +++++++------- > lib/librte_pmd_e1000/em_rxtx.c | 30 +++------------- > lib/librte_pmd_e1000/igb_rxtx.c | 52 +++++++++------------------ > lib/librte_pmd_i40e/i40e_ethdev.c | 16 +++++---- > lib/librte_pmd_i40e/i40e_fdir.c | 8 +++-- > lib/librte_pmd_i40e/i40e_rxtx.c | 57 +++++++++++++++++------------ > lib/librte_pmd_ixgbe/ixgbe_rxtx.c | 58 +++++++++--------------------- > 11 files changed, 156 insertions(+), 147 deletions(-) > > diff --git a/lib/librte_eal/common/include/rte_memory.h > b/lib/librte_eal/common/include/rte_memory.h > index 7f8103f..ab6c1ff 100644 > --- a/lib/librte_eal/common/include/rte_memory.h > +++ b/lib/librte_eal/common/include/rte_memory.h > @@ -176,6 +176,10 @@ unsigned rte_memory_get_nchannel(void); unsigned > rte_memory_get_nrank(void); > > #ifdef RTE_LIBRTE_XEN_DOM0 > + > +/**< Internal use only - should DOM0 memory mapping be used */ extern > +int is_xen_dom0_supported(void); > + > /** > * Return the physical address of elt, which is an element of the pool mp. > * > diff --git a/lib/librte_eal/linuxapp/eal/eal_memory.c > b/lib/librte_eal/linuxapp/eal/eal_memory.c > index a67a1b0..4afda2a 100644 > --- a/lib/librte_eal/linuxapp/eal/eal_memory.c > +++ b/lib/librte_eal/linuxapp/eal/eal_memory.c > @@ -98,6 +98,13 @@ > #include "eal_filesystem.h" > #include "eal_hugepages.h" > > +#ifdef RTE_LIBRTE_XEN_DOM0 > +int is_xen_dom0_supported(void) > +{ > + return internal_config.xen_dom0_support; } #endif > + > /** > * @file > * Huge page mapping under linux > diff --git a/lib/librte_ether/rte_ethdev.c b/lib/librte_ether/rte_ethdev.c index > ea3a1fb..457e0bc 100644 > --- a/lib/librte_ether/rte_ethdev.c > +++ b/lib/librte_ether/rte_ethdev.c > @@ -2825,6 +2825,27 @@ _rte_eth_dev_callback_process(struct > rte_eth_dev *dev, > } > rte_spinlock_unlock(&rte_eth_dev_cb_lock); > } > + > +const struct rte_memzone * > +rte_eth_dma_zone_reserve(const struct rte_eth_dev *dev, const char > *ring_name, > + uint16_t queue_id, size_t size, unsigned align, > + int socket_id) > +{ > + char z_name[RTE_MEMZONE_NAMESIZE]; > + const struct rte_memzone *mz; > + > + snprintf(z_name, sizeof(z_name), "%s_%s_%d_%d", > + dev->driver->pci_drv.name, ring_name, > + dev->data->port_id, queue_id); > + > + mz = rte_memzone_lookup(z_name); > + if (mz) > + return mz; > + > + return rte_memzone_reserve_bounded(z_name, size, > + socket_id, 0, align, > RTE_PGSIZE_2M); } > + > #ifdef RTE_NIC_BYPASS > int rte_eth_dev_bypass_init(uint8_t port_id) { @@ -3003,6 +3024,7 @@ > rte_eth_dev_bypass_wd_reset(uint8_t port_id) > (*dev->dev_ops->bypass_wd_reset)(dev); > return 0; > } > + > #endif > > int > diff --git a/lib/librte_ether/rte_ethdev.h b/lib/librte_ether/rte_ethdev.h index > 1200c1c..747acb5 100644 > --- a/lib/librte_ether/rte_ethdev.h > +++ b/lib/librte_ether/rte_ethdev.h > @@ -3664,6 +3664,29 @@ int rte_eth_dev_filter_supported(uint8_t port_id, > enum rte_filter_type filter_ty int rte_eth_dev_filter_ctrl(uint8_t port_id, enum > rte_filter_type filter_type, > enum rte_filter_op filter_op, void *arg); > > +/** > + * Create memzone for HW rings. > + * malloc can't be used as the physical address is needed. > + * If the memzone is already created, then this function returns a ptr > + * to the old one. > + * > + * @param eth_dev > + * The *eth_dev* pointer is the address of the *rte_eth_dev* structure > + * @param name > + * The name of the memory zone > + * @param queue_id > + * The index of the queue to add to name > + * @param size > + * The sizeof of the memory area > + * @param align > + * Alignment for resulting memzone. Must be a power of 2. > + * @param socket_id > + * The *socket_id* argument is the socket identifier in case of NUMA. > + */ > +const struct rte_memzone * > +rte_eth_dma_zone_reserve(const struct rte_eth_dev *eth_dev, const char > *name, > + uint16_t queue_id, size_t size, > + unsigned align, int socket_id); > #ifdef __cplusplus > } > #endif > diff --git a/lib/librte_mempool/rte_mempool.c > b/lib/librte_mempool/rte_mempool.c > index 4cf6c25..5056a4f 100644 > --- a/lib/librte_mempool/rte_mempool.c > +++ b/lib/librte_mempool/rte_mempool.c > @@ -372,19 +372,21 @@ rte_mempool_create(const char *name, unsigned n, > unsigned elt_size, > int socket_id, unsigned flags) > { > #ifdef RTE_LIBRTE_XEN_DOM0 > - return (rte_dom0_mempool_create(name, n, elt_size, > - cache_size, private_data_size, > - mp_init, mp_init_arg, > - obj_init, obj_init_arg, > - socket_id, flags)); > -#else > - return (rte_mempool_xmem_create(name, n, elt_size, > - cache_size, private_data_size, > - mp_init, mp_init_arg, > - obj_init, obj_init_arg, > - socket_id, flags, > - NULL, NULL, MEMPOOL_PG_NUM_DEFAULT, > MEMPOOL_PG_SHIFT_MAX)); > + if (is_xen_dom0_supported()) > + return (rte_dom0_mempool_create(name, n, elt_size, > + cache_size, private_data_size, > + mp_init, mp_init_arg, > + obj_init, obj_init_arg, > + socket_id, flags)); > + else > #endif > + return (rte_mempool_xmem_create(name, n, elt_size, > + cache_size, private_data_size, > + mp_init, mp_init_arg, > + obj_init, obj_init_arg, > + socket_id, flags, > + NULL, NULL, > MEMPOOL_PG_NUM_DEFAULT, > + MEMPOOL_PG_SHIFT_MAX)); > } > > /* > diff --git a/lib/librte_pmd_e1000/em_rxtx.c b/lib/librte_pmd_e1000/em_rxtx.c > index aa0b88c..9e09cfa 100644 > --- a/lib/librte_pmd_e1000/em_rxtx.c > +++ b/lib/librte_pmd_e1000/em_rxtx.c > @@ -1104,28 +1104,6 @@ eth_em_recv_scattered_pkts(void *rx_queue, > struct rte_mbuf **rx_pkts, > #define EM_MAX_BUF_SIZE 16384 > #define EM_RCTL_FLXBUF_STEP 1024 > > -static const struct rte_memzone * > -ring_dma_zone_reserve(struct rte_eth_dev *dev, const char *ring_name, > - uint16_t queue_id, uint32_t ring_size, int socket_id) > -{ > - const struct rte_memzone *mz; > - char z_name[RTE_MEMZONE_NAMESIZE]; > - > - snprintf(z_name, sizeof(z_name), "%s_%s_%d_%d", > - dev->driver->pci_drv.name, ring_name, dev->data->port_id, > - queue_id); > - > - if ((mz = rte_memzone_lookup(z_name)) != 0) > - return (mz); > - > -#ifdef RTE_LIBRTE_XEN_DOM0 > - return rte_memzone_reserve_bounded(z_name, ring_size, > - socket_id, 0, RTE_CACHE_LINE_SIZE, RTE_PGSIZE_2M); > -#else > - return rte_memzone_reserve(z_name, ring_size, socket_id, 0); > -#endif > -} > - > static void > em_tx_queue_release_mbufs(struct em_tx_queue *txq) { @@ -1273,8 > +1251,8 @@ eth_em_tx_queue_setup(struct rte_eth_dev *dev, > * resizing in later calls to the queue setup function. > */ > tsize = sizeof (txq->tx_ring[0]) * EM_MAX_RING_DESC; > - if ((tz = ring_dma_zone_reserve(dev, "tx_ring", queue_idx, tsize, > - socket_id)) == NULL) > + if ((tz = rte_eth_dma_zone_reserve(dev, "tx_ring", queue_idx, tsize, > + RTE_CACHE_LINE_SIZE, socket_id)) > == NULL) > return (-ENOMEM); > > /* Allocate the tx queue data structure. */ @@ -1400,8 +1378,8 @@ > eth_em_rx_queue_setup(struct rte_eth_dev *dev, > > /* Allocate RX ring for max possible mumber of hardware descriptors. > */ > rsize = sizeof (rxq->rx_ring[0]) * EM_MAX_RING_DESC; > - if ((rz = ring_dma_zone_reserve(dev, "rx_ring", queue_idx, rsize, > - socket_id)) == NULL) > + if ((rz = rte_eth_dma_zone_reserve(dev, "rx_ring", queue_idx, rsize, > + RTE_CACHE_LINE_SIZE, socket_id)) > == NULL) > return (-ENOMEM); > > /* Allocate the RX queue data structure. */ diff --git > a/lib/librte_pmd_e1000/igb_rxtx.c b/lib/librte_pmd_e1000/igb_rxtx.c index > 5c394a9..d36469b 100644 > --- a/lib/librte_pmd_e1000/igb_rxtx.c > +++ b/lib/librte_pmd_e1000/igb_rxtx.c > @@ -1109,29 +1109,6 @@ eth_igb_recv_scattered_pkts(void *rx_queue, > struct rte_mbuf **rx_pkts, #define IGB_MIN_RING_DESC 32 #define > IGB_MAX_RING_DESC 4096 > > -static const struct rte_memzone * > -ring_dma_zone_reserve(struct rte_eth_dev *dev, const char *ring_name, > - uint16_t queue_id, uint32_t ring_size, int socket_id) > -{ > - char z_name[RTE_MEMZONE_NAMESIZE]; > - const struct rte_memzone *mz; > - > - snprintf(z_name, sizeof(z_name), "%s_%s_%d_%d", > - dev->driver->pci_drv.name, ring_name, > - dev->data->port_id, queue_id); > - mz = rte_memzone_lookup(z_name); > - if (mz) > - return mz; > - > -#ifdef RTE_LIBRTE_XEN_DOM0 > - return rte_memzone_reserve_bounded(z_name, ring_size, > - socket_id, 0, IGB_ALIGN, RTE_PGSIZE_2M); > -#else > - return rte_memzone_reserve_aligned(z_name, ring_size, > - socket_id, 0, IGB_ALIGN); > -#endif > -} > - > static void > igb_tx_queue_release_mbufs(struct igb_tx_queue *txq) { @@ -1265,8 > +1242,8 @@ eth_igb_tx_queue_setup(struct rte_eth_dev *dev, > * resizing in later calls to the queue setup function. > */ > size = sizeof(union e1000_adv_tx_desc) * IGB_MAX_RING_DESC; > - tz = ring_dma_zone_reserve(dev, "tx_ring", queue_idx, > - size, socket_id); > + tz = rte_eth_dma_zone_reserve(dev, "tx_ring", queue_idx, size, > + IGB_ALIGN, socket_id); > if (tz == NULL) { > igb_tx_queue_release(txq); > return (-ENOMEM); > @@ -1284,12 +1261,14 @@ eth_igb_tx_queue_setup(struct rte_eth_dev > *dev, > txq->port_id = dev->data->port_id; > > txq->tdt_reg_addr = E1000_PCI_REG_ADDR(hw, E1000_TDT(txq- > >reg_idx)); -#ifndef RTE_LIBRTE_XEN_DOM0 > - txq->tx_ring_phys_addr = (uint64_t) tz->phys_addr; > -#else > - txq->tx_ring_phys_addr = rte_mem_phy2mch(tz->memseg_id, tz- > >phys_addr); > +#ifdef RTE_LIBRTE_XEN_DOM0 > + if (is_xen_dom0_supported()) > + txq->tx_ring_phys_addr = rte_mem_phy2mch(tz->memseg_id, > tz->phys_addr); > + else > #endif > - txq->tx_ring = (union e1000_adv_tx_desc *) tz->addr; > + txq->tx_ring_phys_addr = (uint64_t) tz->phys_addr; > + > + txq->tx_ring = (union e1000_adv_tx_desc *) tz->addr; > /* Allocate software ring */ > txq->sw_ring = rte_zmalloc("txq->sw_ring", > sizeof(struct igb_tx_entry) * nb_desc, @@ - > 1414,18 +1393,21 @@ eth_igb_rx_queue_setup(struct rte_eth_dev *dev, > * resizing in later calls to the queue setup function. > */ > size = sizeof(union e1000_adv_rx_desc) * IGB_MAX_RING_DESC; > - rz = ring_dma_zone_reserve(dev, "rx_ring", queue_idx, size, socket_id); > + rz = rte_eth_dma_zone_reserve(dev, "rx_ring", queue_idx, size, > + IGB_ALIGN, socket_id); > if (rz == NULL) { > igb_rx_queue_release(rxq); > return (-ENOMEM); > } > rxq->rdt_reg_addr = E1000_PCI_REG_ADDR(hw, E1000_RDT(rxq- > >reg_idx)); > rxq->rdh_reg_addr = E1000_PCI_REG_ADDR(hw, E1000_RDH(rxq- > >reg_idx)); -#ifndef RTE_LIBRTE_XEN_DOM0 > - rxq->rx_ring_phys_addr = (uint64_t) rz->phys_addr; > -#else > - rxq->rx_ring_phys_addr = rte_mem_phy2mch(rz->memseg_id, rz- > >phys_addr); > +#ifdef RTE_LIBRTE_XEN_DOM0 > + if (is_xen_dom0_supported()) > + rxq->rx_ring_phys_addr = > + rte_mem_phy2mch(rz->memseg_id, rz->phys_addr); > + else > #endif > + rxq->rx_ring_phys_addr = (uint64_t) rz->phys_addr; > rxq->rx_ring = (union e1000_adv_rx_desc *) rz->addr; > > /* Allocate software ring. */ > diff --git a/lib/librte_pmd_i40e/i40e_ethdev.c > b/lib/librte_pmd_i40e/i40e_ethdev.c > index 9fa6bec..44a012f 100644 > --- a/lib/librte_pmd_i40e/i40e_ethdev.c > +++ b/lib/librte_pmd_i40e/i40e_ethdev.c > @@ -1979,11 +1979,12 @@ > i40e_allocate_dma_mem_d(__attribute__((unused)) struct i40e_hw *hw, > id++; > snprintf(z_name, sizeof(z_name), "i40e_dma_%"PRIu64, id); #ifdef > RTE_LIBRTE_XEN_DOM0 > - mz = rte_memzone_reserve_bounded(z_name, size, 0, 0, alignment, > - RTE_PGSIZE_2M); > -#else > - mz = rte_memzone_reserve_aligned(z_name, size, 0, 0, alignment); > + if (is_xen_dom0_supported()) > + mz = rte_memzone_reserve_bounded(z_name, size, 0, 0, > alignment, > + RTE_PGSIZE_2M); > + else > #endif > + mz = rte_memzone_reserve_aligned(z_name, size, 0, 0, > alignment); > if (!mz) > return I40E_ERR_NO_MEMORY; > > @@ -1991,10 +1992,11 @@ > i40e_allocate_dma_mem_d(__attribute__((unused)) struct i40e_hw *hw, > mem->size = size; > mem->va = mz->addr; > #ifdef RTE_LIBRTE_XEN_DOM0 > - mem->pa = rte_mem_phy2mch(mz->memseg_id, mz->phys_addr); > -#else > - mem->pa = mz->phys_addr; > + if (is_xen_dom0_supported()) > + mem->pa = rte_mem_phy2mch(mz->memseg_id, mz- > >phys_addr); > + else > #endif > + mem->pa = mz->phys_addr; > > return I40E_SUCCESS; > } > diff --git a/lib/librte_pmd_i40e/i40e_fdir.c b/lib/librte_pmd_i40e/i40e_fdir.c > index 68511c8..4c5b185 100644 > --- a/lib/librte_pmd_i40e/i40e_fdir.c > +++ b/lib/librte_pmd_i40e/i40e_fdir.c > @@ -274,10 +274,12 @@ i40e_fdir_setup(struct i40e_pf *pf) > } > pf->fdir.prg_pkt = mz->addr; > #ifdef RTE_LIBRTE_XEN_DOM0 > - pf->fdir.dma_addr = rte_mem_phy2mch(mz->memseg_id, mz- > >phys_addr); > -#else > - pf->fdir.dma_addr = (uint64_t)mz->phys_addr; > + if (is_xen_dom0_supported()) > + pf->fdir.dma_addr = rte_mem_phy2mch(mz->memseg_id, mz- > >phys_addr); > + else > #endif > + pf->fdir.dma_addr = (uint64_t)mz->phys_addr; > + > pf->fdir.match_counter_index = I40E_COUNTER_INDEX_FDIR(hw- > >pf_id); > PMD_DRV_LOG(INFO, "FDIR setup successfully, with programming > queue %u.", > vsi->base_queue); > diff --git a/lib/librte_pmd_i40e/i40e_rxtx.c b/lib/librte_pmd_i40e/i40e_rxtx.c > index 2beae3c..bd01dc0 100644 > --- a/lib/librte_pmd_i40e/i40e_rxtx.c > +++ b/lib/librte_pmd_i40e/i40e_rxtx.c > @@ -1796,10 +1796,11 @@ i40e_dev_rx_queue_setup(struct rte_eth_dev > *dev, > memset(rz->addr, 0, ring_size); > > #ifdef RTE_LIBRTE_XEN_DOM0 > - rxq->rx_ring_phys_addr = rte_mem_phy2mch(rz->memseg_id, rz- > >phys_addr); > -#else > - rxq->rx_ring_phys_addr = (uint64_t)rz->phys_addr; > + if (is_xen_dom0_supported()) > + rxq->rx_ring_phys_addr = rte_mem_phy2mch(rz->memseg_id, > rz->phys_addr); > + else > #endif > + rxq->rx_ring_phys_addr = (uint64_t)rz->phys_addr; > > rxq->rx_ring = (union i40e_rx_desc *)rz->addr; > > @@ -2079,10 +2080,11 @@ i40e_dev_tx_queue_setup(struct rte_eth_dev > *dev, > txq->tx_deferred_start = tx_conf->tx_deferred_start; > > #ifdef RTE_LIBRTE_XEN_DOM0 > - txq->tx_ring_phys_addr = rte_mem_phy2mch(tz->memseg_id, tz- > >phys_addr); > -#else > - txq->tx_ring_phys_addr = (uint64_t)tz->phys_addr; > + if (is_xen_dom0_supported()) > + txq->tx_ring_phys_addr = rte_mem_phy2mch(tz->memseg_id, > tz->phys_addr); > + else > #endif > + txq->tx_ring_phys_addr = (uint64_t)tz->phys_addr; > txq->tx_ring = (struct i40e_tx_desc *)tz->addr; > > /* Allocate software ring */ > @@ -2147,12 +2149,13 @@ i40e_ring_dma_zone_reserve(struct rte_eth_dev > *dev, > return mz; > > #ifdef RTE_LIBRTE_XEN_DOM0 > - return rte_memzone_reserve_bounded(z_name, ring_size, > - socket_id, 0, I40E_ALIGN, RTE_PGSIZE_2M); > -#else > - return rte_memzone_reserve_aligned(z_name, ring_size, > - socket_id, 0, I40E_ALIGN); > -#endif > + if (is_xen_dom0_supported()) > + return rte_memzone_reserve_bounded(z_name, ring_size, > + socket_id, 0, I40E_ALIGN, RTE_PGSIZE_2M); > + else > +#endif > + return rte_memzone_reserve_aligned(z_name, ring_size, > + socket_id, 0, I40E_ALIGN); > } > > const struct rte_memzone * > @@ -2164,12 +2167,14 @@ i40e_memzone_reserve(const char *name, > uint32_t len, int socket_id) > if (mz) > return mz; > #ifdef RTE_LIBRTE_XEN_DOM0 > - mz = rte_memzone_reserve_bounded(name, len, > - socket_id, 0, I40E_ALIGN, RTE_PGSIZE_2M); > -#else > - mz = rte_memzone_reserve_aligned(name, len, > - socket_id, 0, I40E_ALIGN); > + if (is_xen_dom0_supported()) > + mz = rte_memzone_reserve_bounded(name, len, > + socket_id, 0, I40E_ALIGN, RTE_PGSIZE_2M); > + else > #endif > + mz = rte_memzone_reserve_aligned(name, len, > + socket_id, 0, I40E_ALIGN); > + > return mz; > } > > @@ -2573,10 +2578,13 @@ i40e_fdir_setup_tx_resources(struct i40e_pf *pf) > txq->vsi = pf->fdir.fdir_vsi; > > #ifdef RTE_LIBRTE_XEN_DOM0 > - txq->tx_ring_phys_addr = rte_mem_phy2mch(tz->memseg_id, tz- > >phys_addr); > -#else > - txq->tx_ring_phys_addr = (uint64_t)tz->phys_addr; > + if (is_xen_dom0_supported()) > + txq->tx_ring_phys_addr = rte_mem_phy2mch(tz->memseg_id, > + tz->phys_addr); > + else > #endif > + txq->tx_ring_phys_addr = (uint64_t)tz->phys_addr; > + > txq->tx_ring = (struct i40e_tx_desc *)tz->addr; > /* > * don't need to allocate software ring and reset for the fdir @@ - > 2633,10 +2641,13 @@ i40e_fdir_setup_rx_resources(struct i40e_pf *pf) > rxq->vsi = pf->fdir.fdir_vsi; > > #ifdef RTE_LIBRTE_XEN_DOM0 > - rxq->rx_ring_phys_addr = rte_mem_phy2mch(rz->memseg_id, rz- > >phys_addr); > -#else > - rxq->rx_ring_phys_addr = (uint64_t)rz->phys_addr; > + if (is_xen_dom0_supported()) > + rxq->rx_ring_phys_addr = rte_mem_phy2mch(rz->memseg_id, > + rz->phys_addr); > + else > #endif > + rxq->rx_ring_phys_addr = (uint64_t)rz->phys_addr; > + > rxq->rx_ring = (union i40e_rx_desc *)rz->addr; > > /* > diff --git a/lib/librte_pmd_ixgbe/ixgbe_rxtx.c > b/lib/librte_pmd_ixgbe/ixgbe_rxtx.c > index e6766b3..303144d 100644 > --- a/lib/librte_pmd_ixgbe/ixgbe_rxtx.c > +++ b/lib/librte_pmd_ixgbe/ixgbe_rxtx.c > @@ -1656,35 +1656,6 @@ ixgbe_recv_scattered_pkts(void *rx_queue, struct > rte_mbuf **rx_pkts, #define IXGBE_MIN_RING_DESC 32 #define > IXGBE_MAX_RING_DESC 4096 > > -/* > - * Create memzone for HW rings. malloc can't be used as the physical address is > - * needed. If the memzone is already created, then this function returns a ptr > - * to the old one. > - */ > -static const struct rte_memzone * > -ring_dma_zone_reserve(struct rte_eth_dev *dev, const char *ring_name, > - uint16_t queue_id, uint32_t ring_size, int socket_id) > -{ > - char z_name[RTE_MEMZONE_NAMESIZE]; > - const struct rte_memzone *mz; > - > - snprintf(z_name, sizeof(z_name), "%s_%s_%d_%d", > - dev->driver->pci_drv.name, ring_name, > - dev->data->port_id, queue_id); > - > - mz = rte_memzone_lookup(z_name); > - if (mz) > - return mz; > - > -#ifdef RTE_LIBRTE_XEN_DOM0 > - return rte_memzone_reserve_bounded(z_name, ring_size, > - socket_id, 0, IXGBE_ALIGN, RTE_PGSIZE_2M); > -#else > - return rte_memzone_reserve_aligned(z_name, ring_size, > - socket_id, 0, IXGBE_ALIGN); > -#endif > -} > - > static void > ixgbe_tx_queue_release_mbufs(struct igb_tx_queue *txq) { @@ -1920,9 > +1891,9 @@ ixgbe_dev_tx_queue_setup(struct rte_eth_dev *dev, > * handle the maximum ring size is allocated in order to allow for > * resizing in later calls to the queue setup function. > */ > - tz = ring_dma_zone_reserve(dev, "tx_ring", queue_idx, > + tz = rte_eth_dma_zone_reserve(dev, "tx_ring", queue_idx, > sizeof(union ixgbe_adv_tx_desc) * > IXGBE_MAX_RING_DESC, > - socket_id); > + IXGBE_ALIGN, socket_id); > if (tz == NULL) { > ixgbe_tx_queue_release(txq); > return (-ENOMEM); > @@ -1950,11 +1921,14 @@ ixgbe_dev_tx_queue_setup(struct rte_eth_dev > *dev, > txq->tdt_reg_addr = IXGBE_PCI_REG_ADDR(hw, > IXGBE_VFTDT(queue_idx)); > else > txq->tdt_reg_addr = IXGBE_PCI_REG_ADDR(hw, > IXGBE_TDT(txq->reg_idx)); > -#ifndef RTE_LIBRTE_XEN_DOM0 > - txq->tx_ring_phys_addr = (uint64_t) tz->phys_addr; > -#else > - txq->tx_ring_phys_addr = rte_mem_phy2mch(tz->memseg_id, tz- > >phys_addr); > + > +#ifdef RTE_LIBRTE_XEN_DOM0 > + if (is_xen_dom0_supported()) > + txq->tx_ring_phys_addr = > + rte_mem_phy2mch(tz->memseg_id, tz->phys_addr); > + else > #endif > + txq->tx_ring_phys_addr = (uint64_t) tz->phys_addr; > txq->tx_ring = (union ixgbe_adv_tx_desc *) tz->addr; > > /* Allocate software ring */ > @@ -2195,8 +2169,8 @@ ixgbe_dev_rx_queue_setup(struct rte_eth_dev > *dev, > * handle the maximum ring size is allocated in order to allow for > * resizing in later calls to the queue setup function. > */ > - rz = ring_dma_zone_reserve(dev, "rx_ring", queue_idx, > - RX_RING_SZ, socket_id); > + rz = rte_eth_dma_zone_reserve(dev, "rx_ring", queue_idx, > + RX_RING_SZ, IXGBE_ALIGN, socket_id); > if (rz == NULL) { > ixgbe_rx_queue_release(rxq); > return (-ENOMEM); > @@ -2223,11 +2197,13 @@ ixgbe_dev_rx_queue_setup(struct rte_eth_dev > *dev, > rxq->rdh_reg_addr = > IXGBE_PCI_REG_ADDR(hw, IXGBE_RDH(rxq->reg_idx)); > } > -#ifndef RTE_LIBRTE_XEN_DOM0 > - rxq->rx_ring_phys_addr = (uint64_t) rz->phys_addr; > -#else > - rxq->rx_ring_phys_addr = rte_mem_phy2mch(rz->memseg_id, rz- > >phys_addr); > +#ifdef RTE_LIBRTE_XEN_DOM0 > + if (is_xen_dom0_supported()) > + rxq->rx_ring_phys_addr = > + rte_mem_phy2mch(rz->memseg_id, rz->phys_addr); > + else > #endif > + rxq->rx_ring_phys_addr = (uint64_t) rz->phys_addr; > rxq->rx_ring = (union ixgbe_adv_rx_desc *) rz->addr; > > /* > -- > 2.1.4 Acked-by: Jijiang Liu <Jijiang.liu@intel.com>
Hi, You need use dpdkvhost port for VM, not dpdk port. For example, here is the log 9029690c-9544-4ad0-aa41-b018c1a755e2 Bridge "br1" Port "dpdkvhost1" Interface "dpdkvhost1" type: dpdkvhost Port "br1" Interface "br1" type: internal Port "dpdk0" Interface "dpdk0" type: dpdk Port "dpdk1" Interface "dpdk1" type: dpdk Port "dpdkvhost0" Interface "dpdkvhost0" type: dpdkvhost Please refer to this link https://01.org/sites/default/files/page/intel_onp_server_release_1.2_benchmark_test_report_v1.0.pdf (Page 40,41,...53..) It will help you to setup OVS correctly. On Tue, Mar 10, 2015 at 12:17 PM, Arkajit Ghosh <arkajit.ghosh@tcs.com> wrote: > > Hi, > > Please find the attachement. > > > Thanks & Regards > Arkajit Ghosh > > ____________________________________________ > > -----Ngo Doan Lap <lapngodoan@gmail.com> wrote: ----- > To: Arkajit Ghosh <arkajit.ghosh@tcs.com> > From: Ngo Doan Lap <lapngodoan@gmail.com> > Date: 03/10/2015 10:25AM > Cc: dev@dpdk.org > Subject: Re: #PERSONAL#[dpdk-dev] Guest Machine is not Pingable from Host > Machine > > > Hi Arkajit, > I can't find your attachment. > > On Tue, Mar 10, 2015 at 10:23 AM, Arkajit Ghosh <arkajit.ghosh@tcs.com> > wrote: > >> >> Hi, >> >> Can any one please suggest how to proceed now. >> >> >> Thanks & Regards >> Arkajit Ghosh >> ____________________________________________ >> >> -----Arkajit Ghosh/DEL/TCS wrote: ----- >> To: Ngo Doan Lap <lapngodoan@gmail.com> >> From: Arkajit Ghosh/DEL/TCS >> Date: 03/09/2015 09:39AM >> Cc: dev@dpdk.org >> Subject: Re: [dpdk-dev] Guest Machine is not Pingable from Host Machine >> >> >> Hi, >> >> I have executed below commands: >> >> ./utilities/ovs-vsctl add-br ovsbr0 >> ./utilities/ovs-vsctl set bridge datapath_type=netdev >> ./utilities/ovs-vsctl add-port ovsbr0 dpdk0 -- set Interface dpdk0 >> type=dpdk >> ./utilities/ovs-vsctl add-port ovsbr0 dpdk1 -- set Interface dpdk1 >> type=dpdk >> ./utilities/ovs-vsctl show >> >> Please find the attachement for bridge and dpdk-port creation.. >> >> Now, If i do "ifconfig -a" the created bridge ovsbr0 is showing Broadcast >> Running and Multicast but ip address was not given. So i had assign an >> IP-address to ovsbr0 which previously Eth1 had. >> >> So, now I try to ping this guest machine ip address from its host. Here >> is the output. >> >> ping 192.168.1.7 >> PING 192.168.1.7 (192.168.1.7) 56(84) bytes of data. >> From 192.168.1.40 icmp_seq=1 Destination Host Unreachable >> From 192.168.1.40 icmp_seq=5 Destination Host Unreachable >> From 192.168.1.40 icmp_seq=6 Destination Host Unreachable >> From 192.168.1.40 icmp_seq=7 Destination Host Unreachable >> From 192.168.1.40 icmp_seq=8 Destination Host Unreachable >> From 192.168.1.40 icmp_seq=9 Destination Host Unreachable >> >> >> *I believe it should be pinged from its host machine. Can please let me >> know what is the issue and how to proceed.* >> Thanks & Regards >> Arkajit Ghosh >> ____________________________________________ >> >> -----Ngo Doan Lap <lapngodoan@gmail.com> wrote: ----- >> To: Arkajit Ghosh <arkajit.ghosh@tcs.com> >> From: Ngo Doan Lap <lapngodoan@gmail.com> >> Date: 03/06/2015 08:52PM >> Cc: dev@dpdk.org >> Subject: Re: [dpdk-dev] Guest Machine is not Pingable from Host Machine >> >> Hi, >> Can you show the log output of OVS? and the ouput of following command >> cd path/to/ovs/utilities/ >> ./ovs-ofctl show br0 >> ./ovs-ofctl dump-flows br0 >> (Assum that br0 is a bridge name that you had created) >> >> On Fri, Mar 6, 2015 at 10:14 PM, Arkajit Ghosh <arkajit.ghosh@tcs.com> >> wrote: >> >>> Hi, >>> >>> Can anyone please suggest how to proceed. >>> >>> >>> Thanks & Regards >>> Arkajit Ghosh >>> >>> -----Arkajit Ghosh/DEL/TCS wrote: ----- >>> To: dev@dpdk.org >>> From: Arkajit Ghosh/DEL/TCS >>> Date: 03/04/2015 12:39PM >>> Subject: Guest Machine is not Pingable from Host Machine >>> >>> Hi Team, >>> >>> Guest machine is not pingable from Host machine after creating a bridge >>> with datapath_type "netdev" in the configuration database and adding dpdk >>> ports. Can anyone please let me know what is the issue. >>> >>> Thanks in advance. >>> >>> Thanks & Regards >>> Arkajit Ghosh >>> >>> >>> =====-----=====-----===== >>> Notice: The information contained in this e-mail >>> message and/or attachments to it may contain >>> confidential or privileged information. If you are >>> not the intended recipient, any dissemination, use, >>> review, distribution, printing or copying of the >>> information contained in this e-mail message >>> and/or attachments to it are strictly prohibited. If >>> you have received this communication in error, >>> please notify us by reply e-mail or telephone and >>> immediately and permanently delete the message >>> and any attachments. Thank you >>> >>> >>> >> >> >> -- >> Thanks and Best Regards, >> Ngo Doan Lap >> Mobile: 0977.833.757 >> >> >> [attachment "DPDK_Output_Result.odt" removed by Arkajit Ghosh/DEL/TCS] >> > > > > -- > Thanks and Best Regards, > Ngo Doan Lap > Mobile: 0977.833.757 > -- Thanks and Best Regards, Ngo Doan Lap Mobile: 0977.833.757
Hi, Ok. Thanks a lot. Give me some time. I will go through the .pdf file page numbers as you mentioned. Once done I will let you know. Once a again thanks a lot for your support and quick response. Thanks & Regards Arkajit Ghosh ____________________________________________ -----Ngo Doan Lap <lapngodoan@gmail.com> wrote: ----- To: Arkajit Ghosh <arkajit.ghosh@tcs.com> From: Ngo Doan Lap <lapngodoan@gmail.com> Date: 03/10/2015 01:36PM Cc: dev@dpdk.org Subject: Re: #PERSONAL#[dpdk-dev] Guest Machine is not Pingable from Host Machine Hi, You need use dpdkvhost port for VM, not dpdk port. For example, here is the log 9029690c-9544-4ad0-aa41-b018c1a755e2 Bridge "br1" Port "dpdkvhost1" Interface "dpdkvhost1" type: dpdkvhost Port "br1" Interface "br1" type: internal Port "dpdk0" Interface "dpdk0" type: dpdk Port "dpdk1" Interface "dpdk1" type: dpdk Port "dpdkvhost0" Interface "dpdkvhost0" type: dpdkvhost Please refer to this link https://01.org/sites/default/files/page/intel_onp_server_release_1.2_benchmark_test_report_v1.0.pdf (Page 40,41,...53..) It will help you to setup OVS correctly. On Tue, Mar 10, 2015 at 12:17 PM, Arkajit Ghosh <arkajit.ghosh@tcs.com> wrote: Hi, Please find the attachement. Thanks & Regards Arkajit Ghosh ____________________________________________ -----Ngo Doan Lap <lapngodoan@gmail.com> wrote: ----- To: Arkajit Ghosh <arkajit.ghosh@tcs.com> From: Ngo Doan Lap <lapngodoan@gmail.com> Date: 03/10/2015 10:25AM Cc: dev@dpdk.org Subject: Re: #PERSONAL#[dpdk-dev] Guest Machine is not Pingable from Host Machine Hi Arkajit, I can't find your attachment. On Tue, Mar 10, 2015 at 10:23 AM, Arkajit Ghosh <arkajit.ghosh@tcs.com> wrote: Hi, Can any one please suggest how to proceed now. Thanks & Regards Arkajit Ghosh ____________________________________________ -----Arkajit Ghosh/DEL/TCS wrote: ----- To: Ngo Doan Lap <lapngodoan@gmail.com> From: Arkajit Ghosh/DEL/TCS Date: 03/09/2015 09:39AM Cc: dev@dpdk.org Subject: Re: [dpdk-dev] Guest Machine is not Pingable from Host Machine Hi, I have executed below commands: ./utilities/ovs-vsctl add-br ovsbr0 ./utilities/ovs-vsctl set bridge datapath_type=netdev ./utilities/ovs-vsctl add-port ovsbr0 dpdk0 -- set Interface dpdk0 type=dpdk ./utilities/ovs-vsctl add-port ovsbr0 dpdk1 -- set Interface dpdk1 type=dpdk ./utilities/ovs-vsctl show Please find the attachement for bridge and dpdk-port creation.. Now, If i do "ifconfig -a" the created bridge ovsbr0 is showing Broadcast Running and Multicast but ip address was not given. So i had assign an IP-address to ovsbr0 which previously Eth1 had. So, now I try to ping this guest machine ip address from its host. Here is the output. ping 192.168.1.7 PING 192.168.1.7 (192.168.1.7) 56(84) bytes of data. >From 192.168.1.40 icmp_seq=1 Destination Host Unreachable >From 192.168.1.40 icmp_seq=5 Destination Host Unreachable >From 192.168.1.40 icmp_seq=6 Destination Host Unreachable >From 192.168.1.40 icmp_seq=7 Destination Host Unreachable >From 192.168.1.40 icmp_seq=8 Destination Host Unreachable >From 192.168.1.40 icmp_seq=9 Destination Host Unreachable I believe it should be pinged from its host machine. Can please let me know what is the issue and how to proceed. Thanks & Regards Arkajit Ghosh ____________________________________________ -----Ngo Doan Lap <lapngodoan@gmail.com> wrote: ----- To: Arkajit Ghosh <arkajit.ghosh@tcs.com> From: Ngo Doan Lap <lapngodoan@gmail.com> Date: 03/06/2015 08:52PM Cc: dev@dpdk.org Subject: Re: [dpdk-dev] Guest Machine is not Pingable from Host Machine Hi, Can you show the log output of OVS? and the ouput of following command cd path/to/ovs/utilities/ ./ovs-ofctl show br0 ./ovs-ofctl dump-flows br0 (Assum that br0 is a bridge name that you had created) On Fri, Mar 6, 2015 at 10:14 PM, Arkajit Ghosh <arkajit.ghosh@tcs.com> wrote: Hi, Can anyone please suggest how to proceed. Thanks & Regards Arkajit Ghosh -----Arkajit Ghosh/DEL/TCS wrote: ----- To: dev@dpdk.org From: Arkajit Ghosh/DEL/TCS Date: 03/04/2015 12:39PM Subject: Guest Machine is not Pingable from Host Machine Hi Team, Guest machine is not pingable from Host machine after creating a bridge with datapath_type "netdev" in the configuration database and adding dpdk ports. Can anyone please let me know what is the issue. Thanks in advance. Thanks & Regards Arkajit Ghosh =====-----=====-----===== Notice: The information contained in this e-mail message and/or attachments to it may contain confidential or privileged information. If you are not the intended recipient, any dissemination, use, review, distribution, printing or copying of the information contained in this e-mail message and/or attachments to it are strictly prohibited. If you have received this communication in error, please notify us by reply e-mail or telephone and immediately and permanently delete the message and any attachments. Thank you -- Thanks and Best Regards, Ngo Doan Lap Mobile: 0977.833.757 [attachment "DPDK_Output_Result.odt" removed by Arkajit Ghosh/DEL/TCS] -- Thanks and Best Regards, Ngo Doan Lap Mobile: 0977.833.757 -- Thanks and Best Regards, Ngo Doan Lap Mobile: 0977.833.757 From david.marchand@6wind.com Tue Mar 10 10:08:25 2015 Return-Path: <david.marchand@6wind.com> Received: from mail-ob0-f179.google.com (mail-ob0-f179.google.com [209.85.214.179]) by dpdk.org (Postfix) with ESMTP id 3F83C683D for <dev@dpdk.org>; Tue, 10 Mar 2015 10:08:25 +0100 (CET) Received: by obcwp18 with SMTP id wp18so206595obc.1 for <dev@dpdk.org>; Tue, 10 Mar 2015 02:08:24 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d\x1e100.net; s 130820; h=x-gm-message-state:mime-version:in-reply-to:references:date :message-id:subject:from:to:cc:content-type; bh=2s67r5LvFijGyGxIoW1y/VSxjaaAYg0Et+v6tKCHhQc=; b=J22zUxZIbEmpQJF21aEnzjEd6eJcGB96eWJgnvlByw4PJAoeH0rduyecYeixDmi6Eq lD4Ii8HVIEcXclOz+GVjq7JpOBcL8m6XUeqe+7kuHKy8TXR4jq3qUp8WU+h9XoEXz/oQ FrA8mCUH6jqu/7p1npmfApor2QXMfJLtaDmPTO0GEERpk4vE8mIpFGMPku5B4ZQk0s2f fhPu3slfTwSdtdSZzW44+dl9b5ZSy/JWBa5aLHg/DJMn7gQonkq7WSkEQB/iZMC1j7b+ b4DjnsISYaRwKA7sgu8p2D7sCzp5ie9S8M831kYkLCWpeJWXtz2S6p21bXdLPxNnGrwM I+/g=X-Gm-Message-State: ALoCoQlzYhrT9UpuHf7IC+5soZWs50KwFY+gIl8Ak6A8JK4toarcJa29pGOTYMQ/Bc5gu+b0rSko MIME-Version: 1.0 X-Received: by 10.202.108.137 with SMTP id h131mr23718734oic.90.1425978504561; Tue, 10 Mar 2015 02:08:24 -0700 (PDT) Received: by 10.76.34.35 with HTTP; Tue, 10 Mar 2015 02:08:24 -0700 (PDT) In-Reply-To: <20150309152106.GA24326@hmsreliant.think-freely.org> References: <CALwxeUuQtv685KnbmpZKCPkrAqmjLs558xeCW7c=-TPTsB423w@mail.gmail.com> <1425912999-13118-1-git-send-email-david.marchand@6wind.com> <1425912999-13118-2-git-send-email-david.marchand@6wind.com> <20150309152106.GA24326@hmsreliant.think-freely.org> Date: Tue, 10 Mar 2015 10:08:24 +0100 Message-ID: <CALwxeUs4hPbYDPBUfz9u2AoiCoj_wwTsAyj=_1xxzuT6LLW6nw@mail.gmail.com> From: David Marchand <david.marchand@6wind.com> To: Neil Horman <nhorman@tuxdriver.com> Content-Type: text/plain; charset=UTF-8 X-Content-Filtered-By: Mailman/MimeDel 2.1.15 Cc: "dev@dpdk.org" <dev@dpdk.org> Subject: Re: [dpdk-dev] [PATCH 1/2] eal/linux: move plugin load to very start of eal init X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: patches and discussions about DPDK <dev.dpdk.org> List-Unsubscribe: <http://dpdk.org/ml/options/dev>, <mailto:dev-request@dpdk.org?subject=unsubscribe> List-Archive: <http://dpdk.org/ml/archives/dev/> List-Post: <mailto:dev@dpdk.org> List-Help: <mailto:dev-request@dpdk.org?subject=help> List-Subscribe: <http://dpdk.org/ml/listinfo/dev>, <mailto:dev-request@dpdk.org?subject=subscribe> X-List-Received-Date: Tue, 10 Mar 2015 09:08:25 -0000 Hello Neil, On Mon, Mar 9, 2015 at 4:21 PM, Neil Horman <nhorman@tuxdriver.com> wrote: > On Mon, Mar 09, 2015 at 03:56:38PM +0100, David Marchand wrote: > > Loading shared libraries should be done at the very start of eal init so > that > > the code statically built in dpdk and the code loaded from shared > objects is > > handled (almost) the same way wrt to call to rte_eal_init(). > > The only thing that must be done before is filling the solib_list which > is done > > by eal_parse_args(). > > > > > I don't see anything explicitly wrong with this, but at the same time it > doesn't > seem to fix anything. Is there a particular bug that you're fixing in > relation > to your cover letter here? Or is there some expectation that PMD's loaded > in > this fashion expect the dpdk to be completely uninitalized? That would > seem > like a strange operational requirement to me. > Well, at first, I wanted to fix the virtio pmd init issue (iopl() not called at the right place wrt to other pthreads created in rte_eal_init()). With next patch, this issue is fixed for statically builtin virtio pmd, but for virtio pmd as a shared object, the dlopen comes too late. So, yes, I moved the dlopen() for this reason. >From a more general point of view, since we support both static and dso pmds, I would say that this is more logical to have dlopen comes very early, since static code is "loaded" even earlier : if the current pmds needed more than just register to the driver list, they would already have triggered segfaults and/or bugs. I know this change comes really late for 2.0. I am open to other ideas but I don't want to see more #ifdef <some feature> in eal.c (especially for a pmd), this is a non sense. I would say that at least the patch 2 is needed for 2.0 : it fixes the static case, but without patch 1 virtio pmd triggers a segfault on interrupt receipt when built as a dso. -- David Marchand