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] about __XEN_VIRT_START and 0x100000

To: xen-devel@xxxxxxxxxxxxxxxxxxx
Subject: [Xen-devel] about __XEN_VIRT_START and 0x100000
From: Lin-Bao Zhang <2004.zhang@xxxxxxxxx>
Date: Fri, 19 Aug 2011 15:27:05 +0800
Delivery-date: Fri, 19 Aug 2011 00:28:10 -0700
Dkim-signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=mime-version:date:message-id:subject:from:to:content-type; bh=kVxwbYbd+UQDW1Ha1z/eQsQuAtWb3gmuiAoXQnNDkT8=; b=hJMQyjv5xoOdG5yiSUi6Q6RcP0IpTChqiUbYTbiE93k8SqSUtQPdzwwDope+XM2tBt Am+e7S0bQrFIPPE9tUvToOODNwzpVhxklNwO66nGHntyDgefeThBgRDmoLG5RdHw9/vm obADRlnXfv0+Rqvx3CEBainAYv3Sk8YilDjr8=
Envelope-to: www-data@xxxxxxxxxxxxxxxxxxx
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>
Sender: xen-devel-bounces@xxxxxxxxxxxxxxxxxxx
I am a little confused.
in RHEL5.7 xen version , in /boot/ ,there are some files about xen:

.vmlinuz-2.6.18-268.el5xen.hmac   config-2.6.18-268.el5xen      vmlinuz-2.6.18-268.el5xen  xen.gz-2.6.18-268.el5
System.map-2.6.18-268.el5xen    symvers-2.6.18-268.el5xen.gz  xen-syms-2.6.18-268.el5

two important files:xen-syms-2.6.18-268.e15 and xen.gz-2.6.18-268.e15
a) I unzip xen.gz-2.6.18-268.e15 to get xen-2.6.18-268.e15 

I know in grub.conf , we will use this file (xen.gz link to this file)

## readelf -h xen-2.6.18-268.e15
ELF Header:
 Magic:   7f 45 4c 46 01 01 01 00 00 00 00 00 00 00 00 00
 Class:                             ELF32          //why ELF32 ,it should be ELF64
 Data:                              2's complement, little endian
 Version:                           1 (current)
 OS/ABI:                            UNIX - System V
 ABI Version:                       0
 Type:                              EXEC (Executable file)
 Machine:                           Intel 80386
 Version:                           0x1
 Entry point address:               0x100000                //as document , xen-kernel will be load physically address 0x100000 
 Start of program headers:          52 (bytes into file)
 Start of section headers:          980552 (bytes into file)
 Flags:                             0x0
 Size of this header:               52 (bytes)
 Size of program headers:           32 (bytes)
 Number of program headers:         1
 Size of section headers:           40 (bytes)
 Number of section headers:         3
 Section header string table index: 2

b)## readelf -h xen-syms-2.6.18-268.el5
ELF Header:
  Magic:   7f 45 4c 46 02 01 01 00 00 00 00 00 00 00 00 00 
  Class:                             ELF64         // this is ELF64 .above is ELF32
  Data:                              2's complement, little endian
  Version:                           1 (current)
  OS/ABI:                            UNIX - System V
  ABI Version:                       0
  Type:                              EXEC (Executable file)
  Machine:                           Advanced Micro Devices X86-64
  Version:                           0x1
  Entry point address:               0xffff828c80100000             //why here is virtual address , and above 0x100000 is physical address ?
  Start of program headers:          64 (bytes into file)
  Start of section headers:          984784 (bytes into file)
  Flags:                             0x0
  Size of this header:               64 (bytes)
  Size of program headers:           56 (bytes)
  Number of program headers:         1
  Size of section headers:           64 (bytes)
  Number of section headers:         22
  Section header string table index: 21

---------------------------------
my question is that ,  what is xen-syms-2.6.18-268.el5(readelf result is virtual address)  used for ?  it seems that useless. grub.conf seems don't need it.

in xen/arch/x86/boot/head.S:

#undef bootsym_phys
#define sym_phys(sym)     ((sym) - __XEN_VIRT_START
I know all symbols address should be virtual address , its physical address should be minus __XEN_VIRT_START  
if want to check symbols , 
##   objdump -t xen-syms-2.6.18-268.el5 

xen-syms-2.6.18-268.el5:     file format elf64-x86-64

SYMBOL TABLE:
no symbols


thanks very much for your comments!

-Bob Zhang


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