Eclair on Nokia N900

13 views
Skip to first unread message

Brandon

unread,
Jan 23, 2010, 5:35:27 PM1/23/10
to android-porting
I am trying to port android to an omap3430 based device, (nokia n900).
I'm using kernel 2.6.28 with the android drivers patched in, and I can
build the donut branch and boot it on the n900, but the eclair branch
always exits with a Segmentation Fault. I've tried running init, /
system/bin/sh, /system/xbin/strace, but they all crash with a
Segmentation Fault and no log.

Does the eclair branch depend on a certain kernel (e.g. >= 2.6.29)? I
noticed that eclair used arm-eabi-4.4.0, which donut uses arm-
eabi-4.2.1 to build, and I've tried to build eclair with arm-
eabi-4.2.1, with no change.

Any help would be great.

Thanks

Michael Trimarchi

unread,
Jan 23, 2010, 7:19:28 PM1/23/10
to android...@googlegroups.com
Hi Brandon

Brandon wrote:
> I am trying to port android to an omap3430 based device, (nokia n900).
> I'm using kernel 2.6.28 with the android drivers patched in, and I can
> build the donut branch and boot it on the n900, but the eclair branch
> always exits with a Segmentation Fault. I've tried running init, /
> system/bin/sh, /system/xbin/strace, but they all crash with a
> Segmentation Fault and no log.

http://www.mail-archive.com/android...@googlegroups.com/msg08893.html

Maybe this thread can help you :)

Michael

Brandon

unread,
Jan 24, 2010, 12:48:55 PM1/24/10
to android-porting
Thanks for the link :-) I've got eclair to boot, but it hangs because
zygote keeps restarting, and my strace log has these connection
refused messages. Can you make anything of these?

