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

Re: [Xen-devel] [PATCH v4 2/2] xen/arm: support gzip compressed kernels



Hi Stefano,

On 03/09/15 18:54, Stefano Stabellini wrote:
> Free the memory used for the compressed kernel and update the relative
> mod->start and mod->size parameters with the uncompressed ones.
> 
> Signed-off-by: Stefano Stabellini <stefano.stabellini@xxxxxxxxxxxxx>
> CC: julien.grall@xxxxxxxxxx
> CC: ian.campbell@xxxxxxxxxx

With the 2 comments coding style changes, see below:

Reviewed-by: Julien Grall <julien.grall@xxxxxxxxxx>

[...]

> +static __init int kernel_decompress(struct kernel_info *info,
> +                             paddr_t *addr, paddr_t *size)
> +{

[...]

> +    end = output + (1 << (kernel_order_out + PAGE_SHIFT));
> +    /* Need to free pages after output_size here because they won't be
> +     * freed by discard_initial_modules */

Multi-line comment on Xen should be:

/*
 * Need ...
 * freed ...
 */

> +    output += (output_size + PAGE_SIZE - 1) & PAGE_MASK;
> +    for ( ; output < end; output += PAGE_SIZE )
> +        free_domheap_page(virt_to_page(output));
> +
> +    return 0;
> +}
> +
>  #ifdef CONFIG_ARM_64
>  /*
>   * Check if the image is a 64-bit Image.
> @@ -463,6 +520,20 @@ int kernel_probe(struct kernel_info *info)
>          printk("Loading ramdisk from boot module @ %"PRIpaddr"\n",
>                 info->initrd_bootmodule->start);
>  
> +    /* if it is a gzip'ed image, 32bit or 64bit, uncompress it */
> +    rc = kernel_decompress(info, &start, &size);
> +    if (rc < 0 && rc != -EINVAL)
> +        return rc;
> +    else if (!rc)
> +    {
> +        /* Free the original kernel, update the pointers to the
> +         * decompressed kernel */

Ditto

> +        dt_unreserved_regions(mod->start, mod->start + mod->size,
> +                              init_domheap_pages, 0);
> +        mod->start = start;
> +        mod->size = size;
> +    }
> +
>  #ifdef CONFIG_ARM_64
>      rc = kernel_zimage64_probe(info, start, size);
>      if (rc < 0)

Regards,

-- 
Julien Grall

_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
http://lists.xen.org/xen-devel


 


Rackspace

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