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-arm

RE: Re: [XenARM] android emulator

To: <sbuk.suh@xxxxxxxxxxx>, "'Michael R. Hines'" <michael@xxxxxxxxxxxx>
Subject: RE: Re: [XenARM] android emulator
From: Caz Yokoyama <cazyokoyama@xxxxxxxxx>
Date: Mon, 19 Oct 2009 17:45:45 -0700
Cc: xen-arm@xxxxxxxxxxxxxxxxxxx
Delivery-date: Mon, 19 Oct 2009 17:45:42 -0700
Dkim-signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:received:received:from:to:cc:references:subject :date:message-id:mime-version:content-type:content-transfer-encoding :x-mailer:in-reply-to:thread-index:x-mimeole; bh=2MyC2xPenWmGIthUKvT1laxNABfYt3bHhO3gnSjTqzo=; b=fbyCv+63kMVFi6EDQyY7mS73/E+NIYg6bMcfyivvIaYaxptRfdeYRy2EdsM4QPgpCi SWwvkCrgyHq+pp8BU7FE84sHHsRqVrhAsqsgoMpws9rTSRbTo7kt8QbT0fJb3bu9L8j6 C9H1S9SQrOYjeOhjQ2SX853Wx64tQgu6AV4hk=
Domainkey-signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=from:to:cc:references:subject:date:message-id:mime-version :content-type:content-transfer-encoding:x-mailer:in-reply-to :thread-index:x-mimeole; b=wVVvYqa9eTq+bDiXsvSiyiReGb+sgfe6vu26eePK9eR7gPpgXD6QaMCHyevSgP1Xv+ rq7f7xJJuLV61Bl4bgIC/AYJsErBq/XMoOctk2GOyfgRwvxPWcM8yJGFpv89ipObdUxI DHek4wqxIypdunjE/wxpHh/ckwjdogQ2BTbKE=
Envelope-to: www-data@xxxxxxxxxxxxxxxxxxx
In-reply-to: <25301081.72331255998261716.JavaMail.weblogic@epml12>
List-help: <mailto:xen-arm-request@lists.xensource.com?subject=help>
List-id: Xen ARM development <xen-arm.lists.xensource.com>
List-post: <mailto:xen-arm@lists.xensource.com>
List-subscribe: <http://lists.xensource.com/mailman/listinfo/xen-arm>, <mailto:xen-arm-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/mailman/listinfo/xen-arm>, <mailto:xen-arm-request@lists.xensource.com?subject=unsubscribe>
References: <25301081.72331255998261716.JavaMail.weblogic@epml12>
Sender: xen-arm-bounces@xxxxxxxxxxxxxxxxxxx
Thread-index: AcpRG6xK5YYIFqz6ROmp+j10tsMcGAAAdsnQ
Hello Sang-bum,
It is nice to hear from the person who is behind xen-arm. Do you have a plan
to add public read-only access to your 2.6.27 source code repository? I am
interested in your progress. If your repository is inside of firewall, there
are a lot of free public servers. I am using sourceforge.net. You can use
cvs or svn in sourceforge.net. github.com is another one for git.
-caz

-----Original Message-----
From: Sang-bum Suh [mailto:sbuk.suh@xxxxxxxxxxx] 
Sent: Monday, October 19, 2009 5:24 PM
To: Michael R. Hines; Caz Yokoyama
Cc: xen-arm@xxxxxxxxxxxxxxxxxxx
Subject: Re: Re: [XenARM] android emulator

Hi,

Excellent !

The released para-virtualized Linux 2.6.21 kernel for the Xen ARM project
would run on the Xen ARM on Android emulator.
However, you may need a patch to run an Android platform on Linux kernel
2.6.21 and port device drivers
to Android emulator, as there is a problem with Linux kernel version and
Android platform.

Try and download vanila Linux kernel and then update it with Para-virt Linux
files of the package at
http://wiki.xensource.com/xenwiki/XenARM. 
For more details, please refer to section 2.2.2. of the Secure Xen on ARM
user's guide at the web page.

FYI, I can release para-virtualized Linux kernel 2.6.27 next year of which
Linux kernel version does not need 
such Android patch.

Thanks,

Sang-bum





------- Original Message -------
Sender : Michael R. Hines<michael@xxxxxxxxxxxx> 
Date   : 2009-10-20 08:19 (GMT+09:00)
Title  : Re: [XenARM] android emulator

