DPDK patches and discussions
 help / color / mirror / Atom feed
From: Maxime Coquelin <maxime.coquelin@redhat.com>
To: Noa Ezra <noae@mellanox.com>
Cc: Matan Azrad <matan@mellanox.com>, "dev@dpdk.org" <dev@dpdk.org>
Subject: Re: [dpdk-dev] [PATCH 2/2] net/vhost: support mrg-rxbuf disabling
Date: Thu, 20 Jun 2019 09:27:06 +0200	[thread overview]
Message-ID: <aefae997-2361-658f-0f84-6484068bab50@redhat.com> (raw)
In-Reply-To: <AM0PR05MB4388BF46471F9F5C6E5B6E48A0E40@AM0PR05MB4388.eurprd05.prod.outlook.com>



On 6/20/19 7:57 AM, Noa Ezra wrote:
> Hi Maxime,
> Thanks for your comment, please see below.
> 
>> -----Original Message-----
>> From: Maxime Coquelin [mailto:maxime.coquelin@redhat.com]
>> Sent: Wednesday, June 19, 2019 12:10 PM
>> To: Noa Ezra <noae@mellanox.com>
>> Cc: Matan Azrad <matan@mellanox.com>; dev@dpdk.org
>> Subject: Re: [PATCH 2/2] net/vhost: support mrg-rxbuf disabling
>>
>> Hi Noa,
>>
>> On 6/19/19 8:13 AM, Noa Ezra wrote:
>>> Rx mergeable buffers is a virtio feature that allows chaining of
>>> multiple virtio descriptors to handle large packet size.
>>> This behavior is supported and enabled by default, however in case the
>>> user knows that rx mergeable buffers are not needed, he can disable
>>> the feature.
>>> The user should also set mrg_rxbuf=off in virtual machine's xml.
>>
>> I'm not sure to understand why it is needed, as the vhost-user library
>> supports the feature, it's better to let it being advertised.
>>
>> As you say, it is up to the user to disable it in the VM's XML.
>> Done this way, the feature won't be negotiated.
>>
> I agree with you, I'll remove this patch from the series.
> 
>> Moreover, the proposal deadline for v19.08 is over by more than 2 weeks.
> I'm sorry, the mail was sent  a long time but didn't get to the mailing list.

No problem, I just wanted to make you aware I could not take it anyway
in v19.08.

> In any case, I'll prepare a new patch with only TSO (the first patch) and send it to the next release.

As I replied to Matan, could you add the notice for the TSO disabled by
default in the release not for this release?

