From mboxrd@z Thu Jan 1 00:00:00 1970 From: Paolo Abeni Subject: Re: [RFC PATCH v3 04/10] ip: factor out protocol delivery helper Date: Fri, 02 Nov 2018 14:30:07 +0100 Message-ID: References: <06f628363fc53443f30f1d3120c5e844800b7718.1540920083.git.pabeni@redhat.com> <482631991107b8493fe7310c01d66b92@codeaurora.org> Mime-Version: 1.0 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 7bit Cc: netdev@vger.kernel.org, "David S. Miller" , Willem de Bruijn , Steffen Klassert To: Subash Abhinov Kasiviswanathan Return-path: Received: from mx1.redhat.com ([209.132.183.28]:43072 "EHLO mx1.redhat.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726897AbeKBWhT (ORCPT ); Fri, 2 Nov 2018 18:37:19 -0400 In-Reply-To: <482631991107b8493fe7310c01d66b92@codeaurora.org> Sender: netdev-owner@vger.kernel.org List-ID: On Thu, 2018-11-01 at 00:35 -0600, Subash Abhinov Kasiviswanathan wrote: > On 2018-10-30 11:24, Paolo Abeni wrote: > > So that we can re-use it at the UDP lavel in a later patch > > > > Hi Paolo > > Minor queries - > Should it be "level" instead of "lavel"? Similar comment for the ipv6 > patch as well. Indeed. Will fix in the next iteration. > > diff --git a/net/ipv4/ip_input.c b/net/ipv4/ip_input.c > > index 35a786c0aaa0..72250b4e466d 100644 > > --- a/net/ipv4/ip_input.c > > +++ b/net/ipv4/ip_input.c > > @@ -188,51 +188,50 @@ bool ip_call_ra_chain(struct sk_buff *skb) > > return false; > > } > > > > -static int ip_local_deliver_finish(struct net *net, struct sock *sk, > > struct sk_buff *skb) > > +void ip_protocol_deliver_rcu(struct net *net, struct sk_buff *skb, > > int protocol) > > Would it be better if this function was declared in include/net/ip.h & > include/net/ipv6.h rather than in net/ipv4/udp.c & net/ipv6/udp.c as in > the patch "udp: cope with UDP GRO packet misdirection" > > diff --git a/include/net/ip.h b/include/net/ip.h > index 72593e1..3d7fdb4 100644 > --- a/include/net/ip.h > +++ b/include/net/ip.h > @@ -717,4 +717,6 @@ static inline void ip_cmsg_recv(struct msghdr *msg, > struct sk_buff *skb) > int rtm_getroute_parse_ip_proto(struct nlattr *attr, u8 *ip_proto, > struct netlink_ext_ack *extack); > > +void ip_protocol_deliver_rcu(struct net *net, struct sk_buff *skb, int > proto); > + > #endif /* _IP_H */ > diff --git a/include/net/ipv6.h b/include/net/ipv6.h > index 8296505..4d4d2cfe 100644 > --- a/include/net/ipv6.h > +++ b/include/net/ipv6.h > @@ -1101,4 +1101,8 @@ int ipv6_sock_mc_join_ssm(struct sock *sk, int > ifindex, > const struct in6_addr *addr, unsigned int > mode); > int ipv6_sock_mc_drop(struct sock *sk, int ifindex, > const struct in6_addr *addr); > + > +void ip6_protocol_deliver_rcu(struct net *net, struct sk_buff *skb, int > nexthdr, > + bool have_final); > + > #endif /* _NET_IPV6_H */ > Agreed, I will do in the next iteration. Thanks, Paolo