Actually, I got it to work. The problem was that that I was compiling on 
a 64-bit version of the ARM-ported emulator instead of a 32-bit version, 
so I logged into a 32-bit machine and attempted to compile it.

However, there was one snag before it worked: a patch is needed:

--- Taken from http://code.google.com/p/android/issues/detail?id=838

1.) A -msse2 cflags is missing in Makefile.target which make _mm_add_si64
cannot be found:
/android-emulator-20080826/qemu/skins/skin_argb.h:286: warning: implicit
declaration of function '_mm_add_si64'
/android-emulator-20080826/qemu/skins/skin_argb.h:286: error: incompatible
types in assignment

2.) The error comment in build-emulator.sh is wrong.

Patch:
--- qemu.orig/Makefile.target   2008-08-29 10:01:41.000000000 +0800
+++ qemu/Makefile.target        2008-08-29 10:01:24.000000000 +0800
@@ -39,7 +39,7 @@ endif
 
 ifeq ($(ARCH),i386)
 OP_CFLAGS=$(CFLAGS) -O2 -fomit-frame-pointer
-CFLAGS+=-DUSE_MMX -mmmx
+CFLAGS+=-DUSE_MMX -mmmx -msse2
 ifneq ($(CONFIG_DARWIN),yes)
 OP_CFLAGS+= -mpreferred-stack-boundary=2
 else


Once I applied this on a 32-bit Ubuntu 9.04 server box, the compile 
succeeded
and the two mini-os domains started running inside the emulator.

Cool stuff! Thank you very much for your quick response.

What is the possibility of getting a full linux-2.6.21-arm running 
inside the emulator?

Is that possible right now?

- Michael

Caz Yokoyama wrote:
> Hello Michael,
> What optimization option do you use? -O2? -O0? Don't use -O0. You will
have
> segfault. Could you run backtrace command on segfault? In addition, please
> provide more detail of your environment.
> -caz
> P.S. You may not hear from anybody other than me. This is a very quiet
> mailing list.
>
> -----Original Message-----
> From: xen-arm-bounces@xxxxxxxxxxxxxxxxxxx
> [mailto:xen-arm-bounces@xxxxxxxxxxxxxxxxxxx] On Behalf Of Michael R. Hines
> Sent: Monday, October 19, 2009 12:58 PM
> To: xen-arm@xxxxxxxxxxxxxxxxxxx
> Subject: [XenARM] android emulator
>
> Greetings,
>
> I have followed all the instructions in the Secure XenARM manual and I
> went through section A.2 on how to build XenARM for the Android
> emulator. I successfully built the arm-port of Xen as well as the
> arm-port of mini-os and I built the patched version of QEMU 0.82.
>
> When I tried to run the emulator, I get a segfault - From what I can
> tell, the fault occurs at the very first instruction when QEMU attempts
> to start running the Xen hypervisor.
>
> Here is the output of a sample GDB session:
>
> $ gdb emulator
> $ (gdb) run -guest0 0x01c00000 mini-os.elf -guest1 0x02c00000
> mini-os.elf -show-kernel -system ./images -shell -qemu -s
> Starting program: ../android-emulator-xen_arm/emulator -guest0
> 0x01c00000 mini-os.elf -guest1 0x02c00000 mini-os.elf -show-kernel
> -system ./images  -shell -qemu -s
> [Thread debugging using libthread_db enabled]
> guest0 - mini-os.elf
> guest1 - mini-os.elf
> [New Thread 0x7f32a807c6f0 (LWP 5913)]
> [New Thread 0x7f329e9f0950 (LWP 5916)]
> [New Thread 0x7f329e1ef950 (LWP 5917)]
> Waiting gdb connection on port 1234
>
> Program received signal SIGSEGV, Segmentation fault.
> [Switching to Thread 0x7f32a807c6f0 (LWP 5913)]
> 0x0000000000000000 in ?? ()
> (gdb)
>
>
> Any ideas on where I could start debugging this? Or are there updated
> patches to make this work?
>
>   

-- 
/*
 * Michael R. Hines
 * Post-Doc, Dept. of Computer Science
 * http://www.cs.columbia.edu/~mhines/
 * Live long and prosper...
 */



_______________________________________________
Xen-arm mailing list
Xen-arm@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/mailman/listinfo/xen-arm




_______________________________________________
Xen-arm mailing list
Xen-arm@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/mailman/listinfo/xen-arm

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