On Wed, 2008-01-09 at 20:14 -0500, Vivek Goyal wrote:
[...]
> >  
> > +static void alloc_page_tables(struct kimage *image)
> > +{
> 
> This is too generic a name. How about something like
> arch_alloc_kexec_page_tables()

OK, I will change it.

> > +   image->arch_kimage.pgd = (pgd_t *)get_zeroed_page(GFP_KERNEL);
> > +#ifdef CONFIG_X86_PAE
> > +   image->arch_kimage.pmd0 = (pmd_t *)get_zeroed_page(GFP_KERNEL);
> > +   image->arch_kimage.pmd1 = (pmd_t *)get_zeroed_page(GFP_KERNEL);
> > +#endif
> > +   image->arch_kimage.pte0 = (pte_t *)get_zeroed_page(GFP_KERNEL);
> > +   image->arch_kimage.pte1 = (pte_t *)get_zeroed_page(GFP_KERNEL);
> > +}
> > +
> > +static void free_page_tables(struct kimage *image)
> > +{
> 
> How about arch_free_kexec_page_tables()

OK, I will change it.

> > +   free_page((unsigned long)image->arch_kimage.pgd);
> > +#ifdef CONFIG_X86_PAE
> > +   free_page((unsigned long)image->arch_kimage.pmd0);
> > +   free_page((unsigned long)image->arch_kimage.pmd1);
> > +#endif
> > +   free_page((unsigned long)image->arch_kimage.pte0);
> > +   free_page((unsigned long)image->arch_kimage.pte1);
> > +}
> > +
> >  /*
> >   * A architecture hook called to validate the
> >   * proposed image and prepare the control pages
> > @@ -83,10 +97,21 @@ static void load_segments(void)
> >   * reboot code buffer to allow us to avoid allocations
> >   * later.
> >   *
> > - * Currently nothing.
> > + * - Allocate page tables
> >   */
> >  int machine_kexec_prepare(struct kimage *image)
> >  {
> > +   alloc_page_tables(image);
> > +   if (!image->arch_kimage.pgd ||
> > +#ifdef CONFIG_X86_PAE
> > +       !image->arch_kimage.pmd0 ||
> > +       !image->arch_kimage.pmd1 ||
> > +#endif
> > +       !image->arch_kimage.pte0 ||
> > +       !image->arch_kimage.pte1) {
> > +           free_page_tables(image);
> > +           return -ENOMEM;
> 
> I think this error handling can be done in alloc_page_tables() itself and
> following will look neater.

OK, I will change it.

Best Regards,
Huang Ying

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to