Which signal occurs due to a page protection violation?

Jason Evans jasone at freebsd.org
Tue Jan 31 11:41:36 PST 2006


On Jan 31, 2006, at 1:06 AM, Sam Lawrance wrote:
> 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.

I'm not sure about this, but I think the change of which signal  
occurs is unrelated to jemalloc.  I think Kris Kennaway at one point  
told me that jemalloc broke the efence port, but then later retracted  
that claim when efence also failed on a machine that was still using  
phkmalloc.  This may be due to a signal delivery bugfix that someone  
put in, probably in early December 2005.

Jason



More information about the freebsd-hackers mailing list