DPDK patches and discussions
 help / color / mirror / Atom feed
* [dpdk-dev] [Bug 599] netvsc PMD in multi-queue mode failed with 'invalid NVS resp len' error
@ 2020-12-09 16:06 bugzilla
  2021-03-09  4:08 ` bugzilla
  0 siblings, 1 reply; 2+ messages in thread
From: bugzilla @ 2020-12-09 16:06 UTC (permalink / raw)
  To: dev

https://bugs.dpdk.org/show_bug.cgi?id=599

            Bug ID: 599
           Summary: netvsc PMD in multi-queue mode failed with 'invalid
                    NVS resp len' error
           Product: DPDK
           Version: 19.11
          Hardware: x86
                OS: Linux
            Status: UNCONFIRMED
          Severity: normal
          Priority: Normal
         Component: ethdev
          Assignee: dev@dpdk.org
          Reporter: khizmax@gmail.com
  Target Milestone: ---

On guest Linux testpmd cannot initialize and stop with error 
in multi-queue mode (--rx=2 --tx=2):

hn_subchan_configure(): open 1 subchannels
__hn_nvs_execute(): invalid NVS resp len 32 (expect 40)
hn_dev_configure(): subchannel configuration failed


Single-queue mode (with --rx=1 --tx=1) ok

OS: 
Host: Windows Server 2012 R2 DataCenter, 4 x IntelR I350 Gigabit Network

Guest OS: CentOS Linux release 8.2.2004 (Core)
uname -a
Linux centos8ssd.localhost 4.18.0-240.1.1.el8_3.x86_64 #1 SMP Thu Nov 19
17:20:08 UTC 2020 x86_64 x86_64 x86_64 GNU/Linux
kernel-modules-extra installed (to support multiq qdisc)

DPDK 19.11.0 (with netvsc PMD backported from 19.11.5)

driverctl -b vmbus list-devices
00000000-0000-8899-0000-000000000000 hv_storvsc
242ff919-07db-4180-9c2e-b86cb68c8c55 hv_utils
2450ee40-33bf-4fbd-892e-9fb06e9214cf hv_utils
2dd1ce17-079e-403c-b352-a1921ee207ee hv_utils
34f1cc16-4b3f-4d8a-b567-a0eb61dc2b78 uio_hv_generic [*]
392b7b0f-dbd7-4225-a43f-4c926fc87e39 uio_hv_generic [*]
4487b255-b88c-403f-bb51-d1f69cf17f87 (none)
5620e0c7-8062-4dce-aeb7-520c7ef76171 hyperv_fb
58f75a6d-d949-4320-99e1-a2a2576d581c hid_hyperv
896753f4-430c-4462-9e32-cb65d4a590d9 hv_storvsc
99221fa0-24ad-11e2-be98-001aa01bbf6e (none)
aed6f53e-17ec-43f9-b729-f4a238c49ca9 hv_netvsc
b6650ff7-33bc-4840-8048-e0676786f393 hv_utils
d34b2567-b9b6-42b9-8778-0a4ec0b955bf hyperv_keyboard
f5bee29c-1741-4aad-a4c2-8fdedb46dcc2 (none)
fd149e91-82e0-4a7d-afa6-2a4166cbd7c0 hv_utils

To reproduce:


dpdk-testpmd -w vmbus:34f1cc16-4b3f-4d8a-b567-a0eb61dc2b78 -w
vmbus:392b7b0f-dbd7-4225-a43f-4c926fc87e39 -l 0-2 --log-level=lib.eal:debug
--log-level=pmd.net.netvsc.driver:debug --log-level=pmd.net.netvsc.init:debug
-- -i --rxq 2 --txq 2

EAL: Detected lcore 0 as core 0 on socket 0
EAL: Detected lcore 1 as core 1 on socket 0
EAL: Detected lcore 2 as core 2 on socket 0
EAL: Detected lcore 3 as core 3 on socket 0
EAL: Support maximum 128 logical core(s) by configuration.
EAL: Detected 4 lcore(s)
EAL: Detected 1 NUMA nodes
EAL: Ask a virtual area of 0x7000 bytes
EAL: Virtual area found at 0x100000000 (size = 0x7000)
EAL: Multi-process socket /var/run/dpdk/rte/mp_socket
EAL: DPAA Bus not present. Skipping.
EAL: Module /sys/module/vfio_pci not found! error 2 (No such file or directory)
EAL: VFIO PCI modules not loaded
EAL: Bus dpaa_bus wants IOVA as 'DC'
EAL: Bus fslmc wants IOVA as 'DC'
EAL: Bus pci wants IOVA as 'DC'
EAL: Buses did not request a specific IOVA mode.
EAL: Module /sys/module/rte_kni not found! error 2 (No such file or directory)
EAL: IOMMU is not available, selecting IOVA as PA mode.
EAL: Selected IOVA mode 'PA'
EAL: Probing VFIO support...
EAL: Module /sys/module/vfio not found! error 2 (No such file or directory)
EAL: VFIO modules not loaded, skipping VFIO support...
EAL: Ask a virtual area of 0x2e000 bytes
EAL: Virtual area found at 0x100007000 (size = 0x2e000)
EAL: Setting up physically contiguous memory...
EAL: Setting maximum number of open files to 262144
EAL: Detected memory type: socket_id:0 hugepage_sz:2097152
EAL: Creating 4 segment lists: n_segs:8192 socket_id:0 hugepage_sz:2097152
EAL: Ask a virtual area of 0x61000 bytes
EAL: Virtual area found at 0x100035000 (size = 0x61000)
EAL: Memseg list allocated: 0x800kB at socket 0
EAL: Ask a virtual area of 0x400000000 bytes
EAL: Virtual area found at 0x100200000 (size = 0x400000000)
EAL: Ask a virtual area of 0x61000 bytes
EAL: Virtual area found at 0x500200000 (size = 0x61000)
EAL: Memseg list allocated: 0x800kB at socket 0
EAL: Ask a virtual area of 0x400000000 bytes
EAL: Virtual area found at 0x500400000 (size = 0x400000000)
EAL: Ask a virtual area of 0x61000 bytes
EAL: Virtual area found at 0x900400000 (size = 0x61000)
EAL: Memseg list allocated: 0x800kB at socket 0
EAL: Ask a virtual area of 0x400000000 bytes
EAL: Virtual area found at 0x900600000 (size = 0x400000000)
EAL: Ask a virtual area of 0x61000 bytes
EAL: Virtual area found at 0xd00600000 (size = 0x61000)
EAL: Memseg list allocated: 0x800kB at socket 0
EAL: Ask a virtual area of 0x400000000 bytes
EAL: Virtual area found at 0xd00800000 (size = 0x400000000)
EAL: TSC frequency is ~2400000 KHz
EAL: Master lcore 0 is ready (tid=7f6a028f5c00;cpuset=[0])
EAL: lcore 1 is ready (tid=7f69ff2fa400;cpuset=[1])
EAL: lcore 2 is ready (tid=7f69feaf9400;cpuset=[2])
EAL: Trying to obtain current memory policy.
EAL: Setting policy MPOL_PREFERRED for socket 0
EAL: Restoring previous memory policy: 0
EAL: request: mp_malloc_sync
EAL: Heap on socket 0 was expanded by 2MB
eth_hn_probe():  >>
eth_hn_dev_init():  >>
hn_parse_args(): device args 34f1cc16-4b3f-4d8a-b567-a0eb61dc2b78
hn_nvs_doinit(): nvs init failed for ver 0x60001
hn_nvs_init(): version 0x60001 error -22
hn_nvs_doinit(): nvs init failed for ver 0x60000
hn_nvs_init(): version 0x60000 error -22
hn_nvs_init(): NVS version 0x50000, NDIS version 6.30
hn_nvs_conn_rxbuf(): connect rxbuff va=0x1100c02000 gpad=0xe1e4e
hn_nvs_conn_rxbuf(): receive buffer size 1728 count 18811
hn_nvs_conn_chim(): connect send buf va=0x1102b02000 gpad=0xe1e4f
hn_nvs_conn_chim(): send buffer 16777216 section size:6144, count:2730
hn_rndis_init(): RNDIS ver 1.0, aggpkt size 4026531839, aggpkt cnt 8, aggpkt
align 8
hn_rndis_link_status(): link status 0x4001000b
hn_rndis_set_rxfilter(): set RX filter 0 done
hn_rndis_get_eaddr(): MAC address 00:15:5d:01:5c:03
eth_hn_dev_init(): VMBus max channels 64
hn_rndis_query_rsscaps(): RX rings 64 indirect 128 caps 0x301
eth_hn_probe():  >>
eth_hn_dev_init():  >>
hn_parse_args(): device args 392b7b0f-dbd7-4225-a43f-4c926fc87e39
hn_nvs_doinit(): nvs init failed for ver 0x60001
hn_nvs_init(): version 0x60001 error -22
hn_nvs_doinit(): nvs init failed for ver 0x60000
hn_nvs_init(): version 0x60000 error -22
hn_nvs_init(): NVS version 0x50000, NDIS version 6.30
hn_nvs_conn_rxbuf(): connect rxbuff va=0x1103f04000 gpad=0xe1e50
hn_nvs_conn_rxbuf(): receive buffer size 1728 count 18811
EAL: Trying to obtain current memory policy.
EAL: Setting policy MPOL_PREFERRED for socket 0
EAL: Restoring previous memory policy: 0
EAL: request: mp_malloc_sync
EAL: Heap on socket 0 was expanded by 2MB
hn_nvs_conn_chim(): connect send buf va=0x1105e04000 gpad=0xe1e51
hn_nvs_conn_chim(): send buffer 16777216 section size:6144, count:2730
hn_rndis_init(): RNDIS ver 1.0, aggpkt size 4026531839, aggpkt cnt 8, aggpkt
align 8
hn_rndis_link_status(): link status 0x4001000b
hn_rndis_set_rxfilter(): set RX filter 0 done
hn_rndis_get_eaddr(): MAC address 00:15:5d:01:5c:08
eth_hn_dev_init(): VMBus max channels 64
hn_rndis_query_rsscaps(): RX rings 64 indirect 128 caps 0x301
EAL: Module /sys/module/vfio not found! error 2 (No such file or directory)
EAL: Trying to obtain current memory policy.
EAL: Setting policy MPOL_PREFERRED for socket 0
EAL: Restoring previous memory policy: 0
EAL: request: mp_malloc_sync
EAL: Heap on socket 0 was expanded by 6MB
Interactive-mode selected
testpmd: create a new mbuf pool <mbuf_pool_socket_0>: n=163456, size=2176,
socket=0
testpmd: preferred mempool ops selected: ring_mp_mc
EAL: Trying to obtain current memory policy.
EAL: Setting policy MPOL_PREFERRED for socket 0
EAL: Restoring previous memory policy: 0
EAL: request: mp_malloc_sync
EAL: Heap on socket 0 was expanded by 4MB
EAL: Trying to obtain current memory policy.
EAL: Setting policy MPOL_PREFERRED for socket 0
EAL: Restoring previous memory policy: 0
EAL: request: mp_malloc_sync
EAL: Heap on socket 0 was expanded by 370MB
Configuring Port 0 (socket 0)
hn_dev_configure():  >>
hn_rndis_link_status(): link status 0x40020006
hn_subchan_configure(): open 1 subchannels
__hn_nvs_execute(): invalid NVS resp len 32 (expect 40)
hn_dev_configure(): subchannel configuration failed
Port0 dev_configure = -22
hn_dev_rx_queue_release():  >>
hn_dev_rx_queue_release():  >>
hn_dev_tx_queue_release():  >>
hn_dev_tx_queue_release():  >>
Fail to configure port 0
EAL: Error - exiting with code: 1
  Cause: Start ports failed

Start in single-queue mode is success:


dpdk-testpmd -w vmbus:34f1cc16-4b3f-4d8a-b567-a0eb61dc2b78 -w
vmbus:392b7b0f-dbd7-4225-a43f-4c926fc87e39 -l 0-2 --log-level=lib.eal:debug
--log-level=pmd.net.netvsc.driver:debug --log-level=pmd.net.netvsc.init:debug
-- -i --rxq 1 --txq 1


EAL: Detected lcore 0 as core 0 on socket 0
EAL: Detected lcore 1 as core 1 on socket 0
EAL: Detected lcore 2 as core 2 on socket 0
EAL: Detected lcore 3 as core 3 on socket 0
EAL: Support maximum 128 logical core(s) by configuration.
EAL: Detected 4 lcore(s)
EAL: Detected 1 NUMA nodes
EAL: Ask a virtual area of 0x7000 bytes
EAL: Virtual area found at 0x100000000 (size = 0x7000)
EAL: Multi-process socket /var/run/dpdk/rte/mp_socket
EAL: DPAA Bus not present. Skipping.
EAL: Module /sys/module/vfio_pci not found! error 2 (No such file or directory)
EAL: VFIO PCI modules not loaded
EAL: Bus dpaa_bus wants IOVA as 'DC'
EAL: Bus fslmc wants IOVA as 'DC'
EAL: Bus pci wants IOVA as 'DC'
EAL: Buses did not request a specific IOVA mode.
EAL: Module /sys/module/rte_kni not found! error 2 (No such file or directory)
EAL: IOMMU is not available, selecting IOVA as PA mode.
EAL: Selected IOVA mode 'PA'
EAL: Probing VFIO support...
EAL: Module /sys/module/vfio not found! error 2 (No such file or directory)
EAL: VFIO modules not loaded, skipping VFIO support...
EAL: Ask a virtual area of 0x2e000 bytes
EAL: Virtual area found at 0x100007000 (size = 0x2e000)
EAL: Setting up physically contiguous memory...
EAL: Setting maximum number of open files to 262144
EAL: Detected memory type: socket_id:0 hugepage_sz:2097152
EAL: Creating 4 segment lists: n_segs:8192 socket_id:0 hugepage_sz:2097152
EAL: Ask a virtual area of 0x61000 bytes
EAL: Virtual area found at 0x100035000 (size = 0x61000)
EAL: Memseg list allocated: 0x800kB at socket 0
EAL: Ask a virtual area of 0x400000000 bytes
EAL: Virtual area found at 0x100200000 (size = 0x400000000)
EAL: Ask a virtual area of 0x61000 bytes
EAL: Virtual area found at 0x500200000 (size = 0x61000)
EAL: Memseg list allocated: 0x800kB at socket 0
EAL: Ask a virtual area of 0x400000000 bytes
EAL: Virtual area found at 0x500400000 (size = 0x400000000)
EAL: Ask a virtual area of 0x61000 bytes
EAL: Virtual area found at 0x900400000 (size = 0x61000)
EAL: Memseg list allocated: 0x800kB at socket 0
EAL: Ask a virtual area of 0x400000000 bytes
EAL: Virtual area found at 0x900600000 (size = 0x400000000)
EAL: Ask a virtual area of 0x61000 bytes
EAL: Virtual area found at 0xd00600000 (size = 0x61000)
EAL: Memseg list allocated: 0x800kB at socket 0
EAL: Ask a virtual area of 0x400000000 bytes
EAL: Virtual area found at 0xd00800000 (size = 0x400000000)
EAL: TSC frequency is ~2400000 KHz
EAL: Master lcore 0 is ready (tid=7f9393d8bc00;cpuset=[0])
EAL: lcore 1 is ready (tid=7f938bfff400;cpuset=[1])
EAL: lcore 2 is ready (tid=7f938b7fe400;cpuset=[2])
EAL: Trying to obtain current memory policy.
EAL: Setting policy MPOL_PREFERRED for socket 0
EAL: Restoring previous memory policy: 0
EAL: request: mp_malloc_sync
EAL: Heap on socket 0 was expanded by 2MB
eth_hn_probe():  >>
eth_hn_dev_init():  >>
hn_parse_args(): device args 34f1cc16-4b3f-4d8a-b567-a0eb61dc2b78
hn_nvs_doinit(): nvs init failed for ver 0x60001
hn_nvs_init(): version 0x60001 error -22
hn_nvs_doinit(): nvs init failed for ver 0x60000
hn_nvs_init(): version 0x60000 error -22
hn_nvs_init(): NVS version 0x50000, NDIS version 6.30
hn_nvs_conn_rxbuf(): connect rxbuff va=0x1100c02000 gpad=0xe1e4e
hn_nvs_conn_rxbuf(): receive buffer size 1728 count 18811
hn_nvs_conn_chim(): connect send buf va=0x1102b02000 gpad=0xe1e4f
hn_nvs_conn_chim(): send buffer 16777216 section size:6144, count:2730
hn_rndis_init(): RNDIS ver 1.0, aggpkt size 4026531839, aggpkt cnt 8, aggpkt
align 8
hn_rndis_link_status(): link status 0x4001000b
hn_rndis_set_rxfilter(): set RX filter 0 done
hn_rndis_get_eaddr(): MAC address 00:15:5d:01:5c:03
eth_hn_dev_init(): VMBus max channels 64
hn_rndis_query_rsscaps(): RX rings 64 indirect 128 caps 0x301
eth_hn_probe():  >>
eth_hn_dev_init():  >>
hn_parse_args(): device args 392b7b0f-dbd7-4225-a43f-4c926fc87e39
hn_nvs_doinit(): nvs init failed for ver 0x60001
hn_nvs_init(): version 0x60001 error -22
hn_nvs_doinit(): nvs init failed for ver 0x60000
hn_nvs_init(): version 0x60000 error -22
hn_nvs_init(): NVS version 0x50000, NDIS version 6.30
hn_nvs_conn_rxbuf(): connect rxbuff va=0x1103f04000 gpad=0xe1e50
hn_nvs_conn_rxbuf(): receive buffer size 1728 count 18811
EAL: Trying to obtain current memory policy.
EAL: Setting policy MPOL_PREFERRED for socket 0
EAL: Restoring previous memory policy: 0
EAL: request: mp_malloc_sync
EAL: Heap on socket 0 was expanded by 2MB
hn_nvs_conn_chim(): connect send buf va=0x1105e04000 gpad=0xe1e51
hn_nvs_conn_chim(): send buffer 16777216 section size:6144, count:2730
hn_rndis_init(): RNDIS ver 1.0, aggpkt size 4026531839, aggpkt cnt 8, aggpkt
align 8
hn_rndis_link_status(): link status 0x4001000b
hn_rndis_set_rxfilter(): set RX filter 0 done
hn_rndis_get_eaddr(): MAC address 00:15:5d:01:5c:08
eth_hn_dev_init(): VMBus max channels 64
hn_rndis_query_rsscaps(): RX rings 64 indirect 128 caps 0x301
EAL: Module /sys/module/vfio not found! error 2 (No such file or directory)
EAL: Trying to obtain current memory policy.
EAL: Setting policy MPOL_PREFERRED for socket 0
EAL: Restoring previous memory policy: 0
EAL: request: mp_malloc_sync
EAL: Heap on socket 0 was expanded by 6MB
Interactive-mode selected
testpmd: create a new mbuf pool <mbuf_pool_socket_0>: n=163456, size=2176,
socket=0
testpmd: preferred mempool ops selected: ring_mp_mc
EAL: Trying to obtain current memory policy.
EAL: Setting policy MPOL_PREFERRED for socket 0
EAL: Restoring previous memory policy: 0
EAL: request: mp_malloc_sync
EAL: Heap on socket 0 was expanded by 4MB
EAL: Trying to obtain current memory policy.
EAL: Setting policy MPOL_PREFERRED for socket 0
EAL: Restoring previous memory policy: 0
EAL: request: mp_malloc_sync
EAL: Heap on socket 0 was expanded by 370MB
Configuring Port 0 (socket 0)
hn_dev_configure():  >>
hn_rndis_link_status(): link status 0x40020006
hn_dev_tx_queue_setup():  >>
hn_dev_tx_queue_setup(): TX descriptor pool hn_txd_0_0 n=512 size=40
hn_dev_rx_queue_setup():  >>
hn_dev_start():  >>
hn_rndis_set_rxfilter(): set RX filter 0xd done
hn_dev_link_update(): Port 0 is up
hn_rndis_set_rxfilter(): set RX filter 0x9 done
hn_rndis_set_rxfilter(): set RX filter 0x9 done
Port 0: 00:15:5D:01:5C:03
Configuring Port 1 (socket 0)
hn_dev_configure():  >>
hn_rndis_link_status(): link status 0x40020006
hn_dev_tx_queue_setup():  >>
hn_dev_tx_queue_setup(): TX descriptor pool hn_txd_1_0 n=512 size=40
hn_dev_rx_queue_setup():  >>
hn_dev_start():  >>
hn_rndis_set_rxfilter(): set RX filter 0xd done
hn_dev_link_update(): Port 1 is up
hn_rndis_set_rxfilter(): set RX filter 0x9 done
hn_rndis_set_rxfilter(): set RX filter 0x9 done
Port 1: 00:15:5D:01:5C:08
Checking link statuses...
Done
hn_rndis_set_rxfilter(): set RX filter 0x20 done
hn_rndis_set_rxfilter(): set RX filter 0x20 done
testpmd>

-- 
You are receiving this mail because:
You are the assignee for the bug.

^ permalink raw reply	[flat|nested] 2+ messages in thread

* [dpdk-dev] [Bug 599] netvsc PMD in multi-queue mode failed with 'invalid NVS resp len' error
  2020-12-09 16:06 [dpdk-dev] [Bug 599] netvsc PMD in multi-queue mode failed with 'invalid NVS resp len' error bugzilla
@ 2021-03-09  4:08 ` bugzilla
  0 siblings, 0 replies; 2+ messages in thread
From: bugzilla @ 2021-03-09  4:08 UTC (permalink / raw)
  To: dev

https://bugs.dpdk.org/show_bug.cgi?id=599

Ajit Khaparde (ajit.khaparde@broadcom.com) changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |RESOLVED
                 CC|                            |ajit.khaparde@broadcom.com
         Resolution|---                         |FIXED

--- Comment #9 from Ajit Khaparde (ajit.khaparde@broadcom.com) ---
Marking fixed based on the previous comment.

-- 
You are receiving this mail because:
You are the assignee for the bug.

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2021-03-09  4:08 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-12-09 16:06 [dpdk-dev] [Bug 599] netvsc PMD in multi-queue mode failed with 'invalid NVS resp len' error bugzilla
2021-03-09  4:08 ` bugzilla

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