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] Custom Guest OS not booting

To: xen-devel@xxxxxxxxxxxxxxxxxxx
Subject: [Xen-devel] Custom Guest OS not booting
From: "ivan" <ivan@xxxxxxxxxxxxx>
Date: Sun, 2 Oct 2005 19:14:07 +0100
Delivery-date: Sun, 02 Oct 2005 18:11:26 +0000
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/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>
Sender: xen-devel-bounces@xxxxxxxxxxxxxxxxxxx
User-agent: Mutt/1.5.9i
Hi,
Im trying to get a grip on developing with xen and I'm trying to create my own
guest os. The OS is very simple, it prints out a message and then exits.
Source listing below.
When I try to boot this image with xm create -c hello (hello just points
kernel to ivanos) one of two things happen. 

1)
It prints:
Using config file "hello".
Started domain IvanOS, console on port 9627
************ REMOTE CONSOLE: CTRL-] TO QUIT ********

I press return twice and it prints
************ REMOTE CONSOLE EXITED *****************

2)
it prints:
Using config file "hello".
Started domain IvanOS, console on port 9628
************ REMOTE CONSOLE: CTRL-] TO QUIT ********

************ REMOTE CONSOLE EXITED *****************
(104, 'Connection reset by peer')
Error: Error connecting to xend, is xend running?

xend is running. in both cases xend.log shows 
--SNIP--
[2005-10-02 19:10:32 xend] INFO (XendRoot:112) EVENT> xend.console.create [13,
28, 9628]
[2005-10-02 19:10:32 xend] DEBUG (blkif:155) Connecting blkif
<BlkifBackendInterface 28 0>
[2005-10-02 19:10:32 xend] INFO (XendRoot:112) EVENT> xend.domain.create
['IvanOS', '28']
[2005-10-02 19:10:32 xend] INFO (XendRoot:112) EVENT> xend.domain.unpause
['IvanOS', '28']
[2005-10-02 19:10:32 xend] DEBUG (XendDomain:244) XendDomain>reap> domain died
name=IvanOS id=28
[2005-10-02 19:10:32 xend] INFO (XendDomain:564) Destroying domain:
name=IvanOS
[2005-10-02 19:10:32 xend] DEBUG (XendDomainInfo:665) Destroying vifs for
domain 28
--END SNIP--

If someone could point out where im going wrong it would be very much
appreciated. Is there any way to get a more detailed trace of what xen is
doing?

Best regards
Ivan Kelly

--SNIP go.S--
.section __xen_guest
        .ascii "GUEST_OS=ivanos,GUEST_VER=2.0,XEN_VER=2.0,LOADER=generic"
        .byte 0

        .text   
.globl start

start:
        cld
        movl $18,%eax
        movl $0,%ebx
        movl $hello_len,%ecx
        movl $ivanhello,%edx
        int $0x82

        movl $6,%eax
        movl $2,%ebx
        movl $0,%ecx
        int  $0x82

hang:   jmp hang


ivanhello:      .ascii "Welcome to Ivan Os. Have fun!\n"
        hello_len = . - ivanhello
--END SNIP--

--SNIP Makefile--
CC := gcc
LD := ld

# Linker should relocate monitor to this address
MONITOR_BASE := 0xE0100000

# NB. '-Wcast-qual' is nasty, so I omitted it.
CFLAGS := -fno-builtin -O3 -Wall -I. -Wredundant-decls
CFLAGS += -Wstrict-prototypes -Wnested-externs -Wpointer-arith -Winline -ansi

OBJS := 
TARGET := ivanos

default: $(TARGET)

$(TARGET): go.o $(OBJS)
        $(LD) -N -Txen.lds go.o $(OBJS) -o $@.elf
        objcopy -R .note -R .comment $@.elf $@
        gzip -f -9 -c $@ >$@.gz

clean:
        find . -type f -name '*.o' | xargs rm -f
        rm -f *.o *~ core $(TARGET).elf $(TARGET).raw $(TARGET) $(TARGET).gz
        find . -type l | xargs rm -f

%.o: %.c $(HDRS) Makefile
        $(CC) $(CFLAGS) -c $< -o $@

%.o: %.S $(HDRS) Makefile
        $(CC) $(CFLAGS) -D__ASSEMBLY__ -c $< -o $@
--END SNIP--

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

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