Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 13 Dec 2002 19:59:22 -0800 (PST)
From:      Kelly Yancey <kbyanc@posi.net>
To:        net@FreeBSD.org
Subject:   Re: Raw sockets and splnet()
Message-ID:  <20021213194809.N33726-100000@gateway.posi.net>
In-Reply-To: <20021213191946.Y33706-100000@gateway.posi.net>

next in thread | previous in thread | raw e-mail | index | archive | help
On Fri, 13 Dec 2002, Kelly Yancey wrote:

>
>   Is there any particular reason that the raw socket implementation in
> net/raw_usrreq.c does not require splnet() protection?  It seems as though
> adding splnet()/splx() calls to the various raw_* routines would greatly
> reduce the size of net/rtsock.c, in which many of the routines simply wrap
> their raw_ counterparts with splnet()/splx().
>   Currently, it appears that routing sockets are the only consumer of the raw
> socket interface at the moment, but if another consumer were to exist then
> they would have to do the same splnet()/splx() hackery I imagine.  Wouldn't it
> make sense to just put the logic into net/raw_usrreq.c and be done with it?
>
>   Any insight would be appreciated.  Thanks,
>
>   Kelly
>

  Actually, as a follow-up to my own question, I don't see how the
splnet()/splx() calls in rtsock.c are necessary at all as all of the pru_*
hooks are called at splnet().  Being that rtsock's pru_* hooks are called at
splnet(), is there any reason not to just extern the various raw_* pru hooks
and reference them directly from route_usrreqs?

  Kelly

--
Kelly Yancey -- kbyanc@{posi.net,FreeBSD.org}
FreeBSD, The Power To Serve: http://www.freebsd.org/


To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-net" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20021213194809.N33726-100000>