Saturday, August 9, 2014

Upstream QEMU can run NetBSD/sparc64

Mark did a good job fixing OpenBIOS properties and cmd646 emulation in QEMU, so NetBSD started to get up to the user space. Then I sent my patch for emulation of short load instructions upstream, so with all this patches applied qemu-system-sparc64 can successfully boot NetBSD 6.1.4 (and likely all the other sparc64 versions):
Updating motd.
Starting sshd.
postfix: rebuilding /etc/mail/aliases (missing /etc/mail/aliases.db)
Starting inetd.
Starting cron.
Sat Aug  9 11 11:18:59 CEST 2014

NetBSD/sparc64 (netbsd614) (console)

login: root
Aug  9 11:19:27 netbsd614 login: ROOT LOGIN (root) on tty console
Last login: Fri Jan  1 13:21:40 2010 on console
Copyright (c) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005,
    2006, 2007, 2008, 2009, 2010, 2011, 2012
    The NetBSD Foundation, Inc.  All rights reserved.
Copyright (c) 1982, 1986, 1989, 1991, 1993
    The Regents of the University of California.  All rights reserved.

NetBSD 6.1.4 (GENERIC)

Welcome to NetBSD!

Terminal type is wsvt25.
We recommend that you create a non-root account and use su(1) for root access.
netbsd614#  ping
PING ( 48 data bytes
64 bytes from icmp_seq=0 ttl=255 time=2.463 ms
64 bytes from icmp_seq=1 ttl=255 time=1.994 ms

Have fun and please report the bugs to the qemu-devel@ mailing list.


SPARCHER said...

At last, "of course it runs NetBSD" too [:||||:]

Unknown said...

Hello Artyom,

Thanks for the hints.

I have successfully installed NetBSD on qemu-system-sparc64 with "if=ide" only, when I tried with virtio system does not see any hard disk.
Do I have to proceed the way you did when installing Debian Wheezy i.e. adding virtio to "initrd" (or the equivalent of initrd on NetBSD).

Best Regards,

atar said...

Yes, I think that's the way. In case of NetBSD/sparc64 you may have to build the virtio drivers from the source. Haven't tried it myself. Try asking on the netbsd-sparc64 mailing list, the NetBSD guys are friendly and helpful.