Skip site navigation (1)Skip section navigation (2)
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>