Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 31 Jan 2006 20:06:37 +1100
From:      Sam Lawrance <boris@brooknet.com.au>
To:        freebsd-hackers@freebsd.org
Subject:   Which signal occurs due to a page protection violation?
Message-ID:  <3458D5B9-860C-4185-9359-1F48FC35B048@brooknet.com.au>

next in thread | raw e-mail | index | archive | help
ElectricFence is failing during its self test on i386 7-current:

Testing Electric Fence.
After the last test, it should print that the test has PASSED.
EF_PROTECT_BELOW= && EF_PROTECT_FREE= && EF_ALIGNMENT= && ./eftest
Segmentation fault (core dumped)
*** Error code 139

The program intentionally overruns and underruns buffers in order to  
test the functionality of ElectricFence.
I think it's failing because:
1) the new jemalloc is actually catching the problem and throwing  
SIGSEGV
2) ElectricFence is being compiled with - 
DPAGE_PROTECTION_VIOLATED_SIGNAL=SIGBUS on that platform.

Which signal should it be using?  Does it vary across platforms and  
architectures?  I ask this because one of the patches contains

.if ${MACHINE_ARCH} == "i386" || (${MACHINE_ARCH} == "amd64" && $ 
{OSVERSION} < 700003) || ${MACHINE_ARCH} == "ia64" || ${MACHINE_ARCH}  
== "sparc64"
CFLAGS+= -DPAGE_PROTECTION_VIOLATED_SIGNAL=SIGSEGV
.endif




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?3458D5B9-860C-4185-9359-1F48FC35B048>