WARNING - OLD ARCHIVES

This is an archived copy of the Xen.org mailing list, which we have preserved to ensure that existing links to archives are not broken. The live archive, which contains the latest emails, can be found at http://lists.xen.org/
   
 
 
Xen 
 
Home Products Support Community News
 
   
 

xen-devel

[Xen-devel] Re: [PATCH V13 05/17] pc_memory_init: Move memory calculatio

To: anthony.perard@xxxxxxxxxx
Subject: [Xen-devel] Re: [PATCH V13 05/17] pc_memory_init: Move memory calculation to the caller.
From: Jan Kiszka <jan.kiszka@xxxxxxxxxxx>
Date: Mon, 18 Apr 2011 14:12:35 +0200
Cc: Stefano Stabellini <stefano.stabellini@xxxxxxxxxxxxx>, Xen Devel <xen-devel@xxxxxxxxxxxxxxxxxxx>, QEMU-devel <qemu-devel@xxxxxxxxxx>, Anthony Liguori <anthony@xxxxxxxxxxxxx>, Alexander Graf <agraf@xxxxxxx>
Delivery-date: Mon, 18 Apr 2011 05:13:43 -0700
Envelope-to: www-data@xxxxxxxxxxxxxxxxxxx
In-reply-to: <1303126637-31877-6-git-send-email-anthony.perard@xxxxxxxxxx>
List-help: <mailto:xen-devel-request@lists.xensource.com?subject=help>
List-id: Xen developer discussion <xen-devel.lists.xensource.com>
List-post: <mailto:xen-devel@lists.xensource.com>
List-subscribe: <http://lists.xensource.com/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=unsubscribe>
References: <1303126637-31877-1-git-send-email-anthony.perard@xxxxxxxxxx> <1303126637-31877-6-git-send-email-anthony.perard@xxxxxxxxxx>
Sender: xen-devel-bounces@xxxxxxxxxxxxxxxxxxx
User-agent: Mozilla/5.0 (X11; U; Linux i686 (x86_64); de; rv:1.8.1.12) Gecko/20080226 SUSE/2.0.0.12-1.1 Thunderbird/2.0.0.12 Mnenhy/0.7.5.666
On 2011-04-18 13:37, anthony.perard@xxxxxxxxxx wrote:
> From: Anthony PERARD <anthony.perard@xxxxxxxxxx>
> 
> This patch moves above_4g_mem_size and below_4g_mem_size calculation in
> the caller of pc_memory_init (pc_init1). And the prototype of
> pc_memory_init is changed because there is no need anymore to have
> variable pointer.
> 
> Signed-off-by: Anthony PERARD <anthony.perard@xxxxxxxxxx>
> ---
>  hw/pc.c      |   14 ++------------
>  hw/pc.h      |    4 ++--
>  hw/pc_piix.c |   11 +++++++++--
>  3 files changed, 13 insertions(+), 16 deletions(-)
> 
> diff --git a/hw/pc.c b/hw/pc.c
> index 6939c04..18b96cc 100644
> --- a/hw/pc.c
> +++ b/hw/pc.c
> @@ -961,25 +961,15 @@ void pc_memory_init(ram_addr_t ram_size,
>                      const char *kernel_filename,
>                      const char *kernel_cmdline,
>                      const char *initrd_filename,
> -                    ram_addr_t *below_4g_mem_size_p,
> -                    ram_addr_t *above_4g_mem_size_p)
> +                    ram_addr_t below_4g_mem_size,
> +                    ram_addr_t above_4g_mem_size)
>  {
>      char *filename;
>      int ret, linux_boot, i;
>      ram_addr_t ram_addr, bios_offset, option_rom_offset;
> -    ram_addr_t below_4g_mem_size, above_4g_mem_size = 0;
>      int bios_size, isa_bios_size;
>      void *fw_cfg;
>  
> -    if (ram_size >= 0xe0000000 ) {
> -        above_4g_mem_size = ram_size - 0xe0000000;
> -        below_4g_mem_size = 0xe0000000;
> -    } else {
> -        below_4g_mem_size = ram_size;
> -    }
> -    *above_4g_mem_size_p = above_4g_mem_size;
> -    *below_4g_mem_size_p = below_4g_mem_size;
> -

This obsoletes the ram_size parameter. Please drop it.

>      linux_boot = (kernel_filename != NULL);
>  
>      /* allocate RAM */
> diff --git a/hw/pc.h b/hw/pc.h
> index feb8a7a..35bb890 100644
> --- a/hw/pc.h
> +++ b/hw/pc.h
> @@ -133,8 +133,8 @@ void pc_memory_init(ram_addr_t ram_size,
>                      const char *kernel_filename,
>                      const char *kernel_cmdline,
>                      const char *initrd_filename,
> -                    ram_addr_t *below_4g_mem_size_p,
> -                    ram_addr_t *above_4g_mem_size_p);
> +                    ram_addr_t below_4g_mem_size,
> +                    ram_addr_t above_4g_mem_size);
>  qemu_irq *pc_allocate_cpu_irq(void);
>  void pc_vga_init(PCIBus *pci_bus);
>  void pc_basic_device_init(qemu_irq *isa_irq,
> diff --git a/hw/pc_piix.c b/hw/pc_piix.c
> index a85214b..e487c38 100644
> --- a/hw/pc_piix.c
> +++ b/hw/pc_piix.c
> @@ -72,7 +72,7 @@ static void pc_init1(ram_addr_t ram_size,
>                       int kvmclock_enabled)
>  {
>      int i;
> -    ram_addr_t below_4g_mem_size, above_4g_mem_size;
> +    ram_addr_t below_4g_mem_size, above_4g_mem_size = 0;
>      PCIBus *pci_bus;
>      PCII440FXState *i440fx_state;
>      int piix3_devfn = -1;
> @@ -92,9 +92,16 @@ static void pc_init1(ram_addr_t ram_size,
>          kvmclock_create();
>      }
>  
> +    if (ram_size >= 0xe0000000 ) {
> +        above_4g_mem_size = ram_size - 0xe0000000;
> +        below_4g_mem_size = 0xe0000000;
> +    } else {
> +        below_4g_mem_size = ram_size;

Let's initialize above_4g_mem_size here.

> +    }
> +
>      /* allocate ram and load rom/bios */
>      pc_memory_init(ram_size, kernel_filename, kernel_cmdline, 
> initrd_filename,
> -                   &below_4g_mem_size, &above_4g_mem_size);
> +                   below_4g_mem_size, above_4g_mem_size);
>  
>      cpu_irq = pc_allocate_cpu_irq();
>      i8259 = i8259_init(cpu_irq[0]);

Looks good otherwise.

Thanks,
Jan

-- 
Siemens AG, Corporate Technology, CT T DE IT 1
Corporate Competence Center Embedded Linux

_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel

<Prev in Thread] Current Thread [Next in Thread>