Re: [dpdk-dev] [dpdk-stable] [PATCH v5 3/3] kni: fix kernel deadlock when using mlx devices

2021-04-23 Thread Igor Ryzhov
This patch changes the behavior for KNI interface shutdown. Previously we would receive a real response from the driver, now we always receive success. I think this should be reflected in the docs/release notes. Igor On Wed, Apr 21, 2021 at 2:07 AM Thomas Monjalon wrote: > 12/04/2021 16:35, Ela

Re: [dpdk-dev] [dpdk-stable] [PATCH v5 3/3] kni: fix kernel deadlock when using mlx devices

2021-04-23 Thread Igor Ryzhov
wrote: > On 4/23/2021 9:41 AM, Igor Ryzhov wrote: > > This patch changes the behavior for KNI interface shutdown. > > Previously we would receive a real response from the driver, now we > > always receive success. > > I think this should be reflected in the docs/rel

Re: [dpdk-dev] [dpdk-stable] [PATCH v5 3/3] kni: fix kernel deadlock when using mlx devices

2021-04-23 Thread Igor Ryzhov
t settings... On Fri, Apr 23, 2021 at 3:43 PM Igor Ryzhov wrote: > Hi Ferruh, > > Thanks. I think it would be great to make this configurable, and maybe even > make shutdown synchronous by default to preserve the old behavior. > > I would be grateful if you could spend time o

Re: [dpdk-dev] Experimental symbols in kni lib

2021-06-25 Thread Igor Ryzhov
Hi Ferruh, all, Let's please discuss another approach to setting KNI link status before making this API stable: http://patches.dpdk.org/project/dpdk/patch/20190925093623.18419-1-iryz...@nfware.com/ I explained the problem with the current implementation there. More than that, using ioctl approach

Re: [dpdk-dev] [PATCH v3] kni: rework rte_kni_update_link using ioctl

2021-06-28 Thread Igor Ryzhov
Thanks Ferruh, I'll send an update later this week. I also want to add a "Suggested-by: Dan Gora " as it was his idea. Dan, please let me know if you don't want this tag to be added. Thanks, Igor On Mon, Jun 28, 2021 at 3:55 PM Ferruh Yigit wrote: > On 10/27/2019 8:1

[dpdk-dev] [PATCH v4 1/2] kni: rework rte_kni_update_link using ioctl

2021-07-04 Thread Igor Ryzhov
interface right after we enabled it and we don't have to use any additional thread to track link status. Propagating speed/duplex/autoneg to the kernel module also allows us to implement ethtool_ops.get_link_ksettings callback. Suggested-by: Dan Gora Signed-off-by: Igor Ryzhov --- app/

[dpdk-dev] [PATCH v4 2/2] kni: implement basic get_link_ksettings callback

2021-07-04 Thread Igor Ryzhov
Signed-off-by: Igor Ryzhov --- kernel/linux/kni/kni_net.c | 25 + 1 file changed, 25 insertions(+) diff --git a/kernel/linux/kni/kni_net.c b/kernel/linux/kni/kni_net.c index 99da8d37dd6b..84357bec1341 100644 --- a/kernel/linux/kni/kni_net.c +++ b/kernel/linux/kni

Re: [dpdk-dev] [PATCH v4 1/2] kni: rework rte_kni_update_link using ioctl

2021-07-06 Thread Igor Ryzhov
Hi Ferruh, Thanks for the review. My comments inline. I'll send a new version later this week. On Mon, Jul 5, 2021 at 2:58 PM Ferruh Yigit wrote: > On 7/4/2021 6:06 PM, Igor Ryzhov wrote: > > Current implementation doesn't allow us to update KNI carrier if the > > i

Re: [PATCH] kni: fix use-after-free when kni release

2022-02-08 Thread Igor Ryzhov
Looks correct. Could you, please, also change the order of `list_del` and `kni_dev_remove` in `kni_release`? It suffers from the same problem. Igor On Fri, Jan 28, 2022 at 5:43 AM Min Hu (Connor) wrote: > From: Huisong Li > > The "kni_dev" is the private data of the "net_device" in kni, and al

Re: [PATCH] kni: fix use-after-free when kni release