recv(1152208640, NULL, 2, 0) = 0
syscall_983045(0x44ad4f00, 0x12ba08, 0, 0x40, 0x44ad4f00, 0xad0425a1,
0x13f1e0, 0xf0005, 0x100000, 0xad0425a1, 0x449d5000, 0x13f1e0, 0,
0x44ad4ee8, 0xafe0fd70, 0xafe0d7fc, 0x60000010, 0x44ad4f00, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0) = 0
prctl(0xf, 0x149d20, 0, 0, 0) = 0
mmap2(NULL, 12288, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS,
-1, 0) = 0x426f4000
SYS_224(0x12ba08, 0x1, 0xf, 0x44ad4f00) = 538
getpriority(PRIO_PROCESS, 0) = 20
recv(-1391972720, 0x1, 2147483647, 0) = 0
recv(1306992, NULL, 2, 0) = 0
recv(1306996, 0x1, 2147483647, 0) = 0
recv(1306992, 0x1, 1, 0) = 0
socket(PF_UNIX, SOCK_STREAM, 0) = 15
pipe([16, 17]) = 0
getpid() = 535
connect(15, {sa_family=AF_UNIX, path=@jdwp-control}, 15) = -1
ECONNREFUSED (Connection refused)
nanosleep({0, 500000000}, {0, 500000000}) = 0
connect(15, {sa_family=AF_UNIX, path=@jdwp-control}, 15) = -1
ECONNREFUSED (Connection refused)
nanosleep({0, 750000000}, {0, 750000000}) = 0
connect(15, {sa_family=AF_UNIX, path=@jdwp-control}, 15) = -1
ECONNREFUSED (Connection refused)
nanosleep({1, 125000000}, {1, 125000000}) = 0
connect(15, {sa_family=AF_UNIX, path=@jdwp-control}, 15) = -1
ECONNREFUSED (Connection refused)
nanosleep({1, 687000000}, {1, 687000000}) = 0
connect(15, {sa_family=AF_UNIX, path=@jdwp-control}, 15) = -1
ECONNREFUSED (Connection refused)
nanosleep({2, 0}, {2, 0}) = 0
connect(15, {sa_family=AF_UNIX, path=@jdwp-control}, 15) = -1
ECONNREFUSED (Connection refused)
nanosleep({2, 0}, {2, 0}) = 0
connect(15, {sa_family=AF_UNIX, path=@jdwp-control}, 15) = -1
ECONNREFUSED (Connection refused)
nanosleep({2, 0}, {2, 0}) = 0
connect(15, {sa_family=AF_UNIX, path=@jdwp-control}, 15) = -1
ECONNREFUSED (Connection refused)
nanosleep({2, 0}, {2, 0}) = 0
connect(15, {sa_family=AF_UNIX, path=@jdwp-control}, 15) = -1
ECONNREFUSED (Connection refused)
nanosleep({2, 0}, {2, 0}) = 0
connect(15, {sa_family=AF_UNIX, path=@jdwp-control}, 15) = -1
ECONNREFUSED (Connection refused)
nanosleep({2, 0}, {2, 0}) = 0
connect(15, {sa_family=AF_UNIX, path=@jdwp-control}, 15) = -1
ECONNREFUSED (Connection refused)
nanosleep({2, 0}, {2, 0}) = 0
connect(15, {sa_family=AF_UNIX, path=@jdwp-control}, 15) = -1
ECONNREFUSED (Connection refused)
nanosleep({2, 0}, {2, 0}) = 0
connect(15, {sa_family=AF_UNIX, path=@jdwp-control}, 15) = -1
ECONNREFUSED (Connection refused)
nanosleep({2, 0}, {2, 0}) = 0
connect(15, {sa_family=AF_UNIX, path=@jdwp-control}, 15) = -1
ECONNREFUSED (Connection refused)
nanosleep({2, 0}, {2, 0}) = 0
connect(15, {sa_family=AF_UNIX, path=@jdwp-control}, 15) = -1
ECONNREFUSED (Connection refused)
nanosleep({2, 0}, {2, 0}) = 0
connect(15, {sa_family=AF_UNIX, path=@jdwp-control}, 15) = -1
ECONNREFUSED (Connection refused)
nanosleep({2, 0}, {2, 0}) = 0
connect(15, {sa_family=AF_UNIX, path=@jdwp-control}, 15) = -1
ECONNREFUSED (Connection refused)
nanosleep({2, 0}, {2, 0}) = 0
connect(15, {sa_family=AF_UNIX, path=@jdwp-control}, 15) = -1
ECONNREFUSED (Connection refused)
nanosleep({2, 0}, {2, 0}) = 0
connect(15, {sa_family=AF_UNIX, path=@jdwp-control}, 15) = -1
ECONNREFUSED (Connection refused)
nanosleep({2, 0}, {2, 0}) = 0
connect(15, {sa_family=AF_UNIX, path=@jdwp-control}, 15) = -1
ECONNREFUSED (Connection refused)
nanosleep({2, 0}, {2, 0}) = 0
connect(15, {sa_family=AF_UNIX, path=@jdwp-control}, 15) = -1
ECONNREFUSED (Connection refused)
nanosleep({2, 0}, {2, 0}) = 0
connect(15, {sa_family=AF_UNIX, path=@jdwp-control}, 15) = -1
ECONNREFUSED (Connection refused)
nanosleep({2, 0}, {2, 0}) = 0
connect(15, {sa_family=AF_UNIX, path=@jdwp-control}, 15) = -1
ECONNREFUSED (Connection refused)
nanosleep({2, 0}, {2, 0}) = 0
connect(15, {sa_family=AF_UNIX, path=@jdwp-control}, 15) = -1
ECONNREFUSED (Connection refused)
nanosleep({2, 0}, {2, 0}) = 0
connect(15, {sa_family=AF_UNIX, path=@jdwp-control}, 15) = -1
ECONNREFUSED (Connection refused)
nanosleep({2, 0}, {2, 0}) = 0
connect(15, {sa_family=AF_UNIX, path=@jdwp-control}, 15) = -1
ECONNREFUSED (Connection refused)
nanosleep({2, 0}, {2, 0}) = 0
connect(15, {sa_family=AF_UNIX, path=@jdwp-control}, 15) = -1
ECONNREFUSED (Connection refused)
nanosleep({2, 0}, {2, 0}) = 0
connect(15, {sa_family=AF_UNIX, path=@jdwp-control}, 15) = -1
ECONNREFUSED (Connection refused)
nanosleep({2, 0}, {2, 0}) = 0
connect(15, {sa_family=AF_UNIX, path=@jdwp-control}, 15) = -1
ECONNREFUSED (Connection refused)
nanosleep({2, 0}, {2, 0}) = 0
connect(15, {sa_family=AF_UNIX, path=@jdwp-control}, 15) = -1
ECONNREFUSED (Connection refused)
nanosleep({2, 0}, {2, 0}) = 0
connect(15, {sa_family=AF_UNIX, path=@jdwp-control}, 15) = -1
ECONNREFUSED (Connection refused)
nanosleep({2, 0}, {2, 0}) = 0
connect(15, {sa_family=AF_UNIX, path=@jdwp-control}, 15) = -1
ECONNREFUSED (Connection refused)
nanosleep({2, 0}, {2, 0}) = 0
connect(15, {sa_family=AF_UNIX, path=@jdwp-control}, 15) = -1
ECONNREFUSED (Connection refused)
nanosleep({2, 0}, {2, 0}) = 0
connect(15, {sa_family=AF_UNIX, path=@jdwp-control}, 15) = -1
ECONNREFUSED (Connection refused)
nanosleep({2, 0}, {2, 0}) = 0
connect(15, {sa_family=AF_UNIX, path=@jdwp-control}, 15) = -1
ECONNREFUSED (Connection refused)
nanosleep({2, 0}, {2, 0}) = 0
connect(15, {sa_family=AF_UNIX, path=@jdwp-control}, 15) = -1
ECONNREFUSED (Connection refused)
nanosleep({2, 0},

On Jan 23, 6:19 pm, Michael Trimarchi <trimar...@gandalf.sssup.it>
wrote:

> http://www.mail-archive.com/android...@googlegroups.com/msg08893...

Brandon

unread,
Jan 27, 2010, 5:54:52 PM1/27/10
to android-porting
Can anyone tell how to get more out of the strace log? I have eclair
booting and from the log files, nothing seems to be crashing with a
segmentation fault, but it never gets to the point where it tries to
start the android runtime? Would a target debug build type help?

Thanks in advance.

Reply all
Reply to author
Forward
0 new messages