[dpdk-dev] [PATCH v2] fix checkpatch errors

2016-01-28 Thread Xie, Huawei
On 1/28/2016 4:06 PM, Thomas Monjalon wrote: > 2016-01-28 03:09, Xie, Huawei: >> On 1/28/2016 2:17 AM, Thomas Monjalon wrote: >>> 2016-01-27 01:26, Huawei Xie: >>>> v2 changes: >>>> add missed commit message in v1 >>>> >>&

[dpdk-dev] [RFC PATCH 5/5] virtio: Extend virtio-net PMD to support container environment

2016-01-28 Thread Xie, Huawei
On 1/28/2016 10:48 AM, Tetsuya Mukawa wrote: > I measured it, and seems it takes 0.35 seconds in my environment. > This will be done only once when the port is initialized. Probably it's > not so heady. There are 256 x 32 loop of pci scan. That is too long if we dynamically start/tear down the

[dpdk-dev] [PATCH v2] fix checkpatch errors

2016-01-28 Thread Xie, Huawei
On 1/28/2016 2:17 AM, Thomas Monjalon wrote: > 2016-01-27 01:26, Huawei Xie: >> v2 changes: >> add missed commit message in v1 >> >> fix the error reported by checkpatch: >> "ERROR: return is not a function, parentheses are not required" >> >> also removed other extra parentheses like: >>

[dpdk-dev] [RFC PATCH 5/5] virtio: Extend virtio-net PMD to support container environment