2022-02-09 Thread Igor Ryzhov
Acked-by: Igor Ryzhov On Wed, Feb 9, 2022 at 10:36 AM Min Hu (Connor) wrote: > Hi, Igor, > fixed in v2, please check it, thanks. > > 在 2022/2/8 20:41, Igor Ryzhov 写道: > > Looks correct. > > Could you, please, also change the order of `list_del` and > > `kni_de

Re: [PATCH] kni: restrict bifurcated device support

2021-11-17 Thread Igor Ryzhov
Acked-by: Igor Ryzhov On Sat, Oct 9, 2021 at 2:58 AM Ferruh Yigit wrote: > To enable bifurcated device support, rtnl_lock is released before calling > userspace callbacks and asynchronous requests are enabled. > > But these changes caused more issues, like bug #809, #816. To reduce

Re: [dpdk-dev] [PATCH 2/2] kni: fix rtnl deadlocks and race conditions v3

2021-02-24 Thread Igor Ryzhov
This looks more like a hack than an actual fix to me. After this commit: "ip link set up" is sent to the userspace with unlocked rtnl_lock "ip link set down" is sent to the userspace with locked rtnl_lock How is this really fixing anything? IMHO it only complicates the code. If talking with users

Re: [dpdk-dev] [PATCH 2/2] kni: fix rtnl deadlocks and race conditions v3

2021-02-24 Thread Igor Ryzhov
; then you will always have to return success, even on failure, as Linux > kernel does not have a mechanism to asynchronously report on failure > for such system calls. > > IMHO - weighting the non-reporting of failure versus how the code > looks (as it functions perfectly OK), I decide

Re: [dpdk-dev] [PATCH 2/2] kni: fix rtnl deadlocks and race conditions v3

2021-02-24 Thread Igor Ryzhov
t; Having KNI deadlock frequently for real life applications is far worst, > IMHO. > > FYI > > Elad. > > On Wed, Feb 24, 2021 at 4:04 PM Igor Ryzhov wrote: > > > > Elad, > > > > I understand your point. > > But the fact that this fix works for you doesn'

Re: [dpdk-dev] [PATCH 2/2] kni: fix rtnl deadlocks and race conditions v3

2021-02-24 Thread Igor Ryzhov
y to lock rtnl, resulting in a deadlock. > The remedy is to release rtnl before locking the KNI sync lock. > Since in between nothing is accessing Linux network-wise, > no rtnl locking is needed. > " > > FYI, > > Elad. > > On Wed, Feb 24, 2021 at 4:41 PM Igor Ryzhov

Re: [dpdk-dev] [PATCH 2/2] kni: fix rtnl deadlocks and race conditions v3

2021-02-24 Thread Igor Ryzhov
Elad. > > On Wed, Feb 24, 2021 at 5:18 PM Igor Ryzhov wrote: > > > > Stephen's idea was to fix the deadlock when working with the bifurcated > driver. > > Your rework breaks this because you still send link down requests under > rtnl_lock. > > Did you test your

Re: [dpdk-dev] [PATCH 2/2] kni: fix rtnl deadlocks and race conditions v4

2021-02-25 Thread Igor Ryzhov
Hi Elad, Thanks for the patch, but this is still NACK from me. The only real advantage of KNI over other exceptional-path techniques like virtio-user is the ability to configure DPDK-managed interfaces directly from the kernel using well-known utils like iproute2. A very important part of this is

Re: [dpdk-dev] [PATCH 2/2] kni: fix rtnl deadlocks and race conditions v4

2021-03-01 Thread Igor Ryzhov
which I think we all > agree exist (we just do not agree on the proper solution or patch)... > > That's my two cents, > > Elad. > > On Fri, Feb 26, 2021 at 5:49 PM Stephen Hemminger > wrote: > > > > On Fri, 26 Feb 2021 00:01:01 +0300 > > Igor Ryzhov

[dpdk-dev] [PATCH v5 1/3] kni: rework rte_kni_update_link using ioctl

2021-08-26 Thread Igor Ryzhov
interface right after we enabled it and we don't have to use any additional thread to track link status. Propagating speed/duplex/autoneg to the kernel module also allows us to implement ethtool_ops.get_link_ksettings callback. Suggested-by: Dan Gora Signed-off-by: Igor Ryzhov --- app/

[dpdk-dev] [PATCH v5 2/3] kni: implement basic get_link_ksettings callback

2021-08-26 Thread Igor Ryzhov
It allows inspecting link parameters using ethtool. Signed-off-by: Igor Ryzhov --- kernel/linux/kni/kni_net.c | 25 + 1 file changed, 25 insertions(+) diff --git a/kernel/linux/kni/kni_net.c b/kernel/linux/kni/kni_net.c index 611719b5ee27..931b9daf104f 100644 --- a

[dpdk-dev] [PATCH v5 3/3] app/test: fix return value of test_kni_link_change

2021-08-26 Thread Igor Ryzhov
If the child process returns -1, WEXITSTATUS converts to 255 because it takes only 8 least significant bits. As a result, the test is not considered failed when it should. Signed-off-by: Igor Ryzhov --- app/test/test_kni.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app

Re: [dpdk-dev] [PATCH v5 1/3] kni: rework rte_kni_update_link using ioctl

2021-08-26 Thread Igor Ryzhov
Could you please clarify where exactly do I need to use rtnl lock? >From what I understand, netif_carrier_on/off can be called without the lock. On Thu, Aug 26, 2021 at 8:15 PM Stephen Hemminger < step...@networkplumber.org> wrote: > On Thu, 26 Aug 2021 18:19:09 +0300 > Igo

[dpdk-dev] [PATCH v6 1/3] kni: rework rte_kni_update_link using ioctl

2021-08-30 Thread Igor Ryzhov
interface right after we enabled it and we don't have to use any additional thread to track link status. Propagating speed/duplex/autoneg to the kernel module also allows us to implement ethtool_ops.get_link_ksettings callback. Suggested-by: Dan Gora Signed-off-by: Igor Ryzhov --- app/

[dpdk-dev] [PATCH v6 2/3] kni: implement basic get_link_ksettings callback

2021-08-30 Thread Igor Ryzhov
It allows inspecting link parameters using ethtool. Signed-off-by: Igor Ryzhov --- kernel/linux/kni/kni_net.c | 25 + 1 file changed, 25 insertions(+) diff --git a/kernel/linux/kni/kni_net.c b/kernel/linux/kni/kni_net.c index 611719b5ee27..931b9daf104f 100644 --- a

[dpdk-dev] [PATCH v6 3/3] app/test: fix return value of test_kni_link_change

2021-08-30 Thread Igor Ryzhov
If the child process returns -1, WEXITSTATUS converts to 255 because it takes only 8 least significant bits. As a result, the test is not considered failed when it should. Signed-off-by: Igor Ryzhov --- app/test/test_kni.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app

Re: [dpdk-dev] [PATCH v5 1/3] kni: rework rte_kni_update_link using ioctl

2021-08-30 Thread Igor Ryzhov
On Thu, Aug 26, 2021 at 9:06 PM Stephen Hemminger < step...@networkplumber.org> wrote: > On Thu, 26 Aug 2021 20:46:47 +0300 > Igor Ryzhov wrote: > > > Could you please clarify where exactly do I need to use rtnl lock? > > From what I understand, netif_carrier_on/of

[dpdk-dev] RTE Ring removing

2014-05-06 Thread Igor Ryzhov
in use? Best regards, Igor Ryzhov

[dpdk-dev] RTE Ring removing

2014-05-07 Thread Igor Ryzhov
eady reserved memory back to "free_memseg", and impossibility of unreserving memory is just because there is no function for that, not because it is impossible in principle. Am I right? Or there are any restrictions? Best regards, Igor Ryzhov 06.05.2014 13:05, Igor Ryzhov ?: > Hel

[dpdk-dev] RTE Ring removing

2014-05-07 Thread Igor Ryzhov
, not size. Best regards, Igor Ryzhov 07.05.2014 15:39, Olivier MATZ ?: > Hi Igor, > > On 05/07/2014 09:54 AM, Igor Ryzhov wrote: >> I noticed that in Memzone realization there is a special global variable >> "free_memseg" containing pointers on free memory

[dpdk-dev] [PATCH] doc: fix vhost guide

2015-04-08 Thread Igor Ryzhov
Guide says that a configure parameter to choose between vhost cuse and vhost user will be introduced in the future, but it?s already added by commit 28a1ccca41bf. Signed-off-by: Igor Ryzhov --- doc/guides/sample_app_ug/vhost.rst | 7 +++ 1 file changed, 3 insertions(+), 4 deletions

[dpdk-dev] [PATCH] doc: fix vhost guide

2015-04-13 Thread Igor Ryzhov
Sorry, I used wrong email address to reply from. This one is correct. On Mon, Apr 13, 2015 at 10:11 AM, Igor Ryzhov wrote: > Hello, Changchun. > > Previous paragraph says ?To enable vhost, turn on vhost library in the > configure file config/common_linuxapp?, but string in a c

[dpdk-dev] [PATCH] doc: fix vhost guide

2015-04-13 Thread Igor Ryzhov
already changed string. So I used the same style. Regards, Igor > 13 ???. 2015 ?., ? 7:52, Ouyang, Changchun > ???(?): > > Hi Igor, > > Good catch, comments as below. > >> -Original Message- >> From: dev [mailto:dev-bounces at dpdk.org] On Behalf Of Igo

Re: [dpdk-dev] [PATCH] lib/librte_ether: error handling on MAC address replay

2017-01-19 Thread Igor Ryzhov
Hello Steve, Thank you for the patch. I think a couple of improvements can be done: 1. Function existence check – if (*dev->dev_ops->mac_addr_add) – can be taken out of the loop. We don't need to check it on each iteration. 2. I'm not completely sure, but I think loop can be started from 1, not f

Re: [dpdk-dev] [PATCH] lib/librte_ether: error handling on MAC address replay

2017-01-20 Thread Igor Ryzhov
)(dev, addr); > > > > + /* Update pool bitmap in NIC data structure */ > > + dev->data->mac_pool_sel[0] = 1; > > + > > return 0; > > > > Any thoughts would be appreciated. > > > > Regards, > > Steve > > > &

Re: [dpdk-dev] [PATCH v2] ethdev: fix MAC address replay

2017-01-23 Thread Igor Ryzhov
Hello Steve, Thank you for all the fixes. But I think I noticed another one issue in MAC replay process. Pool number is extracted only once: if (RTE_ETH_DEV_SRIOV(dev).active) pool = RTE_ETH_DEV_SRIOV(dev).def_vmdq_idx; But when MAC address is added using rte_eth_dev_mac_addr_add several differ

Re: [dpdk-dev] [PATCH v4] ethdev: fix MAC address replay

2017-01-24 Thread Igor Ryzhov
Thank you Steve. I never did it before and I don't know if I have rights for that, but: Acked-by: Igor Ryzhov On Tue, Jan 24, 2017 at 5:21 AM, Steve Shin wrote: > This patch fixes a bug in replaying MAC address to the hardware > in rte_eth_dev_config_restore() routine. Added

Re: [dpdk-dev] [PATCH v4] ethdev: fix MAC address replay

2017-01-24 Thread Igor Ryzhov
t can be good to explain it in DPDK development guidelines. Best regards, Igor On Tue, Jan 24, 2017 at 4:21 PM, Ferruh Yigit wrote: > On 1/24/2017 10:09 AM, Igor Ryzhov wrote: > > Thank you Steve. > > > > > I never did it before and I don't know if I have righ

Re: [dpdk-dev] [PATCH 04/11] doc/howto: use corelist instead of coremask

2017-02-09 Thread Igor Ryzhov
Hello Keith, comments inline below. On Thu, Feb 9, 2017 at 9:14 PM, Keith Wiles wrote: > Signed-off-by: Keith Wiles > --- > doc/guides/howto/flow_bifurcation.rst | 2 +- > doc/guides/howto/lm_bond_virtio_sriov.rst | 6 +++--- > doc/guides/howto/lm_virtio_vhost_user.rst | 6 +++--- > 3 file

[dpdk-dev] rte_eth_dev_config_restore problem

2016-10-26 Thread Igor Ryzhov
Hello everyone, I think there is a bug in rte_eth_dev_config_restore function. During restoration of MAC address configuration, all MAC addresses are restored with mac_addr_add function, but as I think MAC address with index 0 shouldn't be restored in such way, because it is a default MAC address.

[dpdk-dev] KNI discussion in userspace event

2016-10-28 Thread Igor Ryzhov
Thank you, Ferruh. As we are staying on the existing implementation, I think we can do some improvements: 1. Implement more commands for net_device_ops. 2. Implement ethtool support the same way as net_device_ops are implemented ? send commands to application. 3. Add ability to set default MAC add

[dpdk-dev] KNI discussion in userspace event

2016-10-28 Thread Igor Ryzhov
On Fri, Oct 28, 2016 at 7:13 PM, Thomas Monjalon wrote: > 2016-10-28 15:51, Richardson, Bruce: > > From: dev [mailto:dev-bounces at dpdk.org] On Behalf Of Thomas Monjalon > > > 2016-10-28 15:31, Ferruh Yigit: > > > > * virtio-user + vhost-net > > > > This can be valid alternative, removes the out

[dpdk-dev] KNI discussion in userspace event

2016-10-28 Thread Igor Ryzhov
On Fri, Oct 28, 2016 at 9:40 PM, Thomas Monjalon wrote: > 2016-10-28 20:29, Igor Ryzhov: > > On Fri, Oct 28, 2016 Thomas Monjalon wrote: > > > 2016-10-28 15:51, Richardson, Bruce: > > > > From: dev [mailto:dev-bounces at dpdk.org] On Behalf Of Thomas Monjalon >

Re: [dpdk-dev] [PATCH] net/ixgbe: fix default MAC setting

2017-05-02 Thread Igor Ryzhov
Hello Wenzhuo, How about also delete meaningless "ixgbe_remove_rar(dev, 0);"? Best regards, Igor On Tue, May 2, 2017 at 11:34 AM, Wenzhuo Lu wrote: > Pool 0 is not PF, it's VF 0. So the MAC is set for VF 0 > but not PF. > The code introduced a weird issue. In the scenario PF + VF, > when only

[dpdk-dev] [PATCH] kni: use kni_ethtool_ops only with unknown drivers

2018-11-30 Thread Igor Ryzhov
0e) we still use kni_ethtool_ops with implemented .get_link function. Signed-off-by: Igor Ryzhov --- kernel/linux/kni/Makefile | 2 +- kernel/linux/kni/kni_ethtool.c | 210 - kernel/linux/kni/kni_misc.c| 6 +- 3 files changed, 6 insertions(+), 212 del

[dpdk-dev] [PATCH v2] kni: use kni_ethtool_ops only with unknown drivers

2018-11-30 Thread Igor Ryzhov
0e) we still use kni_ethtool_ops with implemented .get_link function. Signed-off-by: Igor Ryzhov --- kernel/linux/kni/Makefile | 2 +- kernel/linux/kni/kni_ethtool.c | 210 - kernel/linux/kni/kni_misc.c| 9 +- 3 files changed, 7 insertions(+), 214 del

Re: [dpdk-dev] [PATCH v2] kni: use kni_ethtool_ops only with unknown drivers

2018-12-01 Thread Igor Ryzhov
ckets to Linux. Can virtio user be used the same way, as a mirror of physical port? Best regards, Igor On Sat, Dec 1, 2018 at 2:38 AM Stephen Hemminger wrote: > On Fri, 30 Nov 2018 22:47:50 +0300 > Igor Ryzhov wrote: > > > Current implementation of kni_ethtool_ops jus

Re: [dpdk-dev] [PATCH v2] kni: use kni_ethtool_ops only with unknown drivers

2018-12-02 Thread Igor Ryzhov
tif_running(dev) && dev->ethtool_ops->get_link(dev); if (copy_to_user(useraddr, &edata, sizeof(edata))) return -EFAULT; return 0; } On Sat, Dec 1, 2018 at 8:31 PM Stephen Hemminger wrote: > On Sat, 1 Dec 2018 14:12:54 +0300 > Igor Ryzhov wrote: > > > Hi Stephen

Re: [dpdk-dev] [PATCH v2] kni: use kni_ethtool_ops only with unknown drivers

2018-12-03 Thread Igor Ryzhov
other ethtool operations may be implemented in a driver-independent way using the same concept as for netdev_ops. On Mon, Dec 3, 2018 at 4:09 PM Ferruh Yigit wrote: > On 11/30/2018 11:38 PM, Stephen Hemminger wrote: > > On Fri, 30 Nov 2018 22:47:50 +0300 > > Igor Ryzhov wro

Re: [dpdk-dev] [RFC] kni: remove ethtool support

2018-12-18 Thread Igor Ryzhov
Hi Ferruh, Please, look at my patch http://patches.dpdk.org/patch/48454/ and consider rebasing your patch over mine. As we discussed with Stephen, KNI needs to supply ethtool_ops with .get_link function, to properly support link status. So we should save ethtool_ops and implement .get_link using

Re: [dpdk-dev] [PATCH v2] kni: use kni_ethtool_ops only with unknown drivers

2019-01-05 Thread Igor Ryzhov
tu or .ndo_set_mac_address. I want to add more types of requests to rte_kni_req_id enum and implement them. It's not an urgent task, so I don't know yet when I'll find time to do it. Best regards, Igor On Tue, Dec 18, 2018 at 9:13 PM Ferruh Yigit wrote: > On 12/3/2018 2:0

Re: [dpdk-dev] [RFC] kni: remove ethtool support

2019-01-05 Thread Igor Ryzhov
Hi Ferruh, I answered in another thread. Regarding this patch – I have no objections now. Best regards, Igor On Tue, Dec 18, 2018 at 9:17 PM Ferruh Yigit wrote: > On 12/18/2018 9:20 AM, Ferruh Yigit wrote: > > On 12/18/2018 8:20 AM, Igor Ryzhov wrote: > >> Hi Ferruh, >

Re: [dpdk-dev] [PATCH] kni: implement header_ops parse method

2018-09-29 Thread Igor Ryzhov
It's just exact copy of eth_header_parse function from Linux kernel. No problem, can do that with ether_addr_copy. On Sat, Sep 29, 2018 at 10:22 AM Stephen Hemminger < step...@networkplumber.org> wrote: > On Thu, 27 Sep 2018 03:02:24 +0300 > Igor Ryzhov wrote: > >

Re: [dpdk-dev] [PATCH] kni: implement header_ops parse method

2018-09-30 Thread Igor Ryzhov
at 10:19 PM Igor Ryzhov wrote: > It's just exact copy of eth_header_parse function from Linux kernel. > > No problem, can do that with ether_addr_copy. > > On Sat, Sep 29, 2018 at 10:22 AM Stephen Hemminger < > step...@networkplumber.org> wrote: > >> On T

Re: [dpdk-dev] [PATCH] kni: implement header_ops parse method

2018-11-30 Thread Igor Ryzhov
ll be better to use default eth_header_ops. Best regards, Igor On Tue, Oct 2, 2018 at 7:58 PM Ferruh Yigit wrote: > On 9/27/2018 1:02 AM, Igor Ryzhov wrote: > > Signed-off-by: Igor Ryzhov > > Hi Igor, > > What is the motivation to add this support? What is enabled by this? &

[dpdk-dev] [PATCH] kni: dynamically allocate memory for each KNI

2018-08-02 Thread Igor Ryzhov
-off-by: Igor Ryzhov --- lib/librte_kni/rte_kni.c | 392 --- lib/librte_kni/rte_kni.h | 6 +- test/test/test_kni.c | 6 - 3 files changed, 128 insertions(+), 276 deletions(-) diff --git a/lib/librte_kni/rte_kni.c b/lib/librte_kni/rte_kni.c index

Re: [dpdk-dev] [PATCH] kni: dynamically allocate memory for each KNI

2018-08-29 Thread Igor Ryzhov
Hello Ferruh, Thanks for the review, comments inline. On Mon, Aug 27, 2018 at 8:06 PM, Ferruh Yigit wrote: > On 8/2/2018 3:25 PM, Igor Ryzhov wrote: > > Long time ago preallocation of memory for KNI was introduced in commit > > 0c6bc8e. It was done because of lack of ability to

Re: [dpdk-dev] [PATCH v2 10/10] kni: add API to set link status on kernel interface

2018-08-30 Thread Igor Ryzhov
Hi Dan, We use KNI device exactly the same way you described – with IP addresses, routing, etc. And we also faced the same problem of having the actual link status in Linux kernel. There is a special callback for link state management in net_device_ops for soft-devices like KNI called ndo_change_

Re: [dpdk-dev] [PATCH v2 10/10] kni: add API to set link status on kernel interface

2018-08-30 Thread Igor Ryzhov
_open. Best regards, Igor On Thu, Aug 30, 2018 at 12:49 PM, Igor Ryzhov wrote: > Hi Dan, > > We use KNI device exactly the same way you described – with IP addresses, > routing, etc. > And we also faced the same problem of having the actual link status in > Linux kernel. > > Th

[dpdk-dev] [PATCH v2] kni: dynamically allocate memory for each KNI

2018-09-23 Thread Igor Ryzhov
-off-by: Igor Ryzhov --- v2: * allocate KNI using rte_zmalloc * swap reserve/release functions * use "kni" as a variable name * use macros for memzone names lib/librte_kni/rte_kni.c | 502 +-- lib/librte_kni/rte_kni.h | 6 +- test/test/

Re: [dpdk-dev] [PATCH v2] kni: dynamically allocate memory for each KNI

2018-09-26 Thread Igor Ryzhov
Hi Ferruh, Will fix it today. Igor On Wed, Sep 26, 2018 at 1:41 PM Ferruh Yigit wrote: > On 9/23/2018 8:12 PM, Igor Ryzhov wrote: > > Long time ago preallocation of memory for KNI was introduced in commit > > 0c6bc8e. It was done because of lack of ability to free previousl

[dpdk-dev] [PATCH v3] kni: dynamically allocate memory for each KNI

2018-09-26 Thread Igor Ryzhov
-off-by: Igor Ryzhov --- v3: * style fixes v2: * allocate KNI using rte_zmalloc * swap reserve/release functions * use "kni" as a variable name * use macros for memzone names lib/librte_kni/rte_kni.c | 496 +-- lib/librte_kni/rte_kni.h | 6 +-

[dpdk-dev] [PATCH] kni: implement header_ops parse method

2018-09-26 Thread Igor Ryzhov
Signed-off-by: Igor Ryzhov --- kernel/linux/kni/kni_net.c | 14 ++ 1 file changed, 14 insertions(+) diff --git a/kernel/linux/kni/kni_net.c b/kernel/linux/kni/kni_net.c index 7fcfa106c..128a5477c 100644 --- a/kernel/linux/kni/kni_net.c +++ b/kernel/linux/kni/kni_net.c @@ -678,6

Re: [dpdk-dev] [PATCH v2 1/5] kni: add API to set link status on kernel interface

2018-09-28 Thread Igor Ryzhov
Hi Dan, Ferruh, Why do we need "struct rte_eth_link" as a parameter at all? Only link status is used in the function – let's use it only: rte_kni_update_link(struct rte_kni *kni, int link_status) /* 0 – down, 1 – up */ It will also solve your differences as we won't have any "redundant" informat

Re: [dpdk-dev] [PATCH] kni: implement header_ops parse method

2019-01-24 Thread Igor Ryzhov
Hi Ferruh, What about this patch? Can you merge it as-is, or should I change it to use relevant eth_header_ops functions? Or maybe completely use eth_header_ops? Best regards, Igor On Fri, Nov 30, 2018 at 10:07 PM Igor Ryzhov wrote: > Hi Ferruh, > > header_ops.parse method is us

Re: [dpdk-dev] [PATCH] kni: implement header_ops parse method

2019-01-24 Thread Igor Ryzhov
ld be investigated separately, and possibly resolved by a separate patch. Best regards, Igor On Thu, Jan 24, 2019 at 5:10 PM Ferruh Yigit wrote: > On 1/24/2019 9:18 AM, Igor Ryzhov wrote: > > Hi Ferruh, > > > > What about this patch? > > Can you merge it as-is, or sh

Re: [dpdk-dev] [PATCH] kni: implement header_ops parse method

2019-01-24 Thread Igor Ryzhov
header_ops usage should be investigated separately, and possibly > resolved by > > a separate patch. > > Agreed, eth_header_ops usage should be investigated separately. > > > > > Best regards, > > Igor > > > > On Thu, Jan 24, 2019 at 5:10 PM Ferruh Yigit > &

[dpdk-dev] [PATCH] kni: fix rte_kni_update_link

2019-01-24 Thread Igor Ryzhov
After read, file offset must be set to 0 before write. Otherwise, the third byte will be overwritten instead of the first. Fixes: c6fd54f28c24 ("kni: add function to set link state on kernel interface") Cc: sta...@dpdk.org Signed-off-by: Igor Ryzhov --- lib/librte_kni/rte_kni.c | 6

Re: [dpdk-dev] [PATCH] kni: fix rte_kni_update_link

2019-01-28 Thread Igor Ryzhov
Hi Ferruh, Can you, please, take a look at this patch? The current implementation is broken, I think the patch should be merged into 19.02 and 18.11.1. Best regards, Igor On Thu, Jan 24, 2019 at 11:47 PM Igor Ryzhov wrote: > After read, file offset must be set to 0 before write. > Oth

Re: [dpdk-dev] [PATCH] kni: fix rte_kni_update_link

2019-01-28 Thread Igor Ryzhov
Hi again, Sorry for bothering, I should have done more testing. It works as it is now. So, self NACK on the patch. Best regards, Igor On Mon, Jan 28, 2019 at 2:45 PM Igor Ryzhov wrote: > Hi Ferruh, > > Can you, please, take a look at this patch? > The current implementation is bro

[dpdk-dev] i40e doesn't calculate RSS for GRE traffic.

2019-01-28 Thread Igor Ryzhov
Hello everyone, We are currently testing i40e support for RSS calculation. RSS is configured with all supported flags: #define I40E_RSS_OFFLOAD_ALL ( \ ETH_RSS_FRAG_IPV4 | \ ETH_RSS_NONFRAG_IPV4_TCP | \ ETH_RSS_NONFRAG_IPV4_UDP | \ ETH_RSS_NONFRAG_IPV4_SCTP | \ ETH_RSS_NONFRAG_IPV4_OTHER | \ ETH

Re: [dpdk-dev] [RFC] kni: remove ethtool support

2019-02-06 Thread Igor Ryzhov
Hi Ferruh, What's the plan with this patch? Best regards, Igor On Sat, Jan 5, 2019 at 7:55 PM Igor Ryzhov wrote: > Hi Ferruh, > > I answered in another thread. > > Regarding this patch – I have no objections now. > > Best regards, > Igor > > On Tue, D

Re: [dpdk-dev] [RFC] kni: remove ethtool support

2019-02-18 Thread Igor Ryzhov
Hi Ferruh, Thanks. Should I be a maintainer to ack the patch? Best regards, Igor On Mon, Feb 18, 2019 at 3:33 PM Ferruh Yigit wrote: > On 2/6/2019 1:12 PM, Igor Ryzhov wrote: > > Hi Ferruh, > > > > What's the plan with this patch? > > Hi Igor, > > I j

Re: [dpdk-dev] [PATCH] doc: deprecate KNI ethtool support

2019-02-18 Thread Igor Ryzhov
Acked-by: Igor Ryzhov On Mon, Feb 18, 2019 at 3:30 PM Ferruh Yigit wrote: > Remove KNI ethtool support. > > Signed-off-by: Ferruh Yigit > --- > RFC Patch: https://patches.dpdk.org/patch/49025/ > --- > doc/guides/rel_notes/deprecation.rst | 8 > 1 fi

[dpdk-dev] [PATCH] i40e: fix flag sent to mac_address_write

2018-01-10 Thread Igor Ryzhov
Use the same value as in Linux driver. Signed-off-by: Igor Ryzhov --- drivers/net/i40e/i40e_ethdev.c | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/drivers/net/i40e/i40e_ethdev.c b/drivers/net/i40e/i40e_ethdev.c index 285d92b..93b9dd0 100644 --- a/drivers/net/i40e

Re: [dpdk-dev] [PATCH] net/i40e: fix VSI MAC filter on primary address change

2018-01-10 Thread Igor Ryzhov
Hello everyone. It's sad that my comments were unanswered. I'm ok with the first two – they were mostly style-related. But I made an investigation on the third one and it is a bug. This is a description (from X710 datasheet) of flags sent to mac_address_write command: By bits: 0-7 – Reserved 8 –

[dpdk-dev] [PATCH v2] net/i40e: fix flag sent to mac_address_write

2018-01-11 Thread Igor Ryzhov
Use the same value as in Linux driver. Fixes: e18e01e92c29 ("i40e: support default MAC address setting") Cc: sta...@dpdk.org Signed-off-by: Igor Ryzhov --- v2: * fix checkpatch warning (long line) * fix commit subject * add Fixes line * CC to stable --- drivers/net/i40e/i40e_et

Re: [dpdk-dev] [PATCH] net/i40e: fix VSI MAC filter on primary address change

2018-01-11 Thread Igor Ryzhov
omments (in another mail > thread). > > > > Best Regards, > > Beilei > > > > *From:* Igor Ryzhov [mailto:iryz...@nfware.com] > *Sent:* Thursday, January 11, 2018 6:47 AM > *To:* Zhang, Helin > *Cc:* Xing, Beilei ; Olivier Matz < > olivier.m...@6

[dpdk-dev] [PATCH v3] net/i40e: fix flag sent to mac_address_write

2018-01-15 Thread Igor Ryzhov
Current flag is in wrong byte order. Use defined macro as it is done in Linux driver. Fixes: e18e01e92c29 ("i40e: support default MAC address setting") Cc: sta...@dpdk.org Signed-off-by: Igor Ryzhov --- v3: * fix commit message v2: * fix checkpatch warning (long line) * fix commit sub

Re: [dpdk-dev] [PATCH v2] net/i40e: fix flag sent to mac_address_write

2018-01-15 Thread Igor Ryzhov
Sure. Sent v3. On Fri, Jan 12, 2018 at 5:22 AM, Xing, Beilei wrote: > > > > -Original Message- > > From: Igor Ryzhov [mailto:iryz...@nfware.com] > > Sent: Thursday, January 11, 2018 6:07 PM > > To: dev@dpdk.org > > Cc: Xing, Beilei ; sta...@dpdk.

[dpdk-dev] [PATCH] lpm: set errno on creation error

2017-10-24 Thread Igor Ryzhov
Signed-off-by: Igor Ryzhov --- lib/librte_lpm/rte_lpm.c | 6 ++ 1 file changed, 6 insertions(+) diff --git a/lib/librte_lpm/rte_lpm.c b/lib/librte_lpm/rte_lpm.c index 64c074e..140dbb2 100644 --- a/lib/librte_lpm/rte_lpm.c +++ b/lib/librte_lpm/rte_lpm.c @@ -218,6 +218,7 @@ rte_lpm_create_v20

[dpdk-dev] [PATCH] lpm6: set errno on creation error

2017-10-24 Thread Igor Ryzhov
Signed-off-by: Igor Ryzhov --- lib/librte_lpm/rte_lpm6.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/lib/librte_lpm/rte_lpm6.c b/lib/librte_lpm/rte_lpm6.c index b4a7df3..5ca322c 100644 --- a/lib/librte_lpm/rte_lpm6.c +++ b/lib/librte_lpm/rte_lpm6.c @@ -191,6 +191,7 @@ rte_lpm6_create

Re: [dpdk-dev] [PATCH] ethdev: fix setting of MAC address

2017-12-18 Thread Igor Ryzhov
Hello Andrew, Don't you think that it's not correct that net/sfc works that way? If we go further, dev->dev_ops->mac_addr_set not only should be called before ether_addr_copy. It should return status code, and in case of error ether_addr_copy shouldn't be called at all. Am I wrong? Best regards,

Re: [dpdk-dev] [PATCH] net/i40e: fix VSI MAC filter on primary address change

2018-01-05 Thread Igor Ryzhov
Thank you for the patch! Comments inline. On Wed, Jan 3, 2018 at 5:29 PM, Olivier Matz wrote: > > drivers/net/i40e/i40e_ethdev.c | 29 + > 1 file changed, 29 insertions(+) > > diff --git a/drivers/net/i40e/i40e_ethdev.c b/drivers/net/i40e/i40e_ > ethdev.c > index 811c

[dpdk-dev] Virtio xstats problem

2016-02-26 Thread Igor Ryzhov
Hello. I found some problem with virtio xstats counters. Example: rx_good_packets: 3 rx_good_bytes: 180 rx_errors: 0 rx_q0_good_packets: 3 rx_q0_good_bytes: 180 rx_q0_errors: 0 rx_q0_multicast_packets: 3 rx_q0_broadcast_packets: 1 rx_q0_undersize_packets: 3 It means that undersize packets are

[dpdk-dev] Virtio xstats problem

2016-02-26 Thread Igor Ryzhov
->broadcast++; } else { vq->multicast++; } } Best regards, Igor > 26 . 2016 ?., ? 17:29, Van Haaren, Harry > ???(?): > >> From: dev [mailto:dev-bounces at dpdk.org] On Behalf Of Igor Ryzhov >> I found so

[dpdk-dev] [PATCH] virtio: don't count broadcast packets in multicast packets counter

2016-02-26 Thread Igor Ryzhov
Signed-off-by: Igor Ryzhov --- drivers/net/virtio/virtio_rxtx.c | 9 +++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/drivers/net/virtio/virtio_rxtx.c b/drivers/net/virtio/virtio_rxtx.c index 41a1366..fe18e1d 100644 --- a/drivers/net/virtio/virtio_rxtx.c +++ b/drivers/net

[dpdk-dev] Virtio xstats problem

2016-02-26 Thread Igor Ryzhov
Sent a patch: http://dpdk.org/dev/patchwork/patch/10887/ <http://dpdk.org/dev/patchwork/patch/10887/>. > 26 . 2016 ?., ? 17:35, Igor Ryzhov ???(?): > > Hello, Harry. > > Understood about size of packets. It's a bit confusing, because in all other > dr

[dpdk-dev] Future Direction for rte_eth_stats_get()

2016-01-22 Thread Igor Ryzhov
Hello, everyone. How about exposing stats according to IF-MIB? Statistics to be exposed are - octets, unicast packets, multicast packets, broadcast packets, errors and discards for both TX and RX. These counters are basic and implemented by most of drivers. All other driver-specific counters ca

[dpdk-dev] [PATCH] lpm: fix overflow issue

2015-02-20 Thread Igor Ryzhov
LPM table overflow may occur if table is full and added rule has the biggest depth that already have some rules. Signed-off-by: Igor Ryzhov --- lib/librte_lpm/rte_lpm.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/lib/librte_lpm/rte_lpm.c b/lib/librte_lpm/rte_lpm.c index 983e04b

[dpdk-dev] [PATCH] lpm: fix overflow issue

2015-02-22 Thread Igor Ryzhov
Hello again. Will anybody review this patch? This is really critical issue, because it can lead to memory corruption and break any program using LPM. CCing this to Bruce Richardson, because he is maintainer of LPM. Regards, Igor Ryzhov On Fri, Feb 20, 2015 at 4:16 PM, Igor Ryzhov wrote: >

[dpdk-dev] [PATCH] lpm: fix overflow issue

2015-02-22 Thread Igor Ryzhov
y I missed this Friday. I'll look at it shortly. > > > > On 21 Feb 2015, at 22:56, Igor Ryzhov > <mailto:iryzhov at nfware.com >> wrote: > > Hello again. Will anybody review this patch? > This is really critical issue, because it can lead to memory corruption >

[dpdk-dev] Fortville Firmware

2015-02-23 Thread Igor Ryzhov
cards with other firmware version, but the problem is that we can't find it. Can anybody help with getting firmware version 4.2.4? Thank you. Regards, Igor Ryzhov

[dpdk-dev] one lightwight rte_eal_init() for SECONDARY processes which only use sharedmemory

2014-11-13 Thread Igor Ryzhov
This is really useful, thank you! Best regards, Igor Ryzhov > 12 . 2014 ?., ? 6:22, Chi, Xiaobo (NSN - CN/Hangzhou) nsn.com> ???(?): > > Hi, > Background: > What we are doing now is port make telecom network element to be cloud based. > For one of our product,

[dpdk-dev] Question about librte_cmdline

2014-11-14 Thread Igor Ryzhov
Hello. Are there any docs with detailed description of cmdline library? I found only some information in ?DPDK Sample Apps? document, but it describes only a couple of features. Best regards, Igor Ryzhov

[dpdk-dev] Question about librte_cmdline

2014-11-14 Thread Igor Ryzhov
gt;>> >>> Hi Igor, >>> >>> On 11/14/2014 09:52 AM, Igor Ryzhov wrote: >>>> Are there any docs with detailed description of cmdline library? >>>> I found only some information in ?DPDK Sample Apps? document, but it >>>> descri

[dpdk-dev] IXGBE error statistics

2015-09-18 Thread Igor Ryzhov
Length Error)? Or is it a bug? Another one question is about incompleteness of rte_eth_stats structure. IXGBE and other drivers have a lot of counters but only a part of them is represented in rte_eth_stats. Is there any valuable reasons for that or it's just not implemented? Best regards,

[dpdk-dev] IXGBE error statistics

2015-09-18 Thread Igor Ryzhov
n, Harry > ???(?): > >> From: dev [mailto:dev-bounces at dpdk.org] On Behalf Of Igor Ryzhov >> Hello everyone. > > Hi Igor, > >> Investigating IXGBE driver I found an mspdc counter (MAC Short Packet >> Discard). And I am wondering why this counter is not used in the calc

[dpdk-dev] rte_ether: Driver-specific stats getting overwritten

2016-07-14 Thread Igor Ryzhov
Hello. How about deleting rx_nombuf from rte_eth_stats? Do you think this counter is necessary? It just shows enormous numbers in case of a lack of processing speed. But we already have imissed counter which shows real number of packets, dropped for the same reason. > 14 2016 ?., ? 16:37,

[dpdk-dev] [PATCH] doc: announce KNI ethtool removal

2016-07-21 Thread Igor Ryzhov
Hello. I think good alternative is rte_ethtool library from ethtool sample application. But I am wondering why this code is only in app, not in lib. Best regards, Igor On Thu, Jul 21, 2016 at 4:33 PM, Ferruh Yigit wrote: > On 7/20/2016 5:07 PM, Thomas Monjalon wrote: > > The out-of-tree kernel

[dpdk-dev] [PATCH v2 2/2] Filling speed capability bitmaps in the PMDs

2015-05-27 Thread Igor Ryzhov
Hello, Marc! You swapped values for X710 and XL710 - you use 1G and 10G for XL710, 10G and 40G for X710. Best regards, Igor > 26 ??? 2015 ?., ? 22:50, Marc Sune ???(?): > > Added speed capabilities to all pmds supporting physical NICs: > > * e1000 > * ixgbe > * i40 > * mlx4 > * fm10k >

  1   2   >