DPDK patches and discussions
 help / color / mirror / Atom feed
From: "Dey, Souvik" <sodey@rbbn.com>
To: "dev@dpdk.org" <dev@dpdk.org>
Cc: Stephen Hemminger <stephen@networkplumber.org>,
	"longli@microsoft.com" <longli@microsoft.com>,
	"Yigit, Ferruh" <ferruh.yigit@intel.com>,
	"sthemmin@microsoft.com" <sthemmin@microsoft.com>
Subject: [dpdk-dev] Issue with net/netvsc pmd in 18.11.9
Date: Wed, 16 Sep 2020 12:00:04 +0000
Message-ID: <DM6PR03MB4777DA52E01F42B58455B3F8CD210@DM6PR03MB4777.namprd03.prod.outlook.com> (raw)

Hi All,
      I updated from dpdk 18.11.6 to 18.11.9 and my netvsc pmd stopped working as expected. Firstly, I saw a crash in tx packets as soon as the dpdk app comes up. In doing some googling found a bug that was fixed after 18.11.9 https://patches.dpdk.org/patch/75001/ . Ported this fix and was able to get rid of the seg fault, but now stuck at another issue. When we are transmitting packets of size within HN_TXCOPY_THRESHOLD we are all good but any larger packets/fragmented packets are getting dropped after some time. As soon as we start to receive the transmit completion event NVS_TYPE_RNDIS_ACK as failed, packets with size greater than HN_TXCOPY_THRESHOLD starts to drop and never recovers. Packets less than HN_TXCOPY_THRESHOLD works properly there after though. Any idea why this is happening and is there is some fix which is already there which is done after 18.11.9 release ?
We are at the critical part of our release, so any help in this regard will be highly appreciated. Thanks in advance for all the help.

PS: I also tried to put the net/netvsc: return the correct chimney index <https://patches.dpdk.org/patch/75118/>  fix in but nothing changed.

--
Regards,
Souvik

Log Snippet:
I can see the below errors coming after some transmitting.
hn_xmit_sg() tx: port 2:0 tx 4294967295 segs 2 size 0
hn_xmit_sg() tx: port 2:0 tx 4294967295 segs 3 size 0
hn_xmit_sg() tx: port 2:0 tx 4294967295 segs 2 size 0
hn_xmit_sg() tx: port 2:0 tx 4294967295 segs 3 size 0
hn_xmit_sg() tx: port 2:0 tx 4294967295 segs 2 size 0
hn_xmit_sg() tx: port 2:0 tx 4294967295 segs 3 size 0
hn_xmit_sg() tx: port 2:0 tx 4294967295 segs 2 size 0
hn_xmit_sg() tx: port 2:0 tx 4294967295 segs 3 size 0
hn_xmit_sg() tx: port 2:0 tx 4294967295 segs 2 size 0
hn_xmit_sg() tx: port 2:0 tx 4294967295 segs 3 size 0
hn_flush_txagg() tx: port 2:0 tx 2048 size 302
hn_nvs_send_completed() tx: port 2:0 complete tx 4294967295 packets 1 bytes 1514
hn_nvs_send_completed() tx: port 2:0 complete tx 4294967295 packets 1 bytes 1514
hn_nvs_send_completed() tx: port 2:0 complete tx 4294967295 packets 1 bytes 1514
hn_nvs_send_completed() tx: port 2:0 complete tx 4294967295 packets 1 bytes 1514
hn_nvs_send_completed() tx: port 2:0 complete tx 4294967295 packets 1 bytes 1514
hn_nvs_send_completed() tx: port 2:0 complete tx 4294967295 packets 1 bytes 1514
hn_nvs_send_completed() tx: port 2:0 complete tx 4294967295 packets 1 bytes 1514
hn_nvs_send_completed() tx: port 2:0 complete tx 4294967295 packets 1 bytes 1514
hn_nvs_send_completed() tx: port 2:0 complete tx 4294967295 packets 1 bytes 1514
hn_nvs_send_completed() tx: port 2:0 complete tx 4294967295 packets 1 bytes 1514
hn_nvs_send_completed() tx: port 2:0 complete tx 2048 packets 1 bytes 242

hn_xmit_sg() tx: port 2:0 tx 4294967295 segs 2 size 0
hn_xmit_sg() tx: port 2:0 tx 4294967295 segs 2 size 0
hn_xmit_sg() tx: port 2:0 tx 4294967295 segs 2 size 0
hn_xmit_sg() tx: port 2:0 tx 4294967295 segs 3 size 0
hn_xmit_sg() tx: port 2:0 tx 4294967295 segs 2 size 0
hn_xmit_sg() tx: port 2:0 tx 4294967295 segs 3 size 0
hn_xmit_sg() tx: port 2:0 tx 4294967295 segs 2 size 0
hn_xmit_sg() tx: port 2:0 tx 4294967295 segs 2 size 0
hn_xmit_sg() tx: port 2:0 tx 4294967295 segs 3 size 0
hn_xmit_sg() tx: port 2:0 tx 4294967295 segs 2 size 0
hn_flush_txagg() tx: port 2:0 tx 2624 size 302
hn_nvs_send_completed() tx: port 2:0 complete tx 4294967295 failed status 2
hn_nvs_send_completed() tx: port 2:0 complete tx 4294967295 failed status 2
hn_nvs_send_completed() tx: port 2:0 complete tx 4294967295 failed status 2
hn_nvs_send_completed() tx: port 2:0 complete tx 4294967295 failed status 2
hn_nvs_send_completed() tx: port 2:0 complete tx 4294967295 packets 1 bytes 1514
hn_nvs_send_completed() tx: port 2:0 complete tx 4294967295 packets 1 bytes 1514
hn_nvs_send_completed() tx: port 2:0 complete tx 4294967295 packets 1 bytes 1514
hn_nvs_send_completed() tx: port 2:0 complete tx 4294967295 packets 1 bytes 1514
hn_nvs_send_completed() tx: port 2:0 complete tx 4294967295 packets 1 bytes 1514
hn_nvs_send_completed() tx: port 2:0 complete tx 4294967295 packets 1 bytes 1514
hn_nvs_send_completed() tx: port 2:0 complete tx 2624 packets 1 bytes 242