Thanks,
Maxime
>> Maxime
>>
>>> Signed-off-by: Noa Ezra <noae@mellanox.com>
>>> Reviewed-by: Matan Azrad <matan@mellanox.com>
>>> ---
>>>    doc/guides/nics/vhost.rst         |  5 +++++
>>>    drivers/net/vhost/rte_eth_vhost.c | 17 ++++++++++++++++-
>>>    2 files changed, 21 insertions(+), 1 deletion(-)
>>>
>>> diff --git a/doc/guides/nics/vhost.rst b/doc/guides/nics/vhost.rst
>>> index 8cfda4d..2a455b5 100644
>>> --- a/doc/guides/nics/vhost.rst
>>> +++ b/doc/guides/nics/vhost.rst
>>> @@ -81,6 +81,11 @@ The user can specify below arguments in `--vdev`
>> option.
>>>        It is used to disable tso support in vhost library.
>>>        (Default: 1 (enabled))
>>>
>>> +#.  ``mrg-rxbuf``:
>>> +
>>> +    It is used to disable mrg rxbuf support in vhost library.
>>> +    (Default: 1 (enabled))
>>> +
>>>    Vhost PMD event handling
>>>    ------------------------
>>>
>>> diff --git a/drivers/net/vhost/rte_eth_vhost.c
>>> b/drivers/net/vhost/rte_eth_vhost.c
>>> index a38c235..9a54020 100644
>>> --- a/drivers/net/vhost/rte_eth_vhost.c
>>> +++ b/drivers/net/vhost/rte_eth_vhost.c
>>> @@ -32,6 +32,7 @@
>>>    #define ETH_VHOST_IOMMU_SUPPORT		"iommu-support"
>>>    #define ETH_VHOST_POSTCOPY_SUPPORT	"postcopy-support"
>>>    #define ETH_VHOST_VIRTIO_NET_F_HOST_TSO "tso"
>>> +#define ETH_VHOST_VIRTIO_NET_F_MRG_RXBUF "mrg-rxbuf"
>>>    #define VHOST_MAX_PKT_BURST 32
>>>
>>>    static const char *valid_arguments[] = { @@ -42,6 +43,7 @@
>>>    	ETH_VHOST_IOMMU_SUPPORT,
>>>    	ETH_VHOST_POSTCOPY_SUPPORT,
>>>    	ETH_VHOST_VIRTIO_NET_F_HOST_TSO,
>>> +	ETH_VHOST_VIRTIO_NET_F_MRG_RXBUF,
>>>    	NULL
>>>    };
>>>
>>> @@ -1348,6 +1350,7 @@ struct vhost_xstats_name_off {
>>>    	int iommu_support = 0;
>>>    	int postcopy_support = 0;
>>>    	int tso = 1;
>>> +	int mrg_rxbuf = 1;
>>>    	struct rte_eth_dev *eth_dev;
>>>    	const char *name = rte_vdev_device_name(dev);
>>>
>>> @@ -1442,6 +1445,17 @@ struct vhost_xstats_name_off {
>>>    		}
>>>    	}
>>>
>>> +	if (rte_kvargs_count(kvlist,
>> ETH_VHOST_VIRTIO_NET_F_MRG_RXBUF) == 1) {
>>> +		ret = rte_kvargs_process(kvlist,
>>> +				ETH_VHOST_VIRTIO_NET_F_MRG_RXBUF,
>>> +				&open_int, &mrg_rxbuf);
>>> +		if (ret < 0)
>>> +			goto out_free;
>>> +
>>> + 		if (mrg_rxbuf == 0)
>>> +			disable_flags |= (1ULL <<
>> VIRTIO_NET_F_MRG_RXBUF);
>>> +	}
>>> +
>>>    	if (dev->device.numa_node == SOCKET_ID_ANY)
>>>    		dev->device.numa_node = rte_socket_id();
>>>
>>> @@ -1494,7 +1508,8 @@ struct vhost_xstats_name_off {
>>>    	"dequeue-zero-copy=<0|1> "
>>>    	"iommu-support=<0|1> "
>>>    	"postcopy-support=<0|1> "
>>> -	"tso=<0|1>");
>>> +	"tso=<0|1> "
>>> +	"mrg-rxbuf=<0|1>");
>>>
>>>    RTE_INIT(vhost_init_log)
>>>    {
>>>

  parent reply	other threads:[~2019-06-20  7:27 UTC|newest]

Thread overview: 25+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-06-19  6:13 [dpdk-dev] [PATCH 0/2] support tso and " Noa Ezra
2019-06-19  6:13 ` [dpdk-dev] [PATCH 1/2] net/vhost: support TSO disabling Noa Ezra
2019-06-19  9:53   ` Maxime Coquelin
2019-06-20  2:26     ` Tiwei Bie
2019-06-20  6:08       ` Matan Azrad
2019-06-20  7:25         ` Maxime Coquelin
2019-08-30  8:44   ` Maxime Coquelin
2019-09-30  9:02   ` Maxime Coquelin
2019-06-19  6:13 ` [dpdk-dev] [PATCH 2/2] net/vhost: support mrg-rxbuf disabling Noa Ezra
2019-06-19  9:10   ` Maxime Coquelin
2019-06-20  5:57     ` Noa Ezra
2019-06-20  6:52       ` Matan Azrad
2019-06-20  7:19         ` Maxime Coquelin
2019-06-20  7:55           ` Matan Azrad
2019-06-26  7:50             ` Matan Azrad
2019-06-26 10:27               ` Maxime Coquelin
2019-06-26 11:18                 ` Matan Azrad
2019-06-26 12:05                   ` Maxime Coquelin
2019-06-26 13:24                     ` Matan Azrad
2019-06-26 14:17                       ` Maxime Coquelin
2019-06-27  5:04                         ` Matan Azrad
2019-08-30  8:48                           ` Maxime Coquelin
2019-06-20  7:27       ` Maxime Coquelin [this message]
2019-09-30  9:04   ` Maxime Coquelin
2019-06-19 14:20 ` [dpdk-dev] [PATCH 0/2] support tso and " Aaron Conole

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=aefae997-2361-658f-0f84-6484068bab50@redhat.com \
    --to=maxime.coquelin@redhat.com \
    --cc=dev@dpdk.org \
    --cc=matan@mellanox.com \
    --cc=noae@mellanox.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).