提交 30f3a40f 编写于 作者: C Cong Wang 提交者: David S. Miller

net: remove last caller of skb_tail_offset() and itself

Similar to the following commits:

commit 00f97da1 (netpoll: fix position of network header)
commit 525cebed (pktgen: Fix position of ip and udp header)

using skb_tail_offset() seems not correct since the offset
is based on head pointer.

With the last caller removed, skb_tail_offset() can be killed
finally.

Cc: Thomas Graf <tgraf@suug.ch>
Cc: Daniel Borkmann <dborkmann@redhat.com>
Cc: David S. Miller <davem@davemloft.net>
Signed-off-by: NCong Wang <amwang@redhat.com>
Signed-off-by: NDavid S. Miller <davem@davemloft.net>
上级 0a4db187
......@@ -1396,10 +1396,6 @@ static inline void skb_set_tail_pointer(struct sk_buff *skb, const int offset)
skb->tail += offset;
}
static inline unsigned long skb_tail_offset(const struct sk_buff *skb)
{
return skb->tail;
}
#else /* NET_SKBUFF_DATA_USES_OFFSET */
static inline unsigned char *skb_tail_pointer(const struct sk_buff *skb)
{
......@@ -1416,10 +1412,6 @@ static inline void skb_set_tail_pointer(struct sk_buff *skb, const int offset)
skb->tail = skb->data + offset;
}
static inline unsigned long skb_tail_offset(const struct sk_buff *skb)
{
return skb->tail - skb->head;
}
#endif /* NET_SKBUFF_DATA_USES_OFFSET */
/*
......
......@@ -945,7 +945,6 @@ static int ipmr_cache_report(struct mr_table *mrt,
struct igmpmsg *msg;
struct sock *mroute_sk;
int ret;
unsigned long tail_offset;
#ifdef CONFIG_IP_PIMSM
if (assert == IGMPMSG_WHOLEPKT)
......@@ -981,12 +980,7 @@ static int ipmr_cache_report(struct mr_table *mrt,
/* Copy the IP header */
tail_offset = skb_tail_offset(skb);
if (tail_offset > 0xffff) {
kfree_skb(skb);
return -EINVAL;
}
skb_set_network_header(skb, tail_offset);
skb_set_network_header(skb, skb->len);
skb_put(skb, ihl);
skb_copy_to_linear_data(skb, pkt->data, ihl);
ip_hdr(skb)->protocol = 0; /* Flag to the kernel this is a route add */
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册