From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1KaCFl-0004no-W3 for qemu-devel@nongnu.org; Mon, 01 Sep 2008 12:27:46 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1KaCFk-0004nL-A0 for qemu-devel@nongnu.org; Mon, 01 Sep 2008 12:27:45 -0400 Received: from [199.232.76.173] (port=58148 helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1KaCFk-0004nD-6K for qemu-devel@nongnu.org; Mon, 01 Sep 2008 12:27:44 -0400 Received: from bsdimp.com ([199.45.160.85]:51139 helo=harmony.bsdimp.com) by monty-python.gnu.org with esmtps (TLS-1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.60) (envelope-from ) id 1KaCFj-0003ff-N3 for qemu-devel@nongnu.org; Mon, 01 Sep 2008 12:27:44 -0400 Date: Mon, 01 Sep 2008 10:25:15 -0600 (MDT) Message-Id: <20080901.102515.-1975969776.imp@bsdimp.com> Subject: Re: [Qemu-devel] [PATCH, RFC] BSD user emulator From: "M. Warner Losh" In-Reply-To: <3ACB420B-8C07-4417-80F5-1B74896D1533@suse.de> References: <3ACB420B-8C07-4417-80F5-1B74896D1533@suse.de> Mime-Version: 1.0 Content-Type: Text/Plain; charset=iso-8859-1 Content-Transfer-Encoding: quoted-printable Reply-To: qemu-devel@nongnu.org List-Id: qemu-devel.nongnu.org List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: qemu-devel@nongnu.org, agraf@suse.de Cc: blauwirbel@gmail.com In message: <3ACB420B-8C07-4417-80F5-1B74896D1533@suse.de> Alexander Graf writes: : = : On Aug 30, 2008, at 10:31 AM, Blue Swirl wrote: : = : > Hi, : > : > This version can actually execute some programs, for example: : > : > ./sparc64-bsd-user/qemu-sparc64 -d in_asm /bin/cat /etc/motd : > OpenBSD 4.4 (GENERIC) #1715: Mon Aug 11 17:55:10 MDT 2008 : > : > Welcome to OpenBSD: The proactively secure Unix-like operating syst= em. : > : > Please use the sendbug(1) utility to report bugs in the system. : > Before reporting a bug, please try to reproduce it with the latest : > version of the code. With bug reports, please try to ensure that : > enough information to reproduce the problem is enclosed, and if a : > known fix for it exists, include that as well. : > : > Something is not correct with errno handling, it could also be a bu= g : > in CPU emulation: : > /sparc64-bsd-user/qemu-sparc64 -d in_asm /bin/cat /foobar : > cat: /foobar: Undefined error: 0 : > : > Some other programs just fail: : > ./sparc64-bsd-user/qemu-sparc64 -d in_asm /bin/ls : > ls: Cannot allocate memory : > ./sparc64-bsd-user/qemu-sparc64 -d in_asm /bin/ksh : > ksh in malloc(): error: chunk overflow : > ./sparc64-bsd-user/qemu-sparc64 -d in_asm /usr/bin/id : > Segmentation fault : > ./sparc64-bsd-user/qemu-sparc64 -d in_asm /sbin/ifconfig : > lo0: flags=3D8049 mtu 0=B8 : > ifconfig: getifgroups: Cannot allocate memory : > : > I've cleaned up the patch a bit. Signals, ioctls and structure : > conversions are still unimplemented and as usual, no docs. : > : > I think this is getting ready to be committed pretty soon. Any : > comments, objections? : = : Just off the top of my head: Shouldn't BSD userspace and Darwin = : userspace emulation be able to share a good bunch of syscalls? : IIRC the positive Darwin syscalls should be some recent FreeBSD = : syscalls that should look pretty similar to OpenBSD syscalls. I might= = : be totally wrong here though ;-). Kinda. The system calls are mostly similar between the BSDs, but do vary for syscalls added since 4.4BSD Lite-2. Warner