On 2010-06-22 at 16:54:45 [+0200], Axel Dörfler <axeld@xxxxxxxxxxxxxxxx> wrote: > Ingo Weinhold <ingo_weinhold@xxxxxx> wrote: > > On 2010-06-22 at 14:56:59 [+0200], Axel Dörfler <axeld@xxxxxxxxxxxxxxxx> > > > wrote: > > > ingo_weinhold@xxxxxx wrote: > > > > Log: > > > > Reimplemented _kernel_contigmalloc() to support the physical > > > > address > > > > restrictions. > > > Why not simply remove kernel_contigmalloc() from compat.c instead of > > > this strange construct? > > Unfortunately the FreeBSD headers are not C++ safe and <vm/vm.h> > > (ours) is > > not C safe. Hence the indirection to insulate one from the other. > > extern "C" { > # include <my-favourite-freebsd-header.h> > } That would probably solve the C++ safety problem, but there are also other issues, like FreeBSD types clashing with private kernel types. Feel free to experiment with that mess, if you are bored. :-) CU, Ingo