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 16/21] Xen-paravirt: Add code into head.S to hand

To: Jeremy Fitzhardinge <jeremy@xxxxxxxx>
Subject: [Xen-devel] Re: [patch 16/21] Xen-paravirt: Add code into head.S to handle being booted by Xen
From: ebiederm@xxxxxxxxxxxx (Eric W. Biederman)
Date: Wed, 14 Feb 2007 13:10:42 -0700
Cc: Andrew Morton <akpm@xxxxxxxx>, Zachary Amsden <zach@xxxxxxxxxx>, xen-devel@xxxxxxxxxxxxxxxxxxx, virtualization@xxxxxxxxxxxxxx, Ian Campbell <Ian.Campbell@xxxxxxxxxxxxx>, linux-kernel@xxxxxxxxxxxxxxx, Chris Wright <chrisw@xxxxxxxxxxxx>, Andi Kleen <ak@xxxxxx>
Delivery-date: Thu, 15 Feb 2007 01:38:42 -0800
Envelope-to: www-data@xxxxxxxxxxxxxxxxxx
In-reply-to: <45D35ABE.1050504@xxxxxxxx> (Jeremy Fitzhardinge's message of "Wed, 14 Feb 2007 10:53:50 -0800")
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/cgi-bin/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=unsubscribe>
References: <20070213221729.772002682@xxxxxxxx> <20070213221830.707197267@xxxxxxxx> <20070213235424.GA1908@xxxxxx> <45D35ABE.1050504@xxxxxxxx>
Sender: xen-devel-bounces@xxxxxxxxxxxxxxxxxxx
User-agent: Gnus/5.110006 (No Gnus v0.6) Emacs/21.4 (gnu/linux)
Jeremy Fitzhardinge <jeremy@xxxxxxxx> writes:

> Andi Kleen wrote:
>>> +#ifdef CONFIG_XEN
>>> +#include "../xen/xen-head.S"
>>> +#endif
>>>     
>>
>> Can this really not be linked separately? 
>
> I did a patch to do this (attached).  In principle it should be pretty
> simple, but I think I'm running into toolchain issues.  If I link
> xen-head.S separately (with appropriate headers added), it compiles OK
> and contains the right notes, but they don't appear in the final vmlinux
> properly.  The note segment and section are there, but no tools will
> parse them as notes:
>
> : ezr:pts/1; readelf -n vmlinux 
> : ezr:pts/1; ../../unstable/tools/xcutils/readnotes vmlinux 
> : ezr:pts/1; readelf -l vmlinux 
>
> Elf file type is EXEC (Executable file)
> Entry point 0x2e1f70
> There are 3 program headers, starting at offset 52
>
> Program Headers:
>   Type           Offset   VirtAddr   PhysAddr   FileSiz MemSiz  Flg Align
>   LOAD           0x001000 0xc0100000 0x00100000 0x2a8920 0x2a8920 R E 0x1000
>   LOAD           0x2aa000 0xc03a9000 0x003a9000 0x5f085 0xaf000 RWE 0x1000
>   NOTE           0x26d2910 0x00239010 0x00239010 0x000e8 0x00000 R   0x4
>
>  Section to Segment mapping:
>   Segment Sections...
>    00 .text .text.head __ex_table .rodata .pci_fixup __ksymtab __ksymtab_gpl
> __kcrctab __kcrctab_gpl __ksymtab_strings __param __bug_table
>    01 .data .paravirtprobe .data_nosave .data.page_aligned
> .data.cacheline_aligned .data.read_mostly .data.init_task .init.text 
> .init.data
> .init.setup .initcall.init .con_initcall.init .altinstructions
> .altinstr_replacement .parainstructions .exit.text .init.ramfs .bss
>    02     .notes 
> : ezr:pts/1; objdump -j .notes -s vmlinux 
>
> vmlinux:     file format elf32-i386
>
> Contents of section .notes:
>  239010 04000000 06000000 06000000 58656e00  ............Xen.
>  239020 6c696e75 78000000 04000000 04000000  linux...........
>  239030 07000000 58656e00 322e3600 04000000  ....Xen.2.6.....
>  239040 08000000 05000000 58656e00 78656e2d  ........Xen.xen-
>  239050 332e3000 04000000 04000000 03000000  3.0.............
>  239060 58656e00 000000c0 04000000 04000000  Xen.............
>  239070 01000000 58656e00 c80710c0 04000000  ....Xen.........
>  239080 04000000 02000000 58656e00 00b040c0  ........Xen...@.
>  239090 04000000 2a000000 0a000000 58656e00  ....*.......Xen.
>  2390a0 21777269 7461626c 655f7061 67655f74  !writable_page_t
>  2390b0 61626c65 737c7061 655f7067 6469725f  ables|pae_pgdir_
>  2390c0 61626f76 655f3467 62000000 04000000  above_4gb.......
>  2390d0 04000000 09000000 58656e00 79657300  ........Xen.yes.
>  2390e0 04000000 08000000 08000000 58656e00  ............Xen.
>  2390f0 67656e65 72696300                    generic.        
>
>
> I can't see what the problem is here, but it looks like a toolchain
> problem to me (I'm using binutils-2.17.50.0.6-2.fc6).

Well I did a little by hand parsing and the not I parsed looked ok.

How does the output differ from a what you get when xen-head.S is
included?

Eric

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

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