netdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Pankaj Thakkar <pthakkar@vmware.com>
To: Avi Kivity <avi@redhat.com>
Cc: "linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
	"netdev@vger.kernel.org" <netdev@vger.kernel.org>,
	"virtualization@lists.linux-foundation.org"
	<virtualization@lists.linux-foundation.org>,
	"pv-drivers@vmware.com" <pv-drivers@vmware.com>,
	Shreyas Bhatewara <sbhatewara@vmware.com>
Subject: Re: RFC: Network Plugin Architecture (NPA) for vmxnet3
Date: Mon, 10 May 2010 13:46:43 -0700	[thread overview]
Message-ID: <20100510204643.GH25364@vmware.com> (raw)
In-Reply-To: <4BE284CE.7010808@redhat.com>

On Thu, May 06, 2010 at 01:58:54AM -0700, Avi Kivity wrote:
> > We don't pass the whole VF to the guest. Only the BAR which is responsible for
> > TX/RX/intr is mapped into guest space.
> 
> Does the SR/IOV spec guarantee that you will have such a separation?

No. This is a guideline which we provided to IHVs and would have to be enforced
through testing/certification.

> How can you unmap the VF without guest cooperation?  If you're executing 
> Plugin code, you can't yank anything out.

In our Kawela plugin we don't have any reads from the memory space at all.
Hence you can yank the VF anytime (the code loaded in the guest address space
will keep on executing). Even if there were reads we can map the memory
pages to a NULL page and return 0xffffffff so that the plugin can detect this
and return an error to the shell. Remember there are no control operations in
the plugin and the code is really small (about 1k lines compared to 5k lines in
the full VF driver).

> 
> Are plugins executed with preemption/interrupts disabled?

Depends on the model. Today the plugin code for checking the TX/RX rings runs
in the deferred napi context.

> What ISAs do those plugins support?

x86 and x64.

Thanks,

-pankaj


      reply	other threads:[~2010-05-10 20:46 UTC|newest]

Thread overview: 42+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-05-04 23:02 RFC: Network Plugin Architecture (NPA) for vmxnet3 Pankaj Thakkar
2010-05-05  0:05 ` Stephen Hemminger
2010-05-05  0:18   ` Pankaj Thakkar
2010-05-05  0:32     ` David Miller
2010-05-05  0:38       ` Pankaj Thakkar
2010-05-05  2:44     ` Stephen Hemminger
2010-05-05  0:58 ` Chris Wright
2010-05-05 19:00   ` Pankaj Thakkar
2010-05-05 17:23 ` Christoph Hellwig
2010-05-05 17:29   ` [Pv-drivers] " Dmitry Torokhov
2010-05-05 17:31     ` Christoph Hellwig
2010-05-05 17:35       ` Dmitry Torokhov
2010-05-05 17:39         ` Christoph Hellwig
2010-05-05 17:47           ` Pankaj Thakkar
2010-05-05 20:09             ` Arnd Bergmann
2010-05-05 20:36               ` Dmitry Torokhov
2010-05-05 21:53                 ` Arnd Bergmann
2010-05-05 22:05                   ` Shreyas Bhatewara
2010-05-06  2:03                     ` Scott Feldman
2010-05-06  7:25                       ` Shreyas Bhatewara
2010-05-06  7:25                       ` Shreyas Bhatewara
2010-05-06  8:19             ` Gleb Natapov
2010-05-06 18:04               ` Pankaj Thakkar
2010-05-06 20:19                 ` Christoph Hellwig
2010-05-06 20:17             ` Christoph Hellwig
2010-05-05 17:52           ` Stephen Hemminger
2010-05-06 20:21             ` Christoph Hellwig
2010-07-13  3:06               ` Shreyas Bhatewara
2010-07-13  5:16                 ` Stephen Hemminger
2010-07-14  0:31                 ` Stephen Hemminger
2010-07-14  9:49                 ` Greg KH
2010-07-14 17:18                   ` Pankaj Thakkar
2010-07-14 17:54                     ` David Miller
2010-07-14 18:03                       ` Jeremy Fitzhardinge
2010-07-14 20:20                     ` Greg KH
2010-07-14 17:19                   ` Shreyas Bhatewara
2010-07-14 20:42                   ` Shreyas Bhatewara
2010-07-14 21:06                     ` Greg KH
2010-05-05 17:59 ` Avi Kivity
2010-05-05 19:44   ` Pankaj Thakkar
2010-05-06  8:58     ` Avi Kivity
2010-05-10 20:46       ` Pankaj Thakkar [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=20100510204643.GH25364@vmware.com \
    --to=pthakkar@vmware.com \
    --cc=avi@redhat.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=netdev@vger.kernel.org \
    --cc=pv-drivers@vmware.com \
    --cc=sbhatewara@vmware.com \
    --cc=virtualization@lists.linux-foundation.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
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).