All of lore.kernel.org
 help / color / mirror / Atom feed
From: Wei Liu <wei.liu2@citrix.com>
To: Joao Martins <Joao.Martins@neclab.eu>
Cc: Wei Liu <wei.liu2@citrix.com>,
	"xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
	"netdev@vger.kernel.org" <netdev@vger.kernel.org>,
	"ian.campbell@citrix.com" <ian.campbell@citrix.com>,
	"david.vrabel@citrix.com" <david.vrabel@citrix.com>,
	"boris.ostrovsky@oracle.com" <boris.ostrovsky@oracle.com>,
	"konrad.wilk@oracle.com" <konrad.wilk@oracle.com>
Subject: Re: [RFC PATCH 06/13] xen-netback: copy buffer on xenvif_start_xmit()
Date: Tue, 2 Jun 2015 16:10:00 +0100	[thread overview]
Message-ID: <20150602151000.GR19403@zion.uk.xensource.com> (raw)
In-Reply-To: <915BCC85-25D1-4960-A1BA-0C6459ABC953@neclab.eu>

On Fri, May 22, 2015 at 10:26:48AM +0000, Joao Martins wrote:
[...]
> >> 	return IRQ_HANDLED;
> >> }
> >> @@ -168,8 +169,12 @@ static int xenvif_start_xmit(struct sk_buff *skb, struct net_device *dev)
> >> 	cb = XENVIF_RX_CB(skb);
> >> 	cb->expires = jiffies + vif->drain_timeout;
> >> 
> >> -	xenvif_rx_queue_tail(queue, skb);
> >> -	xenvif_kick_thread(queue);
> >> +	if (!queue->vif->persistent_grants) {
> >> +		xenvif_rx_queue_tail(queue, skb);
> >> +		xenvif_kick_thread(queue);
> >> +	} else if (xenvif_rx_map(queue, skb)) {
> >> +		return NETDEV_TX_BUSY;
> >> +	}
> >> 
> > 
> > We now have two different functions for guest RX, one is xenvif_rx_map,
> > the other is xenvif_rx_action. They look very similar. Can we only have
> > one?
> I think I can merge this into xenvif_rx_action, and I notice that the stall
> detection its missing. I will also add that.
> Perhaps I could also disable the RX kthread, since this doesn't get used with
> persistent grants?
> 

Disabling that kthread is fine. But we do need to make sure we can do
the same things in start_xmit as we are in kthread. I.e. what context
does start_xmit run in and what are the restrictions.

Wei.

  parent reply	other threads:[~2015-06-02 15:12 UTC|newest]