hn_xmit_sg() tx: port 2:0 tx 4294967295 segs 2 size 0
hn_xmit_sg() tx: port 2:0 tx 4294967295 segs 2 size 0
hn_xmit_sg() tx: port 2:0 tx 4294967295 segs 2 size 0
hn_xmit_sg() tx: port 2:0 tx 4294967295 segs 3 size 0
hn_xmit_sg() tx: port 2:0 tx 4294967295 segs 2 size 0
hn_xmit_sg() tx: port 2:0 tx 4294967295 segs 3 size 0
hn_xmit_sg() tx: port 2:0 tx 4294967295 segs 2 size 0
hn_xmit_sg() tx: port 2:0 tx 4294967295 segs 2 size 0
hn_xmit_sg() tx: port 2:0 tx 4294967295 segs 3 size 0
hn_xmit_sg() tx: port 2:0 tx 4294967295 segs 2 size 0
hn_flush_txagg() tx: port 2:0 tx 2688 size 302
hn_nvs_send_completed() tx: port 2:0 complete tx 4294967295 failed status 2
hn_nvs_send_completed() tx: port 2:0 complete tx 4294967295 failed status 2
hn_nvs_send_completed() tx: port 2:0 complete tx 4294967295 failed status 2
hn_nvs_send_completed() tx: port 2:0 complete tx 4294967295 failed status 2
hn_nvs_send_completed() tx: port 2:0 complete tx 4294967295 failed status 2
hn_nvs_send_completed() tx: port 2:0 complete tx 4294967295 failed status 2
hn_nvs_send_completed() tx: port 2:0 complete tx 4294967295 failed status 2
hn_nvs_send_completed() tx: port 2:0 complete tx 4294967295 failed status 2
hn_nvs_send_completed() tx: port 2:0 complete tx 4294967295 failed status 2
hn_nvs_send_completed() tx: port 2:0 complete tx 4294967295 failed status 2
hn_nvs_send_completed() tx: port 2:0 complete tx 2688 packets 1 bytes 242
hn_flush_txagg() tx: port 2:0 tx 3264 size 571
hn_nvs_send_completed() tx: port 2:0 complete tx 3264 packets 1 bytes 511
hn_rxpkt() rx: port 2:0 RX id 3 size 511 type 0x11 ol_flags 0x2
hn_flush_txagg() tx: port 2:0 tx 3328 size 571
hn_nvs_send_completed() tx: port 2:0 complete tx 3328 packets 1 bytes 511
hn_rxpkt() rx: port 2:0 RX id 3 size 512 type 0x11 ol_flags 0x2
hn_xmit_sg() tx: port 2:0 tx 4294967295 segs 2 size 0
hn_nvs_send_completed() tx: port 2:0 complete tx 4294967295 failed status 2
hn_rxpkt() rx: port 2:0 RX id 3 size 512 type 0x11 ol_flags 0x2
hn_xmit_sg() tx: port 2:0 tx 4294967295 segs 2 size 0
hn_nvs_send_completed() tx: port 2:0 complete tx 4294967295 failed status 2
hn_flush_txagg() tx: port 2:0 tx 3392 size 120
hn_nvs_send_completed() tx: port 2:0 complete tx 3392 packets 1 bytes 60
hn_rxpkt() rx: port 2:0 RX id 3 size 42 type 0x1 ol_flags 0

             reply	other threads:[~2020-09-16 12:00 UTC|newest]

Thread overview: 12+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-09-16 12:00 Dey, Souvik [this message]
2020-09-16 14:18 ` Kevin Traynor
2020-09-16 14:41   ` Dey, Souvik
2020-09-16 17:43     ` Long Li
2020-09-16 19:43       ` Dey, Souvik
2020-09-16 20:32         ` Dey, Souvik
2020-09-16 22:07           ` Dey, Souvik
2020-09-17  6:57             ` Long Li
2020-09-17 14:54               ` Dey, Souvik
2020-09-18  7:08                 ` Long Li
2020-09-18 12:20                   ` Dey, Souvik
2020-09-18 19:05                     ` Long Li

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=DM6PR03MB4777DA52E01F42B58455B3F8CD210@DM6PR03MB4777.namprd03.prod.outlook.com \
    --to=sodey@rbbn.com \
    --cc=dev@dpdk.org \
    --cc=ferruh.yigit@intel.com \
    --cc=longli@microsoft.com \
    --cc=stephen@networkplumber.org \
    --cc=sthemmin@microsoft.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

DPDK patches and discussions

This inbox may be cloned and mirrored by anyone:

	git clone --mirror https://inbox.dpdk.org/dev/0 dev/git/0.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 dev dev/ https://inbox.dpdk.org/dev \
		dev@dpdk.org
	public-inbox-index dev

Example config snippet for mirrors.
Newsgroup available over NNTP:
	nntp://inbox.dpdk.org/inbox.dpdk.dev


AGPL code for this site: git clone https://public-inbox.org/public-inbox.git