All of lore.kernel.org
 help / color / mirror / Atom feed
* x86_64 platform : addresses type
@ 2006-06-29 13:30 PUCCETTI Armand
  0 siblings, 0 replies; 3+ messages in thread
From: PUCCETTI Armand @ 2006-06-29 13:30 UTC (permalink / raw)
  To: xen-devel


Several addresses are actually on 32 bits, such as in

typedef struct {
    u32 flags;
    u32 mem_lower;
    u32 mem_upper;
    u32 boot_device;
    u32 cmdline;
    u32 mods_count;
    u32 mods_addr;
    union {
        aout_symbol_table_t aout_sym;
        elf_section_header_table_t elf_sec;
    } u;
    u32 mmap_length;
    u32 mmap_addr;
} multiboot_info_t


However, on x86_64 using gcc, addresses as well as unsigned long are 64 
bits long.

It seems that luckily mmap_addr is below 2*32-1, making the u32 type 
acceptable
so far (for instance in function __start_xen, where the memory map is 
turned into
another structure) but what would it cost to change it into u64 ?
After all, the multiboot specification (page 18) has 'unsigned long' 
instead of u32 here.

^ permalink raw reply	[flat|nested] 3+ messages in thread

* x86_64 platform : addresses type
@ 2006-07-04 10:27 PUCCETTI Armand
  2006-07-04 10:53 ` Keir Fraser
  0 siblings, 1 reply; 3+ messages in thread
From: PUCCETTI Armand @ 2006-07-04 10:27 UTC (permalink / raw)
  To: xen-devel

[-- Attachment #1: Type: text/html, Size: 1383 bytes --]

[-- Attachment #2: Type: text/plain, Size: 138 bytes --]

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

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: x86_64 platform : addresses type
  2006-07-04 10:27 x86_64 platform : addresses type PUCCETTI Armand
@ 2006-07-04 10:53 ` Keir Fraser
  0 siblings, 0 replies; 3+ messages in thread
From: Keir Fraser @ 2006-07-04 10:53 UTC (permalink / raw)
  To: PUCCETTI Armand; +Cc: xen-devel


>
>  However, on x86_64 using gcc, addresses as well as unsigned long are 
> 64 bits long.
>
>  It seems that luckily mmap_addr is below 2*32-1, making the u32 type 
> acceptable
>  so far (for instance in function __start_xen, where the memory map is 
> turned into
>  another structure) but what would it cost to change it into u64 ?
>  After all, the multiboot specification (page 18) has 'unsigned long' 
> instead of u32 here.

That info will never be placed above 4GB, or the info would not be 
available to non-pae non-x86/64 OSes.

  -- Keir

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2006-07-04 10:53 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2006-07-04 10:27 x86_64 platform : addresses type PUCCETTI Armand
2006-07-04 10:53 ` Keir Fraser
  -- strict thread matches above, loose matches on Subject: below --
2006-06-29 13:30 PUCCETTI Armand

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.