lkml.org 
[lkml]   [2013]   [Nov]   [21]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH 4/6] kexec: A new system call, kexec_file_load, for in kernel kexec
On Wed, Nov 20, 2013 at 12:50:49PM -0500, Vivek Goyal wrote:
> This patch implements the in kernel kexec functionality. It implements a
> new system call kexec_file_load. I think parameter list of this system
> call will change as I have not done the kernel image signature handling
> yet. I have been told that I might have to pass the detached signature
> and size as part of system call.

This could be done as we do with modules, and just tack the signature
onto the end of the 'blob' of the image. That way we could use the same
tool to sign the binary as we do for modules, and save the need for
extra parameters in the syscall.

> +/*
> + * Free up tempory buffers allocated which are not needed after image has
> + * been loaded.
> + *
> + * Free up memory used by kernel, initrd, and comand line. This is temporary
> + * memory allocation which is not needed any more after these buffers have
> + * been loaded into separate segments and have been copied elsewhere
> + */
> +static void kimage_file_post_load_cleanup(struct kimage *image)
> +{
> + if (image->kernel_buf) {
> + vfree(image->kernel_buf);
> + image->kernel_buf = NULL;
> + }
> +
> + if (image->initrd_buf) {
> + vfree(image->initrd_buf);
> + image->initrd_buf = NULL;
> + }
> +
> + if (image->cmdline_buf) {
> + vfree(image->cmdline_buf);
> + image->cmdline_buf = NULL;
> + }

No need to check the buffer before calling vfree(), it can handle NULL
just fine.

thanks,

greg k-h


\
 
 \ /
  Last update: 2013-11-21 20:41    [W:0.392 / U:0.040 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site