[PATCH] Stackgap

Suleiman Souhlal ssouhlal at FreeBSD.org
Sun May 29 19:33:02 PDT 2005


Hi,

On May 28, 2005, at 10:10 AM, Robert Watson wrote:

>
> On Fri, 27 May 2005, Suleiman Souhlal wrote:
>
>
>> You can find an implementation of stackgap from OpenBSD at http://  
>> people.freebsd.org/~ssouhlal/testing/stackgap-20050527.diff
>>
>> You can control the range of the random stack gap with the  
>> kern.stackgap_random sysctl. A value of 0 disables it. Otherwise,  
>> it has to be a power of 2 and not too large. The default value is  
>> 64K.
>>
>> I've only had the chance to test this on i386. Could anyone test  
>> it on other architectures as well?
>>
>> Any comments/objections?
>>
>
> In the past, substantial performance hits have been measured due to  
> poor stack alignment.  Specifically, in combination with less  
> optimal compiler behavior, the results have been pretty nasty.   
> Have you tried micro-benchmarking a series of runs with this stack  
> offset randomness using floating point on stack arguments to see if  
> there's a measurable cost to moving the stack around?  Hopefull if  
> all is well, there will be little or no difference, but a small  
> error here could result in a substantial performance hit...

I've modified the patch to make sure that the random offset is always  
correctly aligned.. Do you think it would be safe to commit it (maybe  
having the stackgap off by default)?

Bye.
--
Suleiman Souhlal     | ssouhlal at vt.edu
The FreeBSD Project  | ssouhlal at FreeBSD.org



More information about the freebsd-arch mailing list