[PATCH 4/6] kexec: A new system call, kexec_file_load, for in kernel kexec
Baoquan He
bhe at redhat.com
Tue Dec 3 20:35:29 EST 2013
On 12/02/13 at 10:44am, Vivek Goyal wrote:
> On Fri, Nov 29, 2013 at 11:10:48AM +0800, Baoquan He wrote:
>
> [..]
> > > +void *arch_kexec_kernel_image_load(struct kimage *image, char *kernel,
> > > + unsigned long kernel_len, char *initrd,
> > > + unsigned long initrd_len, char *cmdline,
> > > + unsigned long cmdline_len)
> > > +{
> > > + int idx = image->file_handler_idx;
> > > +
> > > + if (idx < 0)
> > > + return ERR_PTR(-ENOEXEC);
> > > +
> > > + return kexec_file_type[idx].load(image, kernel, kernel_len, initrd,
> > > + initrd_len, cmdline, cmdline_len);
> > > +}
> > > +
> > > +int arch_image_file_post_load_cleanup(struct kimage *image)
> > > +{
> >
> > Hi Vivek,
> >
> > This function is defined as one of arch specific fucntion set, why don't
> > we name it in a unified prefix as others.
>
> I am using "arch_" prefix. What else to use?
I mean in this function series, other functions have name like
arch_kexec_kernel_image_xxx, why this function is lonely, and is named
as arch_kimage_xxx. And here what does the 'k' mean in "kimage", kexec
image or kernel image, I am confused.
>
> >
> > And name of the default dummy function in kernel/kexec.c is not consistent
> > with the arch specific one, so currently
> > arch_image_file_post_load_cleanup of x86 arch is not called. Please
> > consider wihch one need be changed.
>
> Good catch Bao. I should change arch_image_file_post_load_cleanup() to
> arch_kimage_file_post_load_cleanup(), otherwise it never gets called and
> memory leaks.
>
> Thanks
> Vivek
>
> _______________________________________________
> kexec mailing list
> kexec at lists.infradead.org
> http://lists.infradead.org/mailman/listinfo/kexec
More information about the kexec
mailing list