Hi Keir,
You were right, I was missing the section __xen_guest.
So now when I create the domain I do not get any error message and I
do get a console.
So the 1st thing I am doing is just trying to write something on the
console with the hypervisor call "console_io". However, I do not see
anything on the console. In order to use the hypervisor calls, do I
have to first set up the trap tables, page tables and parse the shared
struct info etc ... ? Also, is it important where I load the image ?
Right now my lds script specifies "0xC0000000" as the starting
address. I also tried "0xC0000000 + 0x100000" which I saw in the linux
lds script.
My head.S file is very simple and I invoke the hypervisor calls by
issuing the interrupts directly:
#define ENTRY(X) .globl X ; X :
.section __xen_guest
.ascii"GUEST_OS=linux,GUEST_VER=2.6,XEN_VER=2.0,VIRT_BASE=0xC0000000"
.ascii ",LOADER=generic"
.ascii ",PT_MODE_WRITABLE"
.byte 0
.text
/*
* References to members of the new_cpu_data structure.
*/
.globl _start
_start:
cld
movl $18,%eax # __HYPERVISOR_console_io
movl $0, %ebx # arg1 = 0 for write
movl $hello_message_len,%ecx # arg2 = buffer length
movl $hello_message,%edx # arg3 = buffer virtual address
int $0x82
movl $6,%eax # __HYPERVISOR_sched_op
movl $2,%ebx # shutdown
int $0x82
hang: jmp hang # shouldn't get here
hello_message: .ascii "This is the hello world program\n"
hello_message_len = . - hello_message
Thanks
Richard
On Sat, 12 Feb 2005 18:39:07 -0800, Jacob Gorm Hansen <jacobg@xxxxxxx> wrote:
> Keir Fraser wrote:
> > xm gives the world's most unhelpful error messages. You may well find
> > a more useful message hidden away in /var/log/xend[-debug].log as
> > comes straight from the domain builder in libxc.
> >
> > My guess woul dbe that you do not have a '__xen_guest' section in your
> > Elf image. Look at the top of
> > linux-2.6.10-xen-sparse/arch/xen/i386/kernel/head.S for an example of
> > how to specify one.
> >
>
> The new vm-tools that were just announced will probably be easier to use
> for this kind of debugging than xn/xend. Also, I used to re-create the
> HYPERVISOR_console_write syscall, and configure Xen to allow unpriv
> domains to write to the serial console. I think the new
> HYPERVISOR_console_io syscall can be convinced to do the same thing.
>
> In my xen tarball at http://www.diku.dk/~jacobg/self-migration/ you can
> find the source of 'mstrap' which is very much like mini-os, but perhaps
> a little more up to date. The network driver is not working in Xen2, but
> the elf-image should at least load using the recent tools.
>
> Jacob
>
-------------------------------------------------------
SF email is sponsored by - The IT Product Guide
Read honest & candid reviews on hundreds of IT Products from real users.
Discover which products truly live up to the hype. Start reading now.
http://ads.osdn.com/?ad_id=6595&alloc_id=14396&op=click
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxxxx
https://lists.sourceforge.net/lists/listinfo/xen-devel
|