Date: 26 Nov 1997 17:56:13 +0100 From: Thomas Gellekum <tg@ihf.rwth-aachen.de> To: Mike Smith <mike@smith.net.au> Cc: emulation@FreeBSD.ORG Subject: Re: Problems with spicecad for Linux Message-ID: <873ekjwq4y.fsf@ghpc6.ihf.rwth-aachen.de> In-Reply-To: Mike Smith's message of Wed, 26 Nov 1997 15:11:12 %2B1030 References: <199711260441.PAA02499@word.smith.net.au>
next in thread | previous in thread | raw e-mail | index | archive | help
Mike Smith <mike@smith.net.au> writes: > And then SIGBUS. It's possible that it was expecting a SEGV here as > well, but got SIGBUS due to a difference of opinion between FreeBSD and > Linux. Without knowing why it got the signal, it's fairly impossible > to tell though. You should look at the trap() function in i386/i386/ > trap.c and look at where it returns SIGBUS to the process, and then > compare this with Linux's reasons. I'll do that (not that I expect I'll be able to understand something in there ;-)). For comparison, here's the output of strace on a Linux system: 18556 execve("/usr/local/bin/spicecad-1.5-linuxelf", ["spicecad-1.5-linuxelf"], [/* 58 vars */]) = 0 18556 personality(PER_LINUX) = 0 18556 geteuid() = 549 18556 getuid() = 549 18556 getgid() = 100 18556 getegid() = 100 18556 brk(0) = 0x84eb104 18556 brk(0x84ee104) = 0x84ee104 18556 brk(0x84ef000) = 0x84ef000 18556 brk(0x84f0000) = 0x84f0000 18556 brk(0x84f1000) = 0x84f1000 18556 brk(0x84f2000) = 0x84f2000 18556 brk(0x84f3000) = 0x84f3000 18556 brk(0x84f5000) = 0x84f5000 18556 brk(0x84f7000) = 0x84f7000 18556 brk(0x84f8000) = 0x84f8000 18556 brk(0x84f9000) = 0x84f9000 18556 ioctl(0, TCGETS, {B9600 opost isig icanon echo ...}) = 0 18556 getpid() = 18556 18556 brk(0x84f9000) = 0x84f9000 18556 sigaction(SIGSEGV, {0x8058180, [], SA_INTERRUPT|SA_NOMASK|SA_ONESHOT}, {SIG_DFL}) = 0 18556 --- SIGSEGV (Segmentation fault) --- 18556 sigaction(SIGSEGV, {0x8058180, [], SA_INTERRUPT|SA_NOMASK|SA_ONESHOT}, {SIG_DFL}) = 0 18556 --- SIGSEGV (Segmentation fault) --- 18556 sigaction(SIGSEGV, {0x8058180, [], SA_INTERRUPT|SA_NOMASK|SA_ONESHOT}, {SIG_DFL}) = 0 18556 --- SIGSEGV (Segmentation fault) --- 18556 sigaction(SIGSEGV, {0x8058180, [], SA_INTERRUPT|SA_NOMASK|SA_ONESHOT}, {SIG_DFL}) = 0 18556 --- SIGSEGV (Segmentation fault) --- 18556 sigaction(SIGSEGV, {0x8058180, [], SA_INTERRUPT|SA_NOMASK|SA_ONESHOT}, {SIG_DFL}) = 0 18556 --- SIGSEGV (Segmentation fault) --- 18556 sigaction(SIGSEGV, {0x8058180, [], SA_INTERRUPT|SA_NOMASK|SA_ONESHOT}, {SIG_DFL}) = 0 18556 --- SIGSEGV (Segmentation fault) --- 18556 sigaction(SIGSEGV, {0x8058180, [], SA_INTERRUPT|SA_NOMASK|SA_ONESHOT}, {SIG_DFL}) = 0 18556 --- SIGSEGV (Segmentation fault) --- 18556 sigaction(SIGSEGV, {0x8058180, [], SA_INTERRUPT|SA_NOMASK|SA_ONESHOT}, {SIG_DFL}) = 0 18556 --- SIGSEGV (Segmentation fault) --- 18556 sigaction(SIGSEGV, {0x8058180, [], SA_INTERRUPT|SA_NOMASK|SA_ONESHOT}, {SIG_DFL}) = 0 18556 --- SIGSEGV (Segmentation fault) --- 18556 sigaction(SIGSEGV, {0x8058180, [], SA_INTERRUPT|SA_NOMASK|SA_ONESHOT}, {SIG_DFL}) = 0 18556 --- SIGSEGV (Segmentation fault) --- 18556 sigaction(SIGSEGV, {0x8058180, [], SA_INTERRUPT|SA_NOMASK|SA_ONESHOT}, {SIG_DFL}) = 0 18556 --- SIGSEGV (Segmentation fault) --- 18556 sigaction(SIGSEGV, {0x8058180, [], SA_INTERRUPT|SA_NOMASK|SA_ONESHOT}, {SIG_DFL}) = 0 18556 --- SIGSEGV (Segmentation fault) --- 18556 sigaction(SIGSEGV, {0x8058180, [], SA_INTERRUPT|SA_NOMASK|SA_ONESHOT}, {SIG_DFL}) = 0 18556 --- SIGSEGV (Segmentation fault) --- 18556 sigaction(SIGSEGV, {0x8058180, [], SA_INTERRUPT|SA_NOMASK|SA_ONESHOT}, {SIG_DFL}) = 0 18556 --- SIGSEGV (Segmentation fault) --- 18556 sigaction(SIGSEGV, {0x8058180, [], SA_INTERRUPT|SA_NOMASK|SA_ONESHOT}, {SIG_DFL}) = 0 18556 sigaction(SIGSEGV, {SIG_DFL}, {0x8058180, [], SA_INTERRUPT|SA_NOMASK|SA_ONESHOT}) = 0 18556 brk(0x84f9000) = 0x84f9000 18556 ioctl(0, TCGETA, {B9600 opost isig icanon echo ...}) = 0 18556 ioctl(0, TCSETA, {B9600 opost isig icanon echo ...}) = 0 18556 brk(0x84fa000) = 0x84fa000 18556 brk(0x84fb000) = 0x84fb000 18556 brk(0x84fc000) = 0x84fc000 18556 brk(0x84fd000) = 0x84fd000 18556 brk(0x84fe000) = 0x84fe000 18556 brk(0x84ff000) = 0x84ff000 18556 brk(0x8500000) = 0x8500000 18556 brk(0x8501000) = 0x8501000 18556 brk(0x8502000) = 0x8502000 18556 brk(0x8503000) = 0x8503000 18556 brk(0x8504000) = 0x8504000 18556 brk(0x8505000) = 0x8505000 18556 brk(0x8506000) = 0x8506000 18556 brk(0x8507000) = 0x8507000 18556 brk(0x8508000) = 0x8508000 18556 brk(0x8509000) = 0x8509000 18556 brk(0x850a000) = 0x850a000 18556 brk(0x850b000) = 0x850b000 18556 brk(0x850c000) = 0x850c000 18556 brk(0x850d000) = 0x850d000 18556 brk(0x850e000) = 0x850e000 18556 brk(0x850f000) = 0x850f000 18556 brk(0x8510000) = 0x8510000 18556 brk(0x8511000) = 0x8511000 18556 brk(0x8512000) = 0x8512000 18556 brk(0x8513000) = 0x8513000 18556 brk(0x8514000) = 0x8514000 18556 brk(0x8515000) = 0x8515000 18556 brk(0x8516000) = 0x8516000 18556 brk(0x8517000) = 0x8517000 18556 sigaction(SIGILL, {0x804b030, [], SA_INTERRUPT|SA_NOMASK|SA_ONESHOT}, {SIG_DFL}) = 0 18556 sigaction(SIGILL, {SIG_DFL}, {0x804b030, [], SA_INTERRUPT|SA_NOMASK|SA_ONESHOT}) = 0 18556 sigaction(SIGILL, {0x804b030, [], SA_INTERRUPT|SA_NOMASK|SA_ONESHOT}, {SIG_DFL}) = 0 18556 sigaction(SIGILL, {SIG_DFL}, {0x804b030, [], SA_INTERRUPT|SA_NOMASK|SA_ONESHOT}) = 0 18556 brk(0x8518000) = 0x8518000 18556 brk(0x8519000) = 0x8519000 [open init file, print prompt, quit] tg
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?873ekjwq4y.fsf>