Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 29 May 2005 15:07:49 +0100
From:      Doug Rabson <dfr@nlsystems.com>
To:        freebsd-arch@freebsd.org
Cc:        Robert Watson <ratson@freebsd.org>, arch@freebsd.org, Suleiman Souhlal <ssouhlal@freebsd.org>
Subject:   Re: [PATCH] Stackgap
Message-ID:  <200505291507.50289.dfr@nlsystems.com>
In-Reply-To: <20050528150815.X29776@fledge.watson.org>
References:  <CC7E6E83-2C2D-46FF-A816-CAD6F16CDA1B@FreeBSD.org> <20050528150815.X29776@fledge.watson.org>

next in thread | previous in thread | raw e-mail | index | archive | help
On Saturday 28 May 2005 15:10, 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 recently modified the crt code to force the stack alignment to 16 
bytes on startup (so that I could safely write code that uses movaps).



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200505291507.50289.dfr>