Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 11 Aug 2010 14:36:23 -0400
From:      John Baldwin <jhb@FreeBSD.org>
To:        Will Andrews <will@FreeBSD.org>
Cc:        svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org
Subject:   Re: svn commit: r211157 - in head/sys: modules modules/if_carp net netinet netinet6
Message-ID:  <4C62EDA7.5070001@FreeBSD.org>
In-Reply-To: <201008110051.o7B0pp10084996@svn.freebsd.org>
References:  <201008110051.o7B0pp10084996@svn.freebsd.org>

next in thread | previous in thread | raw e-mail | index | archive | help
Will Andrews wrote:
> Author: will
> Date: Wed Aug 11 00:51:50 2010
> New Revision: 211157
> URL: http://svn.freebsd.org/changeset/base/211157
> 
> Log:
>   Allow carp(4) to be loaded as a kernel module.  Follow precedent set by
>   bridge(4), lagg(4) etc. and make use of function pointers and
>   pf_proto_register() to hook carp into the network stack.
>   
>   Currently, because of the uncertainty about whether the unload path is free
>   of race condition panics, unloads are disallowed by default.  Compiling with
>   CARPMOD_CAN_UNLOAD in CFLAGS removes this anti foot shooting measure.
>   
>   This commit requires IP6PROTOSPACER, introduced in r211115.

This doesn't compile due to duplicate function pointer definitions (e.g. 
  if_bridge.c and if_ether.c).  You should move all the function pointer 
definitions to net/if.c and add declarations for them to a header 
instead of a bunch of 'extern' declarations in if_carp.c itself.

-- 
John Baldwin



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