diff mbox

arm64: head: Fill image size

Message ID 1471316303-29751-1-git-send-email-van.freenix@gmail.com (mailing list archive)
State New, archived
Headers show

Commit Message

Peng Fan Aug. 16, 2016, 2:58 a.m. UTC
When booting xen from U-Boot, U-Boot will use the image size
info. Because this information is lacked in XEN image,U-Boot
assume the image size is 16MB to memmove, which will cost lots
time on simulation platform.

Signed-off-by: Peng Fan <van.freenix@gmail.com>
Cc: Stefano Stabellini <sstabellini@kernel.org>
Cc: Julien Grall <julien.grall@arm.com>
---
 xen/arch/arm/arm64/head.S | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Comments

Julien Grall Aug. 18, 2016, 4:02 p.m. UTC | #1
Hello Peng,

On 16/08/16 03:58, Peng Fan wrote:
> When booting xen from U-Boot, U-Boot will use the image size
> info. Because this information is lacked in XEN image,U-Boot
> assume the image size is 16MB to memmove, which will cost lots
> time on simulation platform.

The patch looks good to me, however I would prefer if you update all the 
header rather than updating only the field you care.

You can give a look to commit a2c1d73b94ed49f5fac12e95052d7b140783f800 
"arm64: Update the Image header" in Linux for more details.

Regards,

>
> Signed-off-by: Peng Fan <van.freenix@gmail.com>
> Cc: Stefano Stabellini <sstabellini@kernel.org>
> Cc: Julien Grall <julien.grall@arm.com>
> ---
>  xen/arch/arm/arm64/head.S | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/xen/arch/arm/arm64/head.S b/xen/arch/arm/arm64/head.S
> index 91e2817..9fade07 100644
> --- a/xen/arch/arm/arm64/head.S
> +++ b/xen/arch/arm/arm64/head.S
> @@ -115,7 +115,7 @@ efi_head:
>          add     x13, x18, #0x16
>          b       real_start           /* branch to kernel start */
>          .quad   0                    /* Image load offset from start of RAM */
> -        .quad   0                    /* reserved */
> +        .quad   _end - start         /* Effective size of Image, little-endian */
>          .quad   0                    /* reserved */
>          .quad   0                    /* reserved */
>          .quad   0                    /* reserved */
>
Peng Fan Aug. 19, 2016, 12:13 p.m. UTC | #2
Hi Julien,

On Thu, Aug 18, 2016 at 05:02:01PM +0100, Julien Grall wrote:
>Hello Peng,
>
>On 16/08/16 03:58, Peng Fan wrote:
>>When booting xen from U-Boot, U-Boot will use the image size
>>info. Because this information is lacked in XEN image,U-Boot
>>assume the image size is 16MB to memmove, which will cost lots
>>time on simulation platform.
>
>The patch looks good to me, however I would prefer if you update all the
>header rather than updating only the field you care.
>
>You can give a look to commit a2c1d73b94ed49f5fac12e95052d7b140783f800
>"arm64: Update the Image header" in Linux for more details.

Thanks for comments. Will do this in V2.

Thanks,
Peng.

>
>Regards,
>
>>
>>Signed-off-by: Peng Fan <van.freenix@gmail.com>
>>Cc: Stefano Stabellini <sstabellini@kernel.org>
>>Cc: Julien Grall <julien.grall@arm.com>
>>---
>> xen/arch/arm/arm64/head.S | 2 +-
>> 1 file changed, 1 insertion(+), 1 deletion(-)
>>
>>diff --git a/xen/arch/arm/arm64/head.S b/xen/arch/arm/arm64/head.S
>>index 91e2817..9fade07 100644
>>--- a/xen/arch/arm/arm64/head.S
>>+++ b/xen/arch/arm/arm64/head.S
>>@@ -115,7 +115,7 @@ efi_head:
>>         add     x13, x18, #0x16
>>         b       real_start           /* branch to kernel start */
>>         .quad   0                    /* Image load offset from start of RAM */
>>-        .quad   0                    /* reserved */
>>+        .quad   _end - start         /* Effective size of Image, little-endian */
>>         .quad   0                    /* reserved */
>>         .quad   0                    /* reserved */
>>         .quad   0                    /* reserved */
>>
>
>-- 
>Julien Grall
diff mbox

Patch

diff --git a/xen/arch/arm/arm64/head.S b/xen/arch/arm/arm64/head.S
index 91e2817..9fade07 100644
--- a/xen/arch/arm/arm64/head.S
+++ b/xen/arch/arm/arm64/head.S
@@ -115,7 +115,7 @@  efi_head:
         add     x13, x18, #0x16
         b       real_start           /* branch to kernel start */
         .quad   0                    /* Image load offset from start of RAM */
-        .quad   0                    /* reserved */
+        .quad   _end - start         /* Effective size of Image, little-endian */
         .quad   0                    /* reserved */
         .quad   0                    /* reserved */
         .quad   0                    /* reserved */