All of lore.kernel.org
 help / color / mirror / Atom feed
From: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>
To: Wei Liu <wei.liu2@citrix.com>
Cc: boris.ostrovsky@oracle.com, xen-devel@lists.xen.org,
	Ian Campbell <Ian.Campbell@citrix.com>,
	david.vrabel@citrix.com
Subject: Re: [PATCH] xenbus_client: extend interface to suppurt multi-page ring
Date: Tue, 27 Aug 2013 10:12:07 -0400	[thread overview]
Message-ID: <20130827141207.GE3725@phenom.dumpdata.com> (raw)
In-Reply-To: <20130827082542.GA7609@zion.uk.xensource.com>

On Tue, Aug 27, 2013 at 09:25:42AM +0100, Wei Liu wrote:
> On Tue, Aug 27, 2013 at 09:23:24AM +0100, Ian Campbell wrote:
> > On Fri, 2013-08-23 at 23:27 +0100, Wei Liu wrote:
> > > Originally Xen PV drivers only use single-page ring to pass along
> > > information. This might limit the throughput between frontend and
> > > backend.
> > > 
> > > The patch extends Xenbus driver to support multi-page ring, which in
> > > general should improve throughput if ring is the bottleneck. Changes to
> > > various frontend / backend to adapt to the new interface are also
> > > included.
> > 
> > The changes to the front/backends here simply adapt to the new interface
> > but don't actually make use of it, right?
> > 
> 
> No, they don't.

I think the scsi front or usb front (in a different branch) did use it.
That is why I remember seeing something similar to this.

Either way, I am comfortable putting this in - will make it easier for
folks to experiement with enlarging the ring.
> 
> > > @@ -196,15 +200,18 @@ int xenbus_watch_pathfmt(struct xenbus_device *dev, struct xenbus_watch *watch,
> > >  			 const char *pathfmt, ...);
> > >  
> > >  int xenbus_switch_state(struct xenbus_device *dev, enum xenbus_state new_state);
> > > -int xenbus_grant_ring(struct xenbus_device *dev, unsigned long ring_mfn);
> > > -int xenbus_map_ring_valloc(struct xenbus_device *dev,
> > > -			   int gnt_ref, void **vaddr);
> > > -int xenbus_map_ring(struct xenbus_device *dev, int gnt_ref,
> > > -			   grant_handle_t *handle, void *vaddr);
> > > +int xenbus_grant_ring(struct xenbus_device *dev, void *vaddr,
> > > +		      unsigned int nr_pages, grant_ref_t *grefs);
> > > +int xenbus_map_ring_valloc(struct xenbus_device *dev, grant_ref_t *gnt_refs,
> > > +			   unsigned int nr_grefs, void **vaddr);
> > 
> > In the definition nr_grefs is called grefs_order. From the usage I think
> > the definition and not this prototype is correct.
> > 
> 
> Good catch, thanks.
> 
> Wei.
> 
> > Ian.
> 
> _______________________________________________
> Xen-devel mailing list
> Xen-devel@lists.xen.org
> http://lists.xen.org/xen-devel

  reply	other threads:[~2013-08-27 14:12 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-08-23 22:27 [PATCH] xenbus_client: extend interface to suppurt multi-page ring Wei Liu
2013-08-27  8:23 ` Ian Campbell
2013-08-27  8:25   ` Wei Liu
2013-08-27 14:12     ` Konrad Rzeszutek Wilk [this message]
2013-08-27 14:17       ` Wei Liu
2013-08-27 14:26 ` David Vrabel
2013-08-27 14:42   ` Wei Liu

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=20130827141207.GE3725@phenom.dumpdata.com \
    --to=konrad.wilk@oracle.com \
    --cc=Ian.Campbell@citrix.com \
    --cc=boris.ostrovsky@oracle.com \
    --cc=david.vrabel@citrix.com \
    --cc=wei.liu2@citrix.com \
    --cc=xen-devel@lists.xen.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.