From nobody Thu Aug 11 16:20:16 2022 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4M3X8c3vnKz4Yq9V; Thu, 11 Aug 2022 16:20:16 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4M3X8c32FQz3lbP; Thu, 11 Aug 2022 16:20:16 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1660234816; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=pHNUKy5kTQMEEJIUE0Rveeu+HnXWkpSWc0GRcMlt23Q=; b=Rzv/vbrmq71x5dX9zrVpXOEq4N5kgumysHZCqu3cGLmobqTj4XuLKZUmnkawp/A+1fyP1s 5Ygkt0w6SSYUCRdIpyih7H9kDBNTjpTCODjeVEjZh3VZN+HWDH9bjsKL8iBrvfGsaO2ljn Dzi2o6rAPRjisQQqLnHD+TbWbTep86+NM5FES2ltR24W3RL67MUcmskG5KsIU5eoFkCzMM dSuKdsgd5cpRnU4X0wASs0otihl75GXb/DiR0kQj7Z7iUVH+x5SjLFe5Qih1dVSkYmaEYy gZ62tIBgprmt2mxFfR3b4PWfvngjX7zQ4Kg1Ur5f4IjXS5CUr/cXXLWg+nK1GQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4M3X8c20DMzxp4; Thu, 11 Aug 2022 16:20:16 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 27BGKGF5047514; Thu, 11 Aug 2022 16:20:16 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 27BGKGfG047508; Thu, 11 Aug 2022 16:20:16 GMT (envelope-from git) Date: Thu, 11 Aug 2022 16:20:16 GMT Message-Id: <202208111620.27BGKGfG047508@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Gleb Smirnoff Subject: git: 8c77967ecc58 - main - protosw: retire pr_output method List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-main@freebsd.org X-BeenThere: dev-commits-src-main@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: glebius X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 8c77967ecc58b5db35bb285013c55492987a9061 Auto-Submitted: auto-generated ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1660234816; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=pHNUKy5kTQMEEJIUE0Rveeu+HnXWkpSWc0GRcMlt23Q=; b=Mp5A31OdFZH9NEboT+S2ht2hsUsWXld1YA5U/9YRagSAMMsBzGj9+lRksCrVwYjpgEAwl7 0lkVbxstenCTQnNf8qip9gLduABp7HEVS7VUafIDHCkzqob1kLhKsyM0FblFd6IAvtXmWs WupViDLUoluBjIBlyBCgBbNNDc9S7fnj/NhNYZcFcU0b5zfu1kkgoEF6dAGFvnS1rxORsa LxUXQMS2UdZn1zqC5WIvWOTRbAjZg348WUvtMldvZuF3RZZH/43I4rZ+m8mfauiz6fZGXT xnq+KVxZzYIaw2WsXS0CYwGeT4ahpbFUAt8dNHuabsNoM4hSYFo8SuOHktVizg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1660234816; a=rsa-sha256; cv=none; b=eCEosvaaxXs298HlgA801ZH/cwcDPW1hYKiQNENhMrbkg2TNuxvhW1f9M7tcFTfaCmRBJG qU/nHfp7BAXNkVRQTOJWsuAY8twddukwmAT0JyUrbm4IpQvCRZVP+UxQvJfYpm7nM8pIk7 LyyT6heR6KfcFQR0TvNDneB/xyng0UXhJbwmnqMm0XZq1YCs87wV4ZGHLLv+zr4uj2X2JP bVnYXfmx4oWtv1S46zIurMfbL0W5NQUJV6NkT3TULBwDxRX4haktSDyKhqiMqElEvTMX4F b6EgbbkvmhIicAqXWdXk7BicStp0Je7AAtI2xsU9GngyB9LBxO0han/exGIbZA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none X-ThisMailContainsUnwantedMimeParts: N The branch main has been updated by glebius: URL: https://cgit.FreeBSD.org/src/commit/?id=8c77967ecc58b5db35bb285013c55492987a9061 commit 8c77967ecc58b5db35bb285013c55492987a9061 Author: Gleb Smirnoff AuthorDate: 2022-08-11 16:19:37 +0000 Commit: Gleb Smirnoff CommitDate: 2022-08-11 16:19:37 +0000 protosw: retire pr_output method The only place to execute this method was raw_usend(). Only those protocols that used raw socket were able to actually enter that method. All pr_output assignments being deleted by this commit were a dead code for many years. Reviewed by: melifaro Differential revision: https://reviews.freebsd.org/D36126 --- sys/kern/uipc_debug.c | 1 - sys/kern/uipc_domain.c | 1 - sys/netinet/ip_carp.c | 2 -- sys/netinet6/in6_proto.c | 7 ------- sys/netpfil/pf/if_pfsync.c | 1 - sys/sys/protosw.h | 9 --------- 6 files changed, 21 deletions(-) diff --git a/sys/kern/uipc_debug.c b/sys/kern/uipc_debug.c index 0abb5352bed5..ead7d0e506c0 100644 --- a/sys/kern/uipc_debug.c +++ b/sys/kern/uipc_debug.c @@ -319,7 +319,6 @@ db_print_protosw(struct protosw *pr, const char *prname, int indent) db_print_indent(indent); db_printf("pr_input: %p ", pr->pr_input); - db_printf("pr_output: %p ", pr->pr_output); db_printf("pr_ctlinput: %p\n", pr->pr_ctlinput); db_printf("pr_ctloutput: %p ", pr->pr_ctloutput); diff --git a/sys/kern/uipc_domain.c b/sys/kern/uipc_domain.c index 18a682de276e..07e5f829e957 100644 --- a/sys/kern/uipc_domain.c +++ b/sys/kern/uipc_domain.c @@ -451,7 +451,6 @@ pf_proto_unregister(int family, int protocol, int type) dpr->pr_protocol = PROTO_SPACER; dpr->pr_flags = 0; dpr->pr_input = NULL; - dpr->pr_output = NULL; dpr->pr_ctlinput = NULL; dpr->pr_ctloutput = NULL; dpr->pr_fasttimo = NULL; diff --git a/sys/netinet/ip_carp.c b/sys/netinet/ip_carp.c index 71558be619d8..013e4ea5c68b 100644 --- a/sys/netinet/ip_carp.c +++ b/sys/netinet/ip_carp.c @@ -2182,7 +2182,6 @@ static struct protosw in_carp_protosw = { .pr_protocol = IPPROTO_CARP, .pr_flags = PR_ATOMIC|PR_ADDR, .pr_input = carp_input, - .pr_output = rip_output, .pr_ctloutput = rip_ctloutput, .pr_usrreqs = &rip_usrreqs }; @@ -2196,7 +2195,6 @@ static struct protosw in6_carp_protosw = { .pr_protocol = IPPROTO_CARP, .pr_flags = PR_ATOMIC|PR_ADDR, .pr_input = carp6_input, - .pr_output = rip6_output, .pr_ctloutput = rip6_ctloutput, .pr_usrreqs = &rip6_usrreqs }; diff --git a/sys/netinet6/in6_proto.c b/sys/netinet6/in6_proto.c index 6ccd90ac6fdd..b47b726a9a71 100644 --- a/sys/netinet6/in6_proto.c +++ b/sys/netinet6/in6_proto.c @@ -217,7 +217,6 @@ struct protosw inet6sw[] = { .pr_protocol = IPPROTO_RAW, .pr_flags = PR_ATOMIC|PR_ADDR, .pr_input = rip6_input, - .pr_output = rip6_output, .pr_ctlinput = rip6_ctlinput, .pr_ctloutput = rip6_ctloutput, .pr_usrreqs = &rip6_usrreqs @@ -228,7 +227,6 @@ struct protosw inet6sw[] = { .pr_protocol = IPPROTO_ICMPV6, .pr_flags = PR_ATOMIC|PR_ADDR|PR_LASTHDR, .pr_input = icmp6_input, - .pr_output = rip6_output, .pr_ctlinput = rip6_ctlinput, .pr_ctloutput = rip6_ctloutput, .pr_fasttimo = icmp6_fasttimo, @@ -266,7 +264,6 @@ struct protosw inet6sw[] = { .pr_protocol = IPPROTO_IPV4, .pr_flags = PR_ATOMIC|PR_ADDR|PR_LASTHDR, .pr_input = encap6_input, - .pr_output = rip6_output, .pr_ctloutput = rip6_ctloutput, .pr_usrreqs = &rip6_usrreqs }, @@ -277,7 +274,6 @@ struct protosw inet6sw[] = { .pr_protocol = IPPROTO_IPV6, .pr_flags = PR_ATOMIC|PR_ADDR|PR_LASTHDR, .pr_input = encap6_input, - .pr_output = rip6_output, .pr_ctloutput = rip6_ctloutput, .pr_usrreqs = &rip6_usrreqs }, @@ -296,7 +292,6 @@ struct protosw inet6sw[] = { .pr_protocol = IPPROTO_GRE, .pr_flags = PR_ATOMIC|PR_ADDR|PR_LASTHDR, .pr_input = encap6_input, - .pr_output = rip6_output, .pr_ctloutput = rip6_ctloutput, .pr_usrreqs = &rip6_usrreqs }, @@ -306,7 +301,6 @@ struct protosw inet6sw[] = { .pr_protocol = IPPROTO_PIM, .pr_flags = PR_ATOMIC|PR_ADDR|PR_LASTHDR, .pr_input = encap6_input, - .pr_output = rip6_output, .pr_ctloutput = rip6_ctloutput, .pr_usrreqs = &rip6_usrreqs }, @@ -325,7 +319,6 @@ IP6PROTOSPACER, .pr_domain = &inet6domain, .pr_flags = PR_ATOMIC|PR_ADDR, .pr_input = rip6_input, - .pr_output = rip6_output, .pr_ctloutput = rip6_ctloutput, .pr_usrreqs = &rip6_usrreqs }, diff --git a/sys/netpfil/pf/if_pfsync.c b/sys/netpfil/pf/if_pfsync.c index 180bf4440455..47d68b3f00a1 100644 --- a/sys/netpfil/pf/if_pfsync.c +++ b/sys/netpfil/pf/if_pfsync.c @@ -2429,7 +2429,6 @@ static struct protosw in_pfsync_protosw = { .pr_protocol = IPPROTO_PFSYNC, .pr_flags = PR_ATOMIC|PR_ADDR, .pr_input = pfsync_input, - .pr_output = rip_output, .pr_ctloutput = rip_ctloutput, .pr_usrreqs = &rip_usrreqs }; diff --git a/sys/sys/protosw.h b/sys/sys/protosw.h index 85761583c30a..22e057e5691a 100644 --- a/sys/sys/protosw.h +++ b/sys/sys/protosw.h @@ -57,19 +57,11 @@ struct sockopt; * The system will call the pr_drain entry if it is low on space and * this should throw away any non-critical data. * - * Protocols pass data between themselves as chains of mbufs using - * the pr_input and pr_output hooks. Pr_input passes data up (towards - * the users) and pr_output passes it down (towards the interfaces); control - * information passes up and down on pr_ctlinput and pr_ctloutput. - * The protocol is responsible for the space occupied by any the - * arguments to these entries and must dispose it. - * * In retrospect, it would be a lot nicer to use an interface * similar to the vnode VOP interface. */ /* USE THESE FOR YOUR PROTOTYPES ! */ typedef int pr_input_t (struct mbuf **, int*, int); -typedef int pr_output_t (struct mbuf *, struct socket *, ...); typedef void pr_ctlinput_t (int, struct sockaddr *, void *); typedef int pr_ctloutput_t (struct socket *, struct sockopt *); typedef void pr_fasttimo_t (void); @@ -83,7 +75,6 @@ struct protosw { short pr_flags; /* see below */ /* protocol-protocol hooks */ pr_input_t *pr_input; /* input to protocol (from below) */ - pr_output_t *pr_output; /* output to protocol (from above) */ pr_ctlinput_t *pr_ctlinput; /* control input (from below) */ pr_ctloutput_t *pr_ctloutput; /* control output (from above) */ /* utility hooks */