2016-01-27 Thread Xie, Huawei
On 1/21/2016 7:09 PM, Tetsuya Mukawa wrote: > +qtest_find_pci_device(struct qtest_session *s, uint16_t bus, uint8_t device) > +{ > + struct qtest_pci_device *dev; > + uint32_t val; > + > + val = qtest_pci_inl(s, bus, device, 0, 0); > + TAILQ_FOREACH(dev, >head, next) { > +

[dpdk-dev] [RFC PATCH 5/5] virtio: Extend virtio-net PMD to support container environment

2016-01-27 Thread Xie, Huawei
On 1/21/2016 7:09 PM, Tetsuya Mukawa wrote: > + /* Set BAR region */ > + for (i = 0; i < NB_BAR; i++) { > + switch (dev->bar[i].type) { > + case QTEST_PCI_BAR_IO: > + case QTEST_PCI_BAR_MEMORY_UNDER_1MB: > + case QTEST_PCI_BAR_MEMORY_32: > +

[dpdk-dev] [RFC PATCH 5/5] virtio: Extend virtio-net PMD to support container environment

2016-01-27 Thread Xie, Huawei
On 1/26/2016 10:58 AM, Tetsuya Mukawa wrote: > On 2016/01/25 19:15, Xie, Huawei wrote: >> On 1/22/2016 6:38 PM, Tetsuya Mukawa wrote: >>> On 2016/01/22 17:14, Xie, Huawei wrote: >>>> On 1/21/2016 7:09 PM, Tetsuya Mukawa wrote: >>>>> virtio: Extend vi

[dpdk-dev] [PATCH 4/5] vhost: do not use rte_memcpy for virtio_hdr copy

2016-01-27 Thread Xie, Huawei
On 1/27/2016 2:02 PM, Yuanhan Liu wrote: > On Wed, Jan 27, 2016 at 05:56:56AM +0000, Xie, Huawei wrote: >> On 1/27/2016 11:22 AM, Yuanhan Liu wrote: >>> On Wed, Jan 27, 2016 at 02:46:39AM +, Xie, Huawei wrote: >>>> On 12/3/2015 2:03 PM, Yuanhan Liu wrote: >&g

[dpdk-dev] [PATCH 1/5] vhost: refactor rte_vhost_dequeue_burst

2016-01-27 Thread Xie, Huawei
On 1/27/2016 11:26 AM, Yuanhan Liu wrote: > On Tue, Jan 26, 2016 at 10:30:12AM +0000, Xie, Huawei wrote: >> On 12/3/2015 2:03 PM, Yuanhan Liu wrote: >>> Signed-off-by: Yuanhan Liu >>> --- >>> lib/librte_vhost/vhost_rxtx.c | 287 >>> +

[dpdk-dev] [PATCH 4/5] vhost: do not use rte_memcpy for virtio_hdr copy

2016-01-27 Thread Xie, Huawei
On 1/27/2016 11:22 AM, Yuanhan Liu wrote: > On Wed, Jan 27, 2016 at 02:46:39AM +0000, Xie, Huawei wrote: >> On 12/3/2015 2:03 PM, Yuanhan Liu wrote: >>> + if (vq->vhost_hlen == sizeof(struct virtio_net_hdr_mrg_rxbuf)) { >>> + *(struct virtio_net_hdr_mr

[dpdk-dev] [PATCH 4/5] vhost: do not use rte_memcpy for virtio_hdr copy

2016-01-27 Thread Xie, Huawei
On 12/3/2015 2:03 PM, Yuanhan Liu wrote: > + if (vq->vhost_hlen == sizeof(struct virtio_net_hdr_mrg_rxbuf)) { > + *(struct virtio_net_hdr_mrg_rxbuf *)(uintptr_t)desc_addr = hdr; > + } else { > + *(struct virtio_net_hdr *)(uintptr_t)desc_addr = hdr.hdr; > + }

[dpdk-dev] [PATCH 1/5] vhost: refactor rte_vhost_dequeue_burst

2016-01-26 Thread Xie, Huawei
On 12/3/2015 2:03 PM, Yuanhan Liu wrote: > Signed-off-by: Yuanhan Liu > --- > lib/librte_vhost/vhost_rxtx.c | 287 > +- > 1 file changed, 113 insertions(+), 174 deletions(-) Prefer to unroll copy_mbuf_to_desc and your COPY macro. It prevents us

[dpdk-dev] [RFC PATCH 5/5] virtio: Extend virtio-net PMD to support container environment

2016-01-25 Thread Xie, Huawei
On 1/21/2016 7:09 PM, Tetsuya Mukawa wrote: > +#define PCI_CONFIG_ADDR(_bus, _device, _function, _offset) ( \ > + (1 << 31) | ((_bus) & 0xff) << 16 | ((_device) & 0x1f) << 11 | \ > + ((_function) & 0xf) << 8 | ((_offset) & 0xfc)) (_function) & 0x7 ?

[dpdk-dev] [RFC PATCH 5/5] virtio: Extend virtio-net PMD to support container environment

2016-01-25 Thread Xie, Huawei
On 1/22/2016 6:38 PM, Tetsuya Mukawa wrote: > On 2016/01/22 17:14, Xie, Huawei wrote: >> On 1/21/2016 7:09 PM, Tetsuya Mukawa wrote: >>> virtio: Extend virtio-net PMD to support container environment >>> >>> The patch adds a new virtio-net PMD configuration tha

[dpdk-dev] [RFC PATCH 5/5] virtio: Extend virtio-net PMD to support container environment

2016-01-22 Thread Xie, Huawei
On 1/21/2016 7:09 PM, Tetsuya Mukawa wrote: > virtio: Extend virtio-net PMD to support container environment > > The patch adds a new virtio-net PMD configuration that allows the PMD to > work on host as if the PMD is in VM. > Here is new configuration for virtio-net PMD. > -

[dpdk-dev] [RFC PATCH 3/5] virtio: Add a new layer to abstract pci access method

2016-01-22 Thread Xie, Huawei
On 1/21/2016 7:08 PM, Tetsuya Mukawa wrote: > +static void > +phys_legacy_write16(struct virtio_hw *hw, uint16_t *addr, uint16_t val) > +{ > + return outb_p((unsigned short)val, > + (unsigned short)(hw->io_base + (uint64_t)addr)); outb_p -> outw_p > +} > + > +static void

[dpdk-dev] [PATCH 3/4] virtio/vdev: add ways to interact with vhost

2016-01-21 Thread Xie, Huawei
On 1/11/2016 2:43 AM, Tan, Jianfeng wrote: > + if (hw->type == VHOST_KERNEL) { > + struct vhost_vring_file file; > + > + file.fd = hw->backfd; > + nvqs = data->nb_rx_queues + data->nb_tx_queues; > + for (file.index = 0; file.index < nvqs;

[dpdk-dev] [PATCH 1/4] mem: add --single-file to create single mem-backed file

2016-01-21 Thread Xie, Huawei
On 1/11/2016 2:43 AM, Tan, Jianfeng wrote: [snip] > +#include > +#include > +#include > +#include Please remove unreferenced header files. > > #include > #include > @@ -92,6 +96,9 @@ > #include > #include > > +#define _GNU_SOURCE > +#include > + > #include "eal_private.h"

[dpdk-dev] [PATCH 0/4] virtio support for container

2016-01-20 Thread Xie, Huawei
On 1/12/2016 1:37 PM, Tetsuya Mukawa wrote: > Hi Jianfeng and Xie, > > I guess my implementation and yours have a lot of common code, so I will > try to rebase my patch on yours. > > BTW, one thing I need to change your memory allocation way is that > mmaped address should be under 44bit(32 +

[dpdk-dev] [PATCH] vhost: remove lockless enqueue to the virtio ring

2016-01-20 Thread Xie, Huawei
ment to this patch? > > -Original Message- > From: dev [mailto:dev-bounces at dpdk.org] On Behalf Of Xie, Huawei > Sent: Tuesday, January 19, 2016 8:44 AM > To: Tan, Jianfeng; dev at dpdk.org > Cc: ann.zhuangyanying at huawei.com > Subject: Re: [dpdk-dev] [PATCH]

[dpdk-dev] [PATCH] vhost: remove lockless enqueue to the virtio ring

2016-01-19 Thread Xie, Huawei
On 1/20/2016 12:25 AM, Tan, Jianfeng wrote: > Hi Huawei, > > On 1/4/2016 10:46 PM, Huawei Xie wrote: >> This patch removes the internal lockless enqueue implmentation. >> DPDK doesn't support receiving/transmitting packets from/to the same >> queue. Vhost PMD wraps vhost device as normal DPDK

[dpdk-dev] [PATCH v4 7/8] virtio: add 1.0 support

2016-01-19 Thread Xie, Huawei
On 1/19/2016 3:44 PM, Xie, Huawei wrote: > On 1/19/2016 1:53 PM, Yuanhan Liu wrote: >> On Mon, Jan 18, 2016 at 04:50:16PM +0000, Xie, Huawei wrote: >>> On 1/15/2016 12:34 PM, Yuanhan Liu wrote: >>>> -static void >>>> +static int >>&g

[dpdk-dev] [PATCH v4 7/8] virtio: add 1.0 support

2016-01-19 Thread Xie, Huawei
On 1/19/2016 1:53 PM, Yuanhan Liu wrote: > On Mon, Jan 18, 2016 at 04:50:16PM +0000, Xie, Huawei wrote: >> On 1/15/2016 12:34 PM, Yuanhan Liu wrote: >>> -static void >>> +static int >>> virtio_negotiate_features(struct virtio_hw *hw) >>> { >>

[dpdk-dev] [PATCH v4 7/8] virtio: add 1.0 support

2016-01-19 Thread Xie, Huawei
On 1/19/2016 10:44 AM, Yuanhan Liu wrote: > On Tue, Jan 19, 2016 at 01:51:30AM +0000, Xie, Huawei wrote: >> On 1/19/2016 9:34 AM, Yuanhan Liu wrote: >>> On Mon, Jan 18, 2016 at 05:07:51PM +, Xie, Huawei wrote: >>>> .On 1/15/2016 12:34 PM, Yuanhan Liu wrote:

[dpdk-dev] [PATCH 3/3] virtio: Add a new layer to abstract pci access method

2016-01-19 Thread Xie, Huawei
On 1/18/2016 9:44 PM, Yuanhan Liu wrote: > On Mon, Jan 18, 2016 at 06:13:09PM +0900, Tetsuya Mukawa wrote: >> +struct virtio_pci_access_ops { >> +uint8_t (*legacy_read8)(struct virtio_hw *hw, uint8_t *addr); >> +uint16_t (*legacy_read16)(struct virtio_hw *hw, uint16_t *addr); >> +

[dpdk-dev] [RESEND PATCH] vhost_user: Make sure that memory map is set before attempting address translation

2016-01-18 Thread Xie, Huawei
On 1/15/2016 4:10 PM, Pavel Fedin wrote: > Hello! > >> If this is the case, i am wondering whether we should include >> "malfunctioning clients" in commit message. It triggers me to think if >> there are existing buggy implementations. > Well... Can you suggest how to rephrase it? May be "if a

[dpdk-dev] [PATCH v4 2/8] virtio: introduce struct virtio_pci_ops

2016-01-18 Thread Xie, Huawei
On 1/15/2016 12:34 PM, Yuanhan Liu wrote: > +void > +vtpci_write_dev_config(struct virtio_hw *hw, uint64_t offset, > + void *src, int length) > +{ > + hw->vtpci_ops->write_dev_cfg(hw, offset, src, length); missed changing src to const. > +}

[dpdk-dev] [PATCH v4 7/8] virtio: add 1.0 support

2016-01-18 Thread Xie, Huawei
.On 1/15/2016 12:34 PM, Yuanhan Liu wrote: > Modern (v1.0) virtio pci device defines several pci capabilities. > Each cap has a configure structure corresponding to it, and the > cap.bar and cap.offset fields tell us where to find it. > [snip] > + > +static inline void >

[dpdk-dev] [PATCH v4 7/8] virtio: add 1.0 support

2016-01-18 Thread Xie, Huawei
On 1/15/2016 12:34 PM, Yuanhan Liu wrote: > -static void > +static int > virtio_negotiate_features(struct virtio_hw *hw) > { > uint64_t host_features; > @@ -949,6 +949,22 @@ virtio_negotiate_features(struct virtio_hw *hw) > hw->guest_features = vtpci_negotiate_features(hw,

[dpdk-dev] [PATCH v4 7/8] virtio: add 1.0 support

2016-01-18 Thread Xie, Huawei
On 1/15/2016 12:34 PM, Yuanhan Liu wrote: > Modern (v1.0) virtio pci device defines several pci capabilities. > Each cap has a configure structure corresponding to it, and the > cap.bar and cap.offset fields tell us where to find it. > [snip] > > +static void * > +get_cfg_addr(struct

[dpdk-dev] [PATCH v2 0/5] virtio: Tx performance improvements

2016-01-14 Thread Xie, Huawei
On 1/6/2016 8:04 PM, Thomas Monjalon wrote: > 2016-01-05 08:10, Xie, Huawei: >> On 10/26/2015 10:06 PM, Xie, Huawei wrote: >>> On 10/19/2015 1:16 PM, Stephen Hemminger wrote: >>>> This is a tested version of the virtio Tx performance improvements >>

[dpdk-dev] [PATCH v2 7/7] virtio: add 1.0 support

2016-01-14 Thread Xie, Huawei
On 1/14/2016 4:21 PM, Yuanhan Liu wrote: > On Thu, Jan 14, 2016 at 08:08:28AM +0000, Xie, Huawei wrote: >> On 1/14/2016 3:58 PM, Yuanhan Liu wrote: >>> On Thu, Jan 14, 2016 at 07:51:08AM +, Xie, Huawei wrote: >>>> On 1/14/2016 3:49 PM, Yuanhan Liu wrote: >&

[dpdk-dev] [PATCH v2 7/7] virtio: add 1.0 support

2016-01-14 Thread Xie, Huawei
On 1/14/2016 3:58 PM, Yuanhan Liu wrote: > On Thu, Jan 14, 2016 at 07:51:08AM +0000, Xie, Huawei wrote: >> On 1/14/2016 3:49 PM, Yuanhan Liu wrote: >>> On Thu, Jan 14, 2016 at 07:47:17AM +, Xie, Huawei wrote: >>>> On 1/12/2016 2:58 PM, Yuanhan Liu wrote: >>

[dpdk-dev] [PATCH v2 7/7] virtio: add 1.0 support

2016-01-14 Thread Xie, Huawei
On 1/14/2016 3:49 PM, Yuanhan Liu wrote: > On Thu, Jan 14, 2016 at 07:47:17AM +0000, Xie, Huawei wrote: >> On 1/12/2016 2:58 PM, Yuanhan Liu wrote: >>> Modern (v1.0) virtio pci device defines several pci capabilities. >> [snip] >>> +static void >>>

[dpdk-dev] [PATCH v2 7/7] virtio: add 1.0 support

2016-01-14 Thread Xie, Huawei
On 1/12/2016 2:58 PM, Yuanhan Liu wrote: > Modern (v1.0) virtio pci device defines several pci capabilities. > Each cap has a configure structure corresponding to it, and the > cap.bar and cap.offset fields tell us where to find it. > > Firstly, we map the pci resources by

[dpdk-dev] [PATCH v2 7/7] virtio: add 1.0 support

2016-01-14 Thread Xie, Huawei
On 1/12/2016 2:58 PM, Yuanhan Liu wrote: > Modern (v1.0) virtio pci device defines several pci capabilities. [snip] > +static void > +modern_notify_queue(struct virtio_hw *hw __rte_unused, struct virtqueue *vq) > +{ > + modern_write16(1, vq->notify_addr); > +} Does virtio 1.0 only supports

[dpdk-dev] [RESEND PATCH] vhost_user: Make sure that memory map is set before attempting address translation

2016-01-13 Thread Xie, Huawei
On 1/13/2016 5:40 PM, Pavel Fedin wrote: > Hello! > >> Do you have examples for the malfunctioning clients? If so, could you >> list them in the commit message? > The only malfunctioning client was DPDK itself, with virtio for container > RFC applied. The client-side problem has been fixed >

[dpdk-dev] [RESEND PATCH] vhost_user: Make sure that memory map is set before attempting address translation

2016-01-13 Thread Xie, Huawei
On 1/13/2016 3:33 PM, Pavel Fedin wrote: > Malfunctioning virtio clients may not send VHOST_USER_SET_MEM_TABLE for > some reason. This causes NULL dereference in qva_to_vva(). Do you have examples for the malfunctioning clients? If so, could you list them in the commit message? > >

[dpdk-dev] [PATCH v2 0/4] fix the issue that DPDK takes over virtio device blindly

2016-01-12 Thread Xie, Huawei
On 1/12/2016 12:24 PM, Santosh Shukla wrote: > On Tue, Jan 12, 2016 at 8:32 AM, Xie, Huawei wrote: >> On 1/5/2016 1:25 AM, Stephen Hemminger wrote: >>> On Mon, 4 Jan 2016 01:56:09 +0800 >>> Huawei Xie wrote: >>> >>>> v2 changes: >>

[dpdk-dev] [PATCH v2 0/4] fix the issue that DPDK takes over virtio device blindly

2016-01-12 Thread Xie, Huawei
On 1/5/2016 1:25 AM, Stephen Hemminger wrote: > On Mon, 4 Jan 2016 01:56:09 +0800 > Huawei Xie wrote: > >> v2 changes: >> Remove unnecessary assignment of NULL to dev->data->mac_addrs >> Ajust one comment's position >> change LOG level from ERR to INFO >> >> virtio PMD doesn't set

[dpdk-dev] [PATCH] fix checkpatch errors

2016-01-05 Thread Xie, Huawei
On 1/5/2016 6:22 PM, Mcnamara, John wrote: >> -Original Message- >> From: Tan, Jianfeng >> Sent: Tuesday, January 5, 2016 2:21 AM >> To: Xie, Huawei; dev at dpdk.org >> Cc: Mcnamara, John; Stephen Hemminger; Yuanhan Liu >> Subjec

[dpdk-dev] [PATCH v2 0/5] virtio: Tx performance improvements

2016-01-05 Thread Xie, Huawei
On 10/26/2015 10:06 PM, Xie, Huawei wrote: > On 10/19/2015 1:16 PM, Stephen Hemminger wrote: >> This is a tested version of the virtio Tx performance improvements >> that I posted earlier on the list, and described at the DPDK Userspace >> meeting in Dublin. Together they

[dpdk-dev] [PATCH] vhost: remove lockless enqueue to the virtio ring

2016-01-05 Thread Xie, Huawei
On 1/5/2016 2:42 PM, Xie, Huawei wrote: > This patch removes the internal lockless enqueue implmentation. > DPDK doesn't support receiving/transmitting packets from/to the same > queue. Vhost PMD wraps vhost device as normal DPDK port. DPDK > applications normally have their own lock i

[dpdk-dev] [PATCH] virtio: fix rx ring descriptor starvation

2016-01-05 Thread Xie, Huawei
On 12/17/2015 7:18 PM, Tom Kiely wrote: > > > On 11/25/2015 05:32 PM, Xie, Huawei wrote: >> On 11/13/2015 5:33 PM, Tom Kiely wrote: >>> If all rx descriptors are processed while transient >>> mbuf exhaustion is present, the rx ring ends up with >>>

[dpdk-dev] [PATCH] fix checkpatch errors

2016-01-05 Thread Xie, Huawei
On 1/5/2016 10:21 AM, Tan, Jianfeng wrote: > >> -Original Message- >> From: Xie, Huawei >> Sent: Monday, January 4, 2016 9:52 AM >> To: dev at dpdk.org >> Cc: Mcnamara, John; Tan, Jianfeng; Xie, Huawei >> Subject: [PATCH] fix checkpatch

[dpdk-dev] [PATCH v2 4/4] virtio: check if any kernel driver is manipulating the virtio device

2016-01-04 Thread Xie, Huawei
On 1/5/2016 1:24 AM, Stephen Hemminger wrote: > On Mon, 4 Jan 2016 01:56:13 +0800 > Huawei Xie wrote: > >> +if (pci_dev->kdrv != RTE_KDRV_NONE) { >> +PMD_INIT_LOG(INFO, >> +"kernel driver is manipulating this device." \ >> +" Please unbind

[dpdk-dev] [PATCH 4/4] virtio: check if any kernel driver is manipulating the device

2016-01-04 Thread Xie, Huawei
On 12/25/2015 6:33 PM, Xie, Huawei wrote: > virtio PMD could use IO port to configure the virtio device without > using uio driver. > > There are two issues with previous implementation: > 1) virtio PMD will take over each virtio device blindly even if some > are not intended for

[dpdk-dev] [PATCH 3/4] virtio: return 1 to tell the upper layer we don't take over this device

2015-12-28 Thread Xie, Huawei
> -Original Message- > From: Yuanhan Liu [mailto:yuanhan.liu at linux.intel.com] > Sent: Monday, December 28, 2015 1:25 PM > To: Xie, Huawei > Cc: dev at dpdk.org; Jayakumar, Muthurajan; Troitsky, Nikita; > peterx at redhat.com; stephen at networkplumber.org;

[dpdk-dev] [PATCH 4/4] virtio: check if any kernel driver is manipulating the device

2015-12-28 Thread Xie, Huawei
> -Original Message- > From: Yuanhan Liu [mailto:yuanhan.liu at linux.intel.com] > Sent: Monday, December 28, 2015 1:27 PM > To: Xie, Huawei > Cc: dev at dpdk.org; Jayakumar, Muthurajan; Troitsky, Nikita; > peterx at redhat.com; stephen at networkplumber.org;

[dpdk-dev] [PATCH v3 1/2] mbuf: provide rte_pktmbuf_alloc_bulk API

2015-12-24 Thread Xie, Huawei
On 12/24/2015 2:49 AM, Ananyev, Konstantin wrote: > >> -Original Message- >> From: dev [mailto:dev-bounces at dpdk.org] On Behalf Of Stephen Hemminger >> Sent: Wednesday, December 23, 2015 6:38 PM >> To: Xie, Huawei >> Cc: dev at dpdk.org; dprovan at bi

[dpdk-dev] [PATCH v3 2/2] vhost: call rte_pktmbuf_alloc_bulk in vhost dequeue

2015-12-23 Thread Xie, Huawei
On 12/23/2015 7:25 PM, linhaifeng wrote: > >> >> +if (unlikely(alloc_err)) { >> +uint16_t i = entry_success; >> + >> +m->nb_segs = seg_num; >> +for (; i < free_entries; i++) >> +rte_pktmbuf_free(pkts[entry_success]); -> >>

[dpdk-dev] [Question] How pmd virtio works without UIO?

2015-12-23 Thread Xie, Huawei
On 12/23/2015 10:57 AM, Yuanhan Liu wrote: > On Wed, Dec 23, 2015 at 10:41:57AM +0800, Peter Xu wrote: >> On Wed, Dec 23, 2015 at 10:01:35AM +0800, Yuanhan Liu wrote: >>> On Tue, Dec 22, 2015 at 05:56:41PM +0800, Peter Xu wrote: On Tue, Dec 22, 2015 at 04:32:46PM +0800, Yuanhan Liu wrote:

[dpdk-dev] [Question] How pmd virtio works without UIO?

2015-12-22 Thread Xie, Huawei
On 12/22/2015 7:39 PM, Peter Xu wrote: > On Tue, Dec 22, 2015 at 10:47:21AM +0000, Xie, Huawei wrote: >> On 12/22/2015 5:57 PM, Peter Xu wrote: >>> On Tue, Dec 22, 2015 at 04:32:46PM +0800, Yuanhan Liu wrote: >>>> Actually, you are right.

[dpdk-dev] [Question] How pmd virtio works without UIO?

2015-12-22 Thread Xie, Huawei
On 12/22/2015 7:39 PM, Peter Xu wrote: > On Tue, Dec 22, 2015 at 10:47:21AM +0000, Xie, Huawei wrote: >> On 12/22/2015 5:57 PM, Peter Xu wrote: >>> On Tue, Dec 22, 2015 at 04:32:46PM +0800, Yuanhan Liu wrote: >>>> Actually, you are right.

[dpdk-dev] [Question] How pmd virtio works without UIO?

2015-12-22 Thread Xie, Huawei
On 12/22/2015 6:48 PM, Xie, Huawei wrote: > On 12/22/2015 5:57 PM, Peter Xu wrote: >> On Tue, Dec 22, 2015 at 04:32:46PM +0800, Yuanhan Liu wrote: >>> Actually, you are right. I mentioned in the last email that this is >>> for configuration part. To answer your

[dpdk-dev] [Question] How pmd virtio works without UIO?

2015-12-22 Thread Xie, Huawei
On 12/22/2015 5:57 PM, Peter Xu wrote: > On Tue, Dec 22, 2015 at 04:32:46PM +0800, Yuanhan Liu wrote: >> Actually, you are right. I mentioned in the last email that this is >> for configuration part. To answer your question in this email, you >> will not be able to go that further (say initiating

[dpdk-dev] [PATCH v2 3/6] vhost: log used vring changes

2015-12-22 Thread Xie, Huawei
On 12/22/2015 2:56 PM, Peter Xu wrote: > On Thu, Dec 17, 2015 at 11:11:58AM +0800, Yuanhan Liu wrote: >> +static inline void __attribute__((always_inline)) >> +vhost_log_used_vring(struct virtio_net *dev, struct vhost_virtqueue *vq, >> + uint64_t offset, uint64_t len) >> +{ [...] >

[dpdk-dev] [PATCH v2 2/6] vhost: introduce vhost_log_write

2015-12-22 Thread Xie, Huawei
On 12/22/2015 11:03 AM, Yuanhan Liu wrote: > On Tue, Dec 22, 2015 at 02:45:52AM +0000, Xie, Huawei wrote: >>>>> +static inline void __attribute__((always_inline)) >>>>> +vhost_log_write(struct virtio_net *dev, uint64_t addr, uint64_t len) >>>>> +{ &

[dpdk-dev] [PATCH 3/3] vhost: fix vq realloc at numa_realloc

2015-12-22 Thread Xie, Huawei
On 12/18/2015 3:03 PM, Yuanhan Liu wrote: > vq is allocated on pairs, hence we should do pair reallocation > at numa_realloc() as well, otherwise an error like following > occurs while do numa reallocation: > > VHOST_CONFIG: reallocate vq from 0 to 1 node > PANIC in rte_free(): > Fatal

[dpdk-dev] [PATCH 2/3] vhost: simplify numa_realloc

2015-12-22 Thread Xie, Huawei
On 12/18/2015 3:03 PM, Yuanhan Liu wrote: > We could first check if we need realloc vq or not, if so, > reallocate it. We then do similar to vhost dev realloc. > > This could get rid of the tons of repeated "if (realloc_dev)" > and "if (realloc_vq)" statements, therefore, makes code > a bit more

[dpdk-dev] [PATCH 1/3] vhost: get rid of linked list dev

2015-12-22 Thread Xie, Huawei
On 12/18/2015 3:03 PM, Yuanhan Liu wrote: > While we use a single linked list to maintain all devices, we could > use a static array to achieve the same goal, just like what we did > to maintain the eth devices with rte_eth_devices array. This could > simplifies the code a bit. > > Signed-off-by:

[dpdk-dev] [PATCH 1/3] vhost: get rid of linked list dev

2015-12-22 Thread Xie, Huawei
On 12/18/2015 3:03 PM, Yuanhan Liu wrote: > While we use a single linked list to maintain all devices, we could > use a static array to achieve the same goal, just like what we did > to maintain the eth devices with rte_eth_devices array. This could > simplifies the code a bit. > > Signed-off-by:

[dpdk-dev] building LIBRTE_PMD_XENVIRT in 32bit triggers some errors

2015-12-22 Thread Xie, Huawei
On 12/22/2015 2:04 AM, Martinx - ? wrote: > On 10 December 2015 at 02:45, Xie, Huawei wrote: >> On 12/10/2015 6:49 AM, Martinx - ? wrote: >>> On 9 December 2015 at 18:05, Thomas Monjalon >>> wrote: >>>> 2015-12-09 15:54, Martinx - ?:

[dpdk-dev] [PATCH v2 2/6] vhost: introduce vhost_log_write

2015-12-22 Thread Xie, Huawei
On 12/22/2015 10:40 AM, Yuanhan Liu wrote: > On Mon, Dec 21, 2015 at 03:06:43PM +0000, Xie, Huawei wrote: >> On 12/17/2015 11:11 AM, Yuanhan Liu wrote: >>> Introduce vhost_log_write() helper function to log the dirty pages we >>> touched. Page size is harded code to 4096

[dpdk-dev] [PATCH v2 1/6] vhost: handle VHOST_USER_SET_LOG_BASE request

2015-12-22 Thread Xie, Huawei
> -Original Message- > From: Yuanhan Liu [mailto:yuanhan.liu at linux.intel.com] > Sent: Tuesday, December 22, 2015 10:26 AM > To: Xie, Huawei > Cc: dev at dpdk.org; Michael S. Tsirkin; Victor Kaplansky; Iremonger, > Bernard; Pavel Fedin; Peter Xu > Subject: Re:

[dpdk-dev] [PATCH v2 1/2] mbuf: provide rte_pktmbuf_alloc_bulk API

2015-12-22 Thread Xie, Huawei
On 12/22/2015 5:32 AM, Thomas Monjalon wrote: > 2015-12-21 17:20, Wiles, Keith: >> On 12/21/15, 9:21 AM, "Xie, Huawei" wrote: >>> On 12/19/2015 3:27 AM, Wiles, Keith wrote: >>>> On 12/18/15, 11:32 AM, "dev on behalf of Stephen Hemminger" >>

[dpdk-dev] [PATCH v2 1/6] vhost: handle VHOST_USER_SET_LOG_BASE request

2015-12-21 Thread Xie, Huawei
On 12/17/2015 11:11 AM, Yuanhan Liu wrote: > VHOST_USER_SET_LOG_BASE request is used to tell the backend (dpdk > vhost-user) where we should log dirty pages, and how big the log > buffer is. > > This request introduces a new payload: > > typedef struct VhostUserLog { > uint64_t

[dpdk-dev] [PATCH v2 1/2] mbuf: provide rte_pktmbuf_alloc_bulk API

2015-12-21 Thread Xie, Huawei
;>> >>>> -Original Message- >>>> From: dev [mailto:dev-bounces at dpdk.org] On Behalf Of Stephen Hemminger >>>> Sent: Friday, December 18, 2015 5:01 AM >>>> To: Xie, Huawei >>>> Cc: dev at dpdk.org >>>> Subject: Re: [

[dpdk-dev] [PATCH v2 2/6] vhost: introduce vhost_log_write

2015-12-21 Thread Xie, Huawei
On 12/17/2015 11:11 AM, Yuanhan Liu wrote: > Introduce vhost_log_write() helper function to log the dirty pages we > touched. Page size is harded code to 4096 (VHOST_LOG_PAGE), and each > log is presented by 1 bit. > > Therefore, vhost_log_write() simply finds the right bit for related > page we

[dpdk-dev] [PATCH v2 1/2] mbuf: provide rte_pktmbuf_alloc_bulk API

2015-12-21 Thread Xie, Huawei
On 12/19/2015 1:32 AM, Stephen Hemminger wrote: > On Fri, 18 Dec 2015 10:44:02 + > "Ananyev, Konstantin" wrote: > >> >>> -Original Message- >>> From: dev [mailto:dev-bounces at dpdk.org] On Behalf Of Stephen Hemminger >>> Sent: F

[dpdk-dev] [PATCH v5 1/3] vhost: Add callback and private data for vhost PMD

2015-12-18 Thread Xie, Huawei
On 12/18/2015 12:15 PM, Yuanhan Liu wrote: > On Fri, Dec 18, 2015 at 12:15:42PM +0900, Tetsuya Mukawa wrote: >> On 2015/12/17 20:42, Yuanhan Liu wrote: >>> On Tue, Nov 24, 2015 at 06:00:01PM +0900, Tetsuya Mukawa wrote: The vhost PMD will be a wrapper of vhost library, but some of vhost

[dpdk-dev] [ [PATCH v2] 01/13] virtio: Introduce config RTE_VIRTIO_INC_VECTOR

2015-12-18 Thread Xie, Huawei
On 12/18/2015 7:25 AM, Stephen Hemminger wrote: > On Thu, 17 Dec 2015 17:32:38 +0530 > Santosh Shukla wrote: > >> On Mon, Dec 14, 2015 at 6:30 PM, Santosh Shukla >> wrote: >>> virtio_recv_pkts_vec and other virtio vector friend apis are written for >>> sse/avx >>> instructions. For arm64 in

[dpdk-dev] [PATCH v2 1/2] mbuf: provide rte_pktmbuf_alloc_bulk API

2015-12-18 Thread Xie, Huawei
On 12/18/2015 1:03 PM, Stephen Hemminger wrote: > On Mon, 14 Dec 2015 09:14:41 +0800 > Huawei Xie wrote: > >> v2 changes: >> unroll the loop a bit to help the performance >> >> rte_pktmbuf_alloc_bulk allocates a bulk of packet mbufs. >> >> There is related thread about this bulk API. >>

[dpdk-dev] [PATCH v6 0/8] virtio ring layout optimization and simple rx/tx processing

2015-12-17 Thread Xie, Huawei
On 11/27/2015 2:03 PM, Xu, Qian Q wrote: > Some virtio-pmd optimization performance data sharing: > 1. Use simplified vhost-sample, only doing the dequeuer and free, so virtio > only tx, then test the virtio tx performance improvement. Then in the VM, > using one virtio to do the txonly, and

[dpdk-dev] [PATCH] virtio: fix rx ring descriptor starvation

2015-12-17 Thread Xie, Huawei
On 11/26/2015 1:33 AM, Xie, Huawei wrote: > On 11/13/2015 5:33 PM, Tom Kiely wrote: >> If all rx descriptors are processed while transient >> mbuf exhaustion is present, the rx ring ends up with >> no available descriptors. Thus no packets are received >> on that ri

[dpdk-dev] [PATCH] virtio: fix virtio_net_hdr desc pointing to the same buffer

2015-12-14 Thread Xie, Huawei
> -Original Message- > From: Thomas Monjalon [mailto:thomas.monjalon at 6wind.com] > Sent: Monday, December 14, 2015 9:45 PM > To: Xie, Huawei > Cc: Yuanhan Liu; dev at dpdk.org > Subject: Re: [dpdk-dev] [PATCH] virtio: fix virtio_net_hdr desc > pointing to the sam

[dpdk-dev] [PATCH] virtio: fix virtio_net_hdr desc pointing to the same buffer

2015-12-14 Thread Xie, Huawei
> -Original Message- > From: Yuanhan Liu [mailto:yuanhan.liu at linux.intel.com] > Sent: Monday, December 14, 2015 9:10 PM > To: Thomas Monjalon > Cc: Xie, Huawei; dev at dpdk.org > Subject: Re: [dpdk-dev] [PATCH] virtio: fix virtio_net_hdr desc pointing to > the sa

[dpdk-dev] [PATCH 1/4] vhost: Fix Coverity issue with possible array out-of-bounds read

2015-12-11 Thread Xie, Huawei
On 12/11/2015 10:49 PM, Mcnamara, John wrote: >> -Original Message- >> From: Huawei Xie >> Sent: Thursday, December 10, 2015 5:57 PM >> To: dev at dpdk.org >> Cc: Mcnamara, John; Xie, Huawei >> Subject: [PATCH 1/4] vhost: Fix Coverity issue with p

[dpdk-dev] [PATCH v2 1/1] doc: correct Vhost Sample Application guide

2015-12-10 Thread Xie, Huawei
> -Original Message- > From: Iremonger, Bernard > Sent: Thursday, December 10, 2015 9:20 PM > To: Xie, Huawei; Yuanhan Liu > Cc: dev at dpdk.org > Subject: RE: [dpdk-dev] [PATCH v2 1/1] doc: correct Vhost Sample > Application guide > > Hi Huawei, > >

[dpdk-dev] building LIBRTE_PMD_XENVIRT in 32bit triggers some errors

2015-12-10 Thread Xie, Huawei
On 12/10/2015 6:49 AM, Martinx - ? wrote: > On 9 December 2015 at 18:05, Thomas Monjalon > wrote: >> 2015-12-09 15:54, Martinx - ?: >>> Sorry to insist on this subject but, the time for releasing DPDK 2.2 >>> is near and DPDK build with Xen 32-bit is broken. >>> >>> If DPDK doesn't fix

[dpdk-dev] [PATCH v5] examples/vhost: fix strict aliasing error on gcc 4.4.7

2015-12-09 Thread Xie, Huawei
On 12/9/2015 10:27 PM, De Lara Guarch, Pablo wrote: > From: "De Lara Guarch, Pablo" > > Fixes following error on gcc 4.4.7: > > make: Entering directory `/tmp/dpdk-tmp/examples/vhost' > CC main.o > cc1: warnings being treated as errors > /tmp/dpdk-tmp/examples/vhost/main.c: In function

[dpdk-dev] [PATCH v4] Fixes following error on gcc 4.4.7:

2015-12-09 Thread Xie, Huawei
On 12/9/2015 10:01 PM, De Lara Guarch, Pablo wrote: > >> -Original Message- >> From: Xie, Huawei >> Sent: Wednesday, December 09, 2015 1:29 PM >> To: De Lara Guarch, Pablo; dev at dpdk.org >> Cc: yuanhan.liu at linux.intel.com >> Subject: Re: [PATCH

[dpdk-dev] [PATCH 1/1] doc: correct Vhost Sample Application guide

2015-12-09 Thread Xie, Huawei
On 12/9/2015 8:36 PM, Iremonger, Bernard wrote: > correct sample console commands > > Fixes: d0dff9ba445e ("doc: sample application user guide" > Fixes: 9bc23cb8209c ("doc: add vhost-user to sample guide") > Fixes: 43866bf71d58 ("doc: fix vhost sample parameter") > Signed-off-by: Bernard Iremonger

[dpdk-dev] [PATCH v4] Fixes following error on gcc 4.4.7:

2015-12-09 Thread Xie, Huawei
On 12/9/2015 8:20 PM, De Lara Guarch, Pablo wrote: > make: Entering directory `/tmp/dpdk-tmp/examples/vhost' > CC main.o [...] > - rte_ring_sc_dequeue(vpool->ring, (void **)); > + rte_ring_sc_dequeue(vpool->ring, (void *)mbuf); Here we are expecting the address of , not mbuf, which is

[dpdk-dev] [PATCH v2] examples/vhost: fix strict aliasing error on gcc 4.4.7

2015-12-09 Thread Xie, Huawei
On 12/9/2015 5:40 PM, De Lara Guarch, Pablo wrote: > From: "De Lara Guarch, Pablo" > > Fixes following error on gcc 4.4.7: > > make: Entering directory `/tmp/dpdk-tmp/examples/vhost' > CC main.o > cc1: warnings being treated as errors > /tmp/dpdk-tmp/examples/vhost/main.c: In function

[dpdk-dev] [PATCH] examples/vhost: fix strict aliasing error on gcc 4.4.7

2015-12-09 Thread Xie, Huawei
On 12/8/2015 7:24 PM, De Lara Guarch, Pablo wrote: > Fixes following error on gcc 4.4.7: > > make: Entering directory `/tmp/dpdk-tmp/examples/vhost' > CC main.o > cc1: warnings being treated as errors > /tmp/dpdk-tmp/examples/vhost/main.c: In function ?new_device?: >

[dpdk-dev] [PATCH 0/4 for 2.3] vhost-user live migration support

2015-12-09 Thread Xie, Huawei
On 12/2/2015 11:40 AM, Yuanhan Liu wrote: > This patch set adds the initial vhost-user live migration support. > > The major task behind that is to log pages we touched during > live migration. So, this patch is basically about adding vhost > log support, and using it. > > Patchset > > -

[dpdk-dev] [PATCH 2/4] vhost: introduce vhost_log_write

2015-12-09 Thread Xie, Huawei
On 12/2/2015 9:53 PM, Victor Kaplansky wrote: > On Wed, Dec 02, 2015 at 11:43:11AM +0800, Yuanhan Liu wrote: >> Introduce vhost_log_write() helper function to log the dirty pages we >> touched. Page size is harded code to 4096 (VHOST_LOG_PAGE), and each >> log is presented by 1 bit. >> >>

[dpdk-dev] [PATCH 3/4] vhost: log vring changes

2015-12-09 Thread Xie, Huawei
On 12/2/2015 10:09 PM, Victor Kaplansky wrote: > On Wed, Dec 02, 2015 at 11:43:12AM +0800, Yuanhan Liu wrote: >> Invoking vhost_log_write() to mark corresponding page as dirty while >> updating used vring. > Looks good, thanks! > > I didn't find where you log the dirty pages in result of data >

[dpdk-dev] [PATCH 0/6] Add virtio support in arm/arm64

2015-12-08 Thread Xie, Huawei
> -Original Message- > From: Yuanhan Liu [mailto:yuanhan.liu at linux.intel.com] > Sent: Monday, December 07, 2015 10:12 AM > To: Santosh Shukla > Cc: dev at dpdk.org; thomas.monjalon at 6wind.com; Xie, Huawei > Subject: Re: [PATCH 0/6] Add virtio support in arm/arm64 &

[dpdk-dev] [PATCH 1/4] vhost: handle VHOST_USER_SET_LOG_BASE request

2015-12-08 Thread Xie, Huawei
On 12/2/2015 11:40 AM, Yuanhan Liu wrote: [...] > + > + addr = mmap(0, size, PROT_READ | PROT_WRITE, MAP_SHARED, fd, off); > + if (addr == MAP_FAILED) { > + RTE_LOG(ERR, VHOST_CONFIG, "mmap log base failed!\n"); > + return -1; > + } Yuanhan: mmap could fail with

[dpdk-dev] [RFC PATCH 2/2] lib/librte_eal: Remove unnecessary hugepage zero-filling

2015-11-25 Thread Xie, Huawei
On 11/23/2015 2:52 PM, Stephen Hemminger wrote: > On Mon, 23 Nov 2015 05:05:21 + > "Xie, Huawei" wrote: > >> On 11/23/2015 12:07 PM, Stephen Hemminger wrote: >>> On Mon, 23 Nov 2015 03:46:31 + >>> "Xie, Huawei" wrote: >>

[dpdk-dev] [PATCH] virtio: fix rx ring descriptor starvation

2015-11-25 Thread Xie, Huawei
On 11/25/2015 9:47 AM, Yuanhan Liu wrote: > On Tue, Nov 24, 2015 at 10:20:22PM +0100, Thomas Monjalon wrote: >> Any review, please? > Huawei, would you review it? Sorry that I've not read too much > code about virtio PMD driver yet. Np. will do it by end of this week. > > --yliu > > >>

[dpdk-dev] [RFC PATCH 2/2] lib/librte_eal: Remove unnecessary hugepage zero-filling

2015-11-23 Thread Xie, Huawei
On 11/23/2015 12:07 PM, Stephen Hemminger wrote: > On Mon, 23 Nov 2015 03:46:31 + > "Xie, Huawei" wrote: > >>> Why cannot we rely on the kernel zeroing the memory ? >>> If that behavior were to change, then we can zero out the memory >>> ourselve

[dpdk-dev] [RFC PATCH 2/2] lib/librte_eal: Remove unnecessary hugepage zero-filling

2015-11-23 Thread Xie, Huawei
On 11/19/2015 5:15 PM, Gonzalez Monroy, Sergio wrote: > On 18/11/2015 12:07, Xie, Huawei wrote: >> On 11/18/2015 6:45 PM, Wang, Zhihong wrote: >>>> -Original Message- >>>> From: Mcnamara, John >>>> Sent: Wednesday, November 18, 2015 6:4

[dpdk-dev] [RFC PATCH 2/2] lib/librte_eal: Remove unnecessary hugepage zero-filling

2015-11-23 Thread Xie, Huawei
On 11/19/2015 2:32 PM, Wang, Zhihong wrote: >> -Original Message- >> From: Xie, Huawei >> Sent: Thursday, November 19, 2015 2:05 PM >> To: Wang, Zhihong ; Stephen Hemminger >> ; Richardson, Bruce >> >> Cc: dev at dpdk.org >> Subject: Re: [

[dpdk-dev] [RFC PATCH 0/2] Virtio-net PMD Extension to work on host.

2015-11-20 Thread Xie, Huawei
On 11/20/2015 2:16 AM, Rich Lane wrote: > What's the reason for using qemu as a middleman? Couldn't the new PMD > itself open /dev/vhost-net or the vhost-user socket and send the commands > to set up virtqueues? That was the approach taken by Jianfeng's earlier RFC. Rich: Our initial POC also has

[dpdk-dev] [RFC PATCH 2/2] lib/librte_eal: Remove unnecessary hugepage zero-filling

2015-11-19 Thread Xie, Huawei
On 11/19/2015 11:54 AM, Wang, Zhihong wrote: > >> -Original Message- >> From: Xie, Huawei >> Sent: Wednesday, November 18, 2015 8:08 PM >> To: Wang, Zhihong ; Mcnamara, John >> ; dev at dpdk.org >> Subject: Re: [dpdk-dev] [RFC PATCH 2/2] lib/librte_e

[dpdk-dev] [RFC PATCH 2/2] lib/librte_eal: Remove unnecessary hugepage zero-filling

2015-11-19 Thread Xie, Huawei
lto:dev-bounces at dpdk.org] On Behalf Of Stephen >>>> Hemminger >>>> Sent: Wednesday, November 18, 2015 4:00 PM >>>> To: Xie, Huawei >>>> Cc: dev at dpdk.org >>>> Subject: Re: [dpdk-dev] [RFC PATCH 2/2] lib/librte_eal: Remove >>

[dpdk-dev] [PATCH] vhost: avoid buffer overflow in update_secure_len

2015-11-18 Thread Xie, Huawei
On 11/18/2015 11:53 PM, Stephen Hemminger wrote: > On Wed, 18 Nov 2015 06:13:08 + > "Xie, Huawei" wrote: > >> On 11/18/2015 10:56 AM, Yuanhan Liu wrote: >>> On Tue, Nov 17, 2015 at 08:39:30AM -0800, Rich Lane wrote: >>>> I don't think that adding

[dpdk-dev] [RFC PATCH 2/2] lib/librte_eal: Remove unnecessary hugepage zero-filling

2015-11-18 Thread Xie, Huawei
On 11/18/2015 6:45 PM, Wang, Zhihong wrote: >> -Original Message- >> From: Mcnamara, John >> Sent: Wednesday, November 18, 2015 6:40 PM >> To: Wang, Zhihong ; dev at dpdk.org >> Subject: RE: [dpdk-dev] [RFC PATCH 2/2] lib/librte_eal: Remove unnecessary >> hugepage zero-filling >> >> >> >>>

<    1   2   3   4   5   >