DPDK patches and discussions
 help / color / mirror / Atom feed
From: Stephen Hemminger <stephen@networkplumber.org>
To: Edwin Brossette <edwin.brossette@6wind.com>
Cc: dev@dpdk.org, Didier Pallard <didier.pallard@6wind.com>,
	Laurent Hardy <laurent.hardy@6wind.com>,
	Olivier Matz <olivier.matz@6wind.com>,
	longli@microsoft.com, weh@microsoft.com
Subject: Re: net/netvsc: problem with configuring netvsc port after first port start
Date: Tue, 1 Oct 2024 10:27:59 -0700	[thread overview]
Message-ID: <20241001102759.703aec47@hermes.local> (raw)
In-Reply-To: <CANDF9xC+PQi=zQ8Xc0skCzpj6FXxGQ0uUqzWXy5VqP0Yovr=Jw@mail.gmail.com>

On Tue, 1 Oct 2024 18:09:17 +0200
Edwin Brossette <edwin.brossette@6wind.com> wrote:

> testpmd> port stop 3  
> Stopping ports...
> Done
> 
>  -> Then, change something in the port config. This will trigger a call  
> to rte_eth_dev_configure() on the next port start. Here I change the link
> speed/duplex:
> testpmd> port config 3 speed 10000 duplex full
> testpmd>  
> 
>  -> Finally, try to start the port:  
> 
> testpmd> port start 3  
> Configuring Port 3 (socket 0)
> hn_nvs_alloc_subchans(): nvs subch alloc failed: 0x2
> hn_dev_configure(): subchannel configuration failed
> ETHDEV: Port3 dev_configure = -5
> Fail to configure port 3  <------
> 
> 
> As you can see, the port configuration fails.
> The error happens in hn_nvs_alloc_subchans(). Maybe the previous ressources
> were not properly deallocated on port stop?

A "channel" is the VMBUS instance used to communicate with the host.
The "sub-channel" is a the secondary channel associated with multi-queue.

There does not appear to be an NVSP operation to deallocate secondary
channels. Other versions (FreeBSD, Linux) do not allow reconfiguring
the number of queues; instead the subchannels are created when device
is attached.

Looks like a VMBUS protocol limitation in the internal API's.

When using failsafe/tun the driver is actually faking the number of queues.
Since TAP device queues are between userspace (DPDK PMD) and the kernel.
They TAP queues are not necessarily associated with the netvsc kernel driver queues.

      reply	other threads:[~2024-10-01 17:28 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-10-01 16:09 Edwin Brossette
2024-10-01 17:27 ` Stephen Hemminger [this message]

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=20241001102759.703aec47@hermes.local \
    --to=stephen@networkplumber.org \
    --cc=dev@dpdk.org \
    --cc=didier.pallard@6wind.com \
    --cc=edwin.brossette@6wind.com \
    --cc=laurent.hardy@6wind.com \
    --cc=longli@microsoft.com \
    --cc=olivier.matz@6wind.com \
    --cc=weh@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
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).