cvs commit: src/sys/sys protosw.h src/sys/kern
uipc_domain.cuipc_socket2.c
Sam Leffler
sam at errno.com
Tue Oct 19 21:44:42 PDT 2004
Andre Oppermann wrote:
> Sam Leffler wrote:
>
>>Andre Oppermann wrote:
>>
>>>andre 2004-10-19 15:13:30 UTC
>>>
>>> FreeBSD src repository
>>>
>>> Modified files:
>>> sys/sys protosw.h
>>> sys/kern uipc_domain.c uipc_socket2.c
>>> Log:
>>> Support for dynamically loadable and unloadable protocols within existing protocol
>>> families.
>>>
>>
>>I don't recall seeing this posted anywhere for comment. I have some
>>concerns about this general topic and this code seems incomplete (e.g. I
>>see no locking).
>
>
> Locking is not needed because there are no dead moments in transitioning
> from unregistered to registered and back. All calls to any of the protocol
> specific functions will return a valid result (even if it is only EOPNOTSUPP).
> There is no list manipulation going on.
>
> The caller of the function is required to assure that no dangeling sockets,
> references or memory allocations are left behind after unregistering. It's
> simply impossible to solve otherwise. For IPDIVERT which I have converted
> this works very well (it will simply refuse to unload if a divert socket is
> open).
>
> What remaining concerns do you have?
I went away for the day. It seems many people have responded though not
addressing all my concerns. While I applaud your effort to attack this
problem I must say I am totally disgusted by the way in which you've
dropped this code in the tree with no review or opportunity for comment.
There are many decisions made here that I disagree with and from the
subsequent commits to patchup issues it's clear your work needed some
"soak time" before going in CVS.
Sam
More information about the cvs-all
mailing list