[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Xen-devel] [RFC PATCH V3 12/16] netback: multi-page ring support



>>> On 30.01.12 at 18:10, Wei Liu <wei.liu2@xxxxxxxxxx> wrote:
> On Mon, 2012-01-30 at 16:35 +0000, Jan Beulich wrote:
>> >>> On 30.01.12 at 15:45, Wei Liu <wei.liu2@xxxxxxxxxx> wrote:
>> > -int xenvif_map_frontend_rings(struct xenvif *vif,
>> > -                        grant_ref_t tx_ring_ref,
>> > -                        grant_ref_t rx_ring_ref)
>> > +int xenvif_map_frontend_rings(struct xen_comms *comms,
>> > +                        int domid,
>> > +                        unsigned long ring_ref[],
>> > +                        unsigned int  ring_ref_count)
>> >  {
>> > -  void *addr;
>> > -  struct xen_netif_tx_sring *txs;
>> > -  struct xen_netif_rx_sring *rxs;
>> > -
>> > -  int err = -ENOMEM;
>> > +  struct gnttab_map_grant_ref op[NETBK_MAX_RING_PAGES];
>> > +  unsigned int i;
>> > +  int err = 0;
>> >  
>> > -  err = xenbus_map_ring_valloc(xenvif_to_xenbus_device(vif),
>> > -                               tx_ring_ref, &addr);
>> 
>> Any reason why you don't just extend this function (in a prerequisite
>> patch) rather than open coding a common utility function (twice) here,
>> so that other backends (blkback!) can benefit later as well.
>> 
>> Jan
>> 
> 
> I'm mainly focusing on netback stuffs, so the code is slightly coupled
> with netback -- NETBK_MAX_RING_PAGES.
> 
> To extend xenbus_map_ring_valloc and make more generic, it requires
> setting a global maximum page number limits on rings, I think it will
> require further investigation and code refactor -- which I have no time
> to attend to at the moment. :-/

Why? You can simply pass in the number of pages, there's no need
for a global maximum.

Jan


_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.