DPDK usage discussions
 help / color / mirror / Atom feed
From: Yong Wang <yongwang@vmware.com>
To: Thomas Monjalon <thomas@monjalon.net>,
	madhukar mythri <madhukar.mythri@gmail.com>
Cc: "users@dpdk.org" <users@dpdk.org>
Subject: Re: [dpdk-users] Does vmxnet3 PMD supports LSC=1 ?
Date: Thu, 14 Jan 2021 18:58:23 +0000
Message-ID: <73D78AF1-8DEB-46A9-8A5A-E32AF48B2F30@vmware.com> (raw)
In-Reply-To: <9703725.R88ScZ5S0C@thomas>

Vmxnet3 driver supports lsc and your observation is a known behavior with vmxnet3 running with INTx/MSI interrupt mode.  Enabling or disabling lsc intr in this mode will enable/disable RX interrupts as well.  This is a device behavior and there is no known way to mask just lsc or rx interrupts as the mask is per vector.  To work around this, either disable interrupt or move to msi-x. Currently the upstream dpdk vmxnet3 driver does not support msix.  We have plans to upstream vmxnet3 msix support in the future.

Yong

-----Original Message-----
From: Thomas Monjalon <thomas@monjalon.net>
Date: Thursday, January 14, 2021 at 10:50 AM
To: madhukar mythri <madhukar.mythri@gmail.com>
Cc: "users@dpdk.org" <users@dpdk.org>, Yong Wang <yongwang@vmware.com>
Subject: Re: [dpdk-users] Does vmxnet3 PMD supports LSC=1 ?

    +Cc Yong Wang, maintainer of this PMD.

    14/01/2021 18:30, madhukar mythri:
    > Hi,
    > 
    > Does vmxnet3 PMD support LSC=1(i.e with interrupt mode) for link changes ?
    > 
    > When i enable LSC=1 the functionality works fine, but, when pumping traffic
    > i'm seeing increasing in CPU load on some cores which is running
    > "eal-intr-thread" epoll_wait() function for more CPU-time.
    > 
    > Actually, interrupt should come only when Link changes, but, we are seeing
    > interrupt for each incoming Rx-packet and also a lot of spurious interrupts.
    > =============
    > ~ # cat /proc/interrupts |grep igb
    >  58:    1254293          0          0          0   PCI-MSI 1572864-edge
    >  igb_uio
    >  59:    1278105          0          0          0   PCI-MSI 5767168-edge
    >  igb_uio
    > ~ # cat /proc/irq/58/spurious
    > count 98035
    > unhandled 0
    > last_unhandled 0 ms
    > ~ #
    > ==============
    > 
    > Does anyone tried LSC=1 in vmxnet3 PMD based apps and faced similar issues
    > ? If so, please let me know.
    > 
    > Tried with DPDK-18.11, DPDK-19.11 and DPDK-20.05.
    > 
    > Thanks,
    > Madhukar.




  reply	other threads:[~2021-01-14 18:58 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-01-14 17:30 madhukar mythri
2021-01-14 18:50 ` Thomas Monjalon
2021-01-14 18:58   ` Yong Wang [this message]
2021-01-15  6:09     ` madhukar mythri

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=73D78AF1-8DEB-46A9-8A5A-E32AF48B2F30@vmware.com \
    --to=yongwang@vmware.com \
    --cc=madhukar.mythri@gmail.com \
    --cc=thomas@monjalon.net \
    --cc=users@dpdk.org \
    /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 usage discussions

This inbox may be cloned and mirrored by anyone:

	git clone --mirror https://inbox.dpdk.org/users/0 users/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 users users/ https://inbox.dpdk.org/users \
		users@dpdk.org
	public-inbox-index users

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


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