Subject: Re: IPSEC in GENERIC
To: Christos Zoulas <christos@zoulas.com>
From: Jonathan Stone <jonathan@Pescadero.dsg.stanford.edu>
List: tech-kern
Date: 02/21/2006 14:08:12
In message <20060221211952.A3F6356534@rebar.astron.com>,
Christos Zoulas writes:

>He is merging inpcb and in6pcb, the same way FreeBSD and OpenBSD have done.
>
>| Or to turn that around: what else is is in-progress that that'd break?
>
>This will break his branch, 

Sure. But if we finished clean-implmented code to using the struct
inpcbhdr, and removes all the pointer-jumping, then we don't *need*
Rui's branch, do we?

To turn my question around: after my first pass at this, we discussed
various approaches: merging pcbs, or introducing a common prefix.

What changed beetwen the introduction of struct inpbcbhdr and now, so
as to make a unified inpcb/in6pcb desirable now, when back then, that
wasn't a desirable approach?


>and it will make us look very different than
>FreeBSD and OpenBSD which have a merged inpcb/in6pbc.

FreeBSD's networking stack is already so different (SMP locking, ...)
that as I see it, this marginal compatibility with FreeBSD buys us
nothing, in practical terms.  Is there something in OpenBSD which this
buys us?

I guess I'm partly confused becuase, from where I'm sitting, a common
header followed by IPv4 or IPv6-specific portions seems cleaner and
more in our spirit of "doing things right".