WARNING - OLD ARCHIVES

This is an archived copy of the Xen.org mailing list, which we have preserved to ensure that existing links to archives are not broken. The live archive, which contains the latest emails, can be found at http://lists.xen.org/
   
 
 
Xen 
 
Home Products Support Community News
 
   
 

xen-ppc-devel

Re: [XenPPC] xencomm_create_mini() w/ user buffers

On Thu, 2006-08-10 at 13:51 -0400, Jimi Xenidis wrote:
> On Aug 10, 2006, at 1:45 PM, Hollis Blanchard wrote:
> 
> > On Wed, 2006-08-09 at 23:02 +0000, Xen patchbot-linux-ppc-2.6 wrote:
> >> -       rc = xencomm_create(arg, argsize, &desc, GFP_KERNEL);
> >> +       if (!slab) {
> >> +               slab = slab_is_available();
> >> +       }
> >> +       if (slab)
> >> +               rc = xencomm_create(arg, argsize, &desc, GFP_KERNEL);
> >> +       else
> >> +               rc = xencomm_create_mini(xc_area, XENCOMM_MINI_AREA,
> >> +                                        arg, argsize, &desc);
> >
> > Why bother? If you have to use _mini() once, why not just use it  
> > all the
> > time?
> 
> Because _mini() is for kernel space only, and this routine services  
> user-level pointers as well, I did not think that changing _mini()  
> was worth it.

Would xencomm_create_mini() work just as well using __vaddr_to_paddr? It
looks like we could remove __kern_paddr entirely.

> Actually, instead of slab_is_available() we could have use something  
> like "have started init"() but I know of no such function.

The real question is "can we call get_free_page()?" Having started init
seems as coincidentally related to that as slab_is_available()...

-- 
Hollis Blanchard
IBM Linux Technology Center


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