On Thu, Dec 3, 2015 at 1:12 AM, Tom Herbert <t...@herbertland.com> wrote:
> The in kernel caller would already have a pointer to the socket so the
> call would just be sk->sk_prot->destroy(sk). That call should make its
> way down to same backend function in TCP that the diag path would use.
> We need this in the kernel for the same reasons you want this in
> userspace, if a third party hits an unrecoverable error on the socket
> it needs to signal this condition to the owner of the socket but can't
> actually close the socket (useful to RDS, KCM, probably
> TLS-in-kernel).

Oh, I see, yes. You're thinking of a case where multiple protocols
support this destroy operation. An in-kernel caller has a pointer to a
sk that it wants to unwedge, but doesn't need to know which destroy
function to use for which protocol, it just does "if
(sk->sk_prot->destroy != NULL) sk->sk_prot_destroy(sk)". I think that
should be a trivial change on top of what I have.
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to