Thread overview: 98+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-05-12 17:18 [RFC PATCH 00/13] Persistent grant maps for xen net drivers Joao Martins
2015-05-12 17:18 ` Joao Martins
2015-05-12 17:18 ` [RFC PATCH 01/13] xen-netback: add persistent grant tree ops Joao Martins
2015-05-12 17:18   ` Joao Martins
2015-05-12 17:18 ` [RFC PATCH 02/13] xen-netback: xenbus feature persistent support Joao Martins
2015-05-12 17:18   ` Joao Martins
2015-05-19 15:19   ` Wei Liu
2015-05-22 10:24     ` Joao Martins
2015-05-22 10:24     ` Joao Martins
2015-05-19 15:19   ` Wei Liu
2015-05-12 17:18 ` [RFC PATCH 03/13] xen-netback: implement TX persistent grants Joao Martins
2015-05-12 17:18   ` Joao Martins
2015-05-19 15:23   ` Wei Liu
2015-05-22 10:24     ` Joao Martins
2015-05-22 10:24     ` Joao Martins
2015-06-02 14:53       ` Wei Liu
2015-06-02 14:53       ` Wei Liu
2015-06-03 17:07         ` Joao Martins
2015-06-07 12:04           ` Wei Liu
2015-06-07 12:04           ` Wei Liu
2015-06-03 17:07         ` Joao Martins
2015-05-19 15:23   ` Wei Liu
2015-05-12 17:18 ` [RFC PATCH 04/13] xen-netback: implement RX " Joao Martins
2015-05-12 17:18   ` Joao Martins
2015-05-19 15:32   ` Wei Liu
2015-05-19 15:32   ` Wei Liu
2015-05-22 10:25     ` Joao Martins
2015-05-22 10:25     ` Joao Martins
2015-06-02 15:07       ` Wei Liu
2015-06-03 17:08         ` Joao Martins
2015-06-03 17:08         ` Joao Martins
2015-06-02 15:07       ` Wei Liu
2015-05-12 17:18 ` [RFC PATCH 05/13] xen-netback: refactor xenvif_rx_action Joao Martins
2015-05-12 17:18   ` Joao Martins
2015-05-19 15:32   ` Wei Liu
2015-05-19 15:32   ` Wei Liu
2015-05-12 17:18 ` [RFC PATCH 06/13] xen-netback: copy buffer on xenvif_start_xmit() Joao Martins
2015-05-12 17:18   ` Joao Martins
2015-05-19 15:35   ` Wei Liu
2015-05-22 10:26     ` Joao Martins
2015-05-22 10:26     ` Joao Martins
2015-06-02 15:10       ` Wei Liu
2015-06-02 15:10       ` Wei Liu [this message]
2015-05-19 15:35   ` Wei Liu
2015-05-12 17:18 ` [RFC PATCH 07/13] xen-netback: add persistent tree counters to debugfs Joao Martins
2015-05-12 17:18   ` Joao Martins
2015-05-19 15:36   ` Wei Liu
2015-05-19 15:36   ` Wei Liu
2015-05-12 17:18 ` [RFC PATCH 08/13] xen-netback: clone skb if skb->xmit_more is set Joao Martins
2015-05-12 17:18   ` Joao Martins
2015-05-19 15:36   ` Wei Liu
2015-05-19 15:36   ` Wei Liu
2015-05-22 17:14     ` Joao Martins
2015-05-22 17:14     ` Joao Martins
2015-05-12 17:18 ` [RFC PATCH 09/13] xen-netfront: move grant_{ref, page} to struct grant Joao Martins
2015-05-12 17:18   ` Joao Martins
2015-05-18 15:44   ` David Vrabel
2015-05-18 15:44   ` [Xen-devel] " David Vrabel
2015-05-19 10:19     ` Joao Martins
2015-05-19 10:19     ` Joao Martins
2015-05-12 17:18 ` [RFC PATCH 10/13] xen-netfront: refactor claim/release grant Joao Martins
2015-05-12 17:18   ` Joao Martins
2015-05-18 15:48   ` David Vrabel
2015-05-18 15:48   ` [Xen-devel] " David Vrabel
2015-05-19 10:19     ` Joao Martins
2015-05-19 10:19     ` [Xen-devel] " Joao Martins
2015-05-12 17:18 ` [RFC PATCH 11/13] xen-netfront: feature-persistent xenbus support Joao Martins
2015-05-12 17:18   ` Joao Martins
2015-05-18 15:51   ` [Xen-devel] " David Vrabel
2015-05-19 10:19     ` Joao Martins
2015-05-19 10:19     ` [Xen-devel] " Joao Martins
2015-05-18 15:51   ` David Vrabel
2015-05-12 17:18 ` [RFC PATCH 12/13] xen-netfront: implement TX persistent grants Joao Martins
2015-05-12 17:18   ` Joao Martins
2015-05-18 15:55   ` David Vrabel
2015-05-18 15:55   ` [Xen-devel] " David Vrabel
2015-05-19 10:20     ` Joao Martins
2015-05-19 10:20     ` [Xen-devel] " Joao Martins
2015-05-19 10:23       ` David Vrabel
2015-05-19 10:23       ` [Xen-devel] " David Vrabel
2015-05-12 17:18 ` [RFC PATCH 13/13] xen-netfront: implement RX " Joao Martins
2015-05-12 17:18   ` Joao Martins
2015-05-18 16:04   ` [Xen-devel] " David Vrabel
2015-05-19 10:22     ` Joao Martins
2015-05-19 10:22     ` Joao Martins
2015-05-18 16:04   ` David Vrabel
2015-05-13 10:50 ` [Xen-devel] [RFC PATCH 00/13] Persistent grant maps for xen net drivers David Vrabel
2015-05-13 13:01   ` Joao Martins
2015-05-13 13:01   ` [Xen-devel] " Joao Martins
2015-05-13 10:50 ` David Vrabel
2015-05-19 15:39 ` Wei Liu
2015-05-19 15:39 ` Wei Liu
2015-05-22 10:27   ` Joao Martins
2015-05-29  6:53     ` Yuzhou (C)
2015-05-29  6:53     ` [Xen-devel] " Yuzhou (C)
2015-05-29 14:51       ` Joao Martins
2015-05-29 14:51       ` Joao Martins
2015-05-22 10:27   ` Joao Martins

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=20150602151000.GR19403@zion.uk.xensource.com \
    --to=wei.liu2@citrix.com \
    --cc=Joao.Martins@neclab.eu \
    --cc=boris.ostrovsky@oracle.com \
    --cc=david.vrabel@citrix.com \
    --cc=ian.campbell@citrix.com \
    --cc=konrad.wilk@oracle.com \
    --cc=netdev@vger.kernel.org \
    --cc=xen-devel@lists.xenproject.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.