From owner-freebsd-hackers@FreeBSD.ORG Wed Aug 13 15:47:00 2008 Return-Path: Delivered-To: freebsd-hackers@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id BF372106564A for ; Wed, 13 Aug 2008 15:47:00 +0000 (UTC) (envelope-from jdc@parodius.com) Received: from mx01.sc1.parodius.com (mx01.sc1.parodius.com [72.20.106.3]) by mx1.freebsd.org (Postfix) with ESMTP id B71998FC15 for ; Wed, 13 Aug 2008 15:47:00 +0000 (UTC) (envelope-from jdc@parodius.com) Received: by mx01.sc1.parodius.com (Postfix, from userid 1000) id 84C531CC0BA; Wed, 13 Aug 2008 08:47:00 -0700 (PDT) Date: Wed, 13 Aug 2008 08:47:00 -0700 From: Jeremy Chadwick To: Alexander Leidinger Message-ID: <20080813154700.GA1938@eos.sc1.parodius.com> References: <20080813132822.18394zk66kfg0xcs@webmail.leidinger.net> <20080813115413.GF1803@deviant.kiev.zoral.com.ua> <20080813160353.55171pui9o2wvm4g@webmail.leidinger.net> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20080813160353.55171pui9o2wvm4g@webmail.leidinger.net> User-Agent: Mutt/1.5.18 (2008-05-17) Cc: Kostik Belousov , Nate Eldredge , freebsd-hackers@freebsd.org Subject: Re: Debugging reboot with Linux emulation X-BeenThere: freebsd-hackers@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Technical Discussions relating to FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 13 Aug 2008 15:47:00 -0000 On Wed, Aug 13, 2008 at 04:03:53PM +0200, Alexander Leidinger wrote: > Quoting "Kostik Belousov" (from Wed, 13 Aug 2008 > 14:54:13 +0300): > >> On Wed, Aug 13, 2008 at 01:28:22PM +0200, Alexander Leidinger wrote: >>> Quoting "Nate Eldredge" (from Tue, 12 Aug >>> 2008 23:52:35 -0700 (PDT)): >>> >>> >Hi folks, >>> > >>> >I recently tried to run a Linux binary of Maple (commercial math >>> >software) on my FreeBSD 7.0-RELEASE/amd64 box, and the machine >>> >rebooted. I tried it again while watching the console, and no panic >>> >message appeared to be produced. Does anyone have any ideas on how >>> >to debug problems of this nature? I realize I may not be able to >>> >get Maple to work, but in any case the system should not die like >>> >this, so I can at least try to fix that bug. >>> > >>> >Incidentally, is it possible to run kdb with a USB keyboard? >>> >Hitting Ctrl-Alt-Esc gives me the kdb prompt, but I can't type, so I >>> >can do nothing except hit the power button. I do have >>> >hint.atkbd.0.flags="0x1" in /boot/device.hints. Unfortunately I >>> >don't have a PS/2 keyboard on hand, though I can try and get a hold >>> >of one if all else fails. >>> >>> A guess out of my cristallball: >>> That's one of the cases which happen if you run a linux program >>> without branding it as a linux program first. People tend to think it >>> is not needed, but in some rare circumstances it just causes what you >>> see, a reboot. So go and identify all binaries (IMPORTANT: but not the >>> libraries!), e.g. with the file(1), and use "brandelf -t Linux" on >>> those programs. >> >> That would be an enormous local hole, assuming an native FreeBSD binary >> may cause system crash. I actually doubt that non-branded elf binary >> ever start, due to unsatisfied dynamic dependencies. > > You see this behavior only for static binaries. In the non-branded case > the image activator takes the FreeBSD image and unfortunately there's a > common syscall in linux which matches the syscall number in FreeBSD which > causes the reboot (IIRC reboot syscall, do we have something like this?). > It's not a system crash (kernel panic), it's a real reboot. AFAIR this > also only works if you run the program as root. So... There is indeed a reboot syscall, #55: /usr/include/sys/sycall.h: #define SYS_reboot 55 -- | Jeremy Chadwick jdc at parodius.com | | Parodius Networking http://www.parodius.com/ | | UNIX Systems Administrator Mountain View, CA, USA | | Making life hard for others since 1977. PGP: 4BD6C0CB |