[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <5153B506.40105@redhat.com>
Date: Thu, 28 Mar 2013 11:12:06 +0800
From: Jason Wang <jasowang@...hat.com>
To: Ying Xue <ying.xue@...driver.com>
CC: netdev@...r.kernel.org, davem@...emloft.net, edumazet@...gle.com
Subject: Re: [PATCH net-next] net: fix compile error of implicit declaration
of skb_probe_transport_header
On 03/28/2013 10:46 AM, Ying Xue wrote:
> The commit 40893fd(net: switch to use skb_probe_transport_header())
> involes a new error accidently. When NET_SKBUFF_DATA_USES_OFFSE is
> not enabled, below compile error happens:
>
> CC net/packet/af_packet.o
> net/packet/af_packet.c: In function ‘packet_sendmsg_spkt’:
> net/packet/af_packet.c:1516:2: error: implicit declaration of function ‘skb_probe_transport_header’ [-Werror=implicit-function-declaration]
> cc1: some warnings being treated as errors
> make[2]: *** [net/packet/af_packet.o] Error 1
> make[1]: *** [net/packet] Error 2
> make: *** [net] Error 2
>
> As it seems skb_probe_transport_header() is not related to
> NET_SKBUFF_DATA_USES_OFFSE, we should move the definition of
> skb_probe_transport_header() out of scope of
> NET_SKBUFF_DATA_USES_OFFSE macro.
>
> Cc: Jason Wang <jasowang@...hat.com>
> Cc: Eric Dumazet <edumazet@...gle.com>
> Signed-off-by: Ying Xue <ying.xue@...driver.com>
> ---
> include/linux/skbuff.h | 26 +++++++++++++-------------
> 1 file changed, 13 insertions(+), 13 deletions(-)
Oops.
Acked-by: Jason Wang <jasowang@...hat.com>
Thanks
>
> diff --git a/include/linux/skbuff.h b/include/linux/skbuff.h
> index fa88b96..878e0ee 100644
> --- a/include/linux/skbuff.h
> +++ b/include/linux/skbuff.h
> @@ -1560,19 +1560,6 @@ static inline void skb_set_transport_header(struct sk_buff *skb,
> skb->transport_header += offset;
> }
>
> -static inline void skb_probe_transport_header(struct sk_buff *skb,
> - const int offset_hint)
> -{
> - struct flow_keys keys;
> -
> - if (skb_transport_header_was_set(skb))
> - return;
> - else if (skb_flow_dissect(skb, &keys))
> - skb_set_transport_header(skb, keys.thoff);
> - else
> - skb_set_transport_header(skb, offset_hint);
> -}
> -
> static inline unsigned char *skb_network_header(const struct sk_buff *skb)
> {
> return skb->head + skb->network_header;
> @@ -1716,6 +1703,19 @@ static inline void skb_set_mac_header(struct sk_buff *skb, const int offset)
> }
> #endif /* NET_SKBUFF_DATA_USES_OFFSET */
>
> +static inline void skb_probe_transport_header(struct sk_buff *skb,
> + const int offset_hint)
> +{
> + struct flow_keys keys;
> +
> + if (skb_transport_header_was_set(skb))
> + return;
> + else if (skb_flow_dissect(skb, &keys))
> + skb_set_transport_header(skb, keys.thoff);
> + else
> + skb_set_transport_header(skb, offset_hint);
> +}
> +
> static inline void skb_mac_header_rebuild(struct sk_buff *skb)
> {
> if (skb_mac_header_was_set(skb)) {
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Powered by blists - more mailing lists