|
|
|
|
|
|
|
|
|
|
xen-devel
Re: [Xen-devel] [PATCH 3/3] Add support for OpenBSD
On Wednesday 18 October 2006 17:51, Keir Fraser wrote:
> On 17/10/06 15:44, "Christoph Egger" <Christoph.Egger@xxxxxxx> wrote:
> > This is the third and last patch.
> >
> > This patch makes the xen kernel buildable on OpenBSD by adding support
> > for ProPolice. ProPolice has been added to standard GCC in version 4.1.x
> > under the name Stack Smashing Protection (SSP).
>
> Gcc 4.1.x works fine for me already (under Linux at least). We specifically
> disable stack protection in xen/arch/x86/Rules.mk.
The stack protection is not just to improve security. With a stack protection,
it is more likely that you find off-by-one bugs like this:
void foo(void)
{
char array[8];
int i;
for (i = 0; i <= 8; i++) {
array[i] = 0;
}
.....
}
The propolice patch also contained a snippet, which necessary to make
the Xen kernel build independ if SSP is disabled or not.
I extracted this snippet into a separate patch to fix this build error:
gcc -Wall -Werror -Wstrict-prototypes -O2 -fomit-frame-pointer -o
boot/mkelf32 boot/mkelf32.c
boot/mkelf32.c:93:1: "swap16" redefined
In file included from /usr/include/machine/endian.h:68,
from /usr/include/sys/types.h:45,
from /usr/include/stdio.h:45,
from boot/mkelf32.c:11:
/usr/include/sys/endian.h:156:1: this is the location of the previous
definition
boot/mkelf32.c:94:1: "swap32" redefined
/usr/include/sys/endian.h:157:1: this is the location of the previous
definition
boot/mkelf32.c:95:1: "swap64" redefined
/usr/include/sys/endian.h:158:1: this is the location of the previous
definition
gmake[2]: *** [boot/mkelf32] Error 1
This mail has two patches attached:
openbsd_buildfix.diff - the absolute necessary patch to make the kernel build
on OpenBSD
openbsd_propolice.diff - it adds support for SSP
openbsd_buildfix.diff
Description: Text Data
openbsd_propolice.diff
Description: Text Data
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel
|
|
|
|
|