net: add inline function skb_csum_is_sctp
This patch is to define a inline function skb_csum_is_sctp(), and also replace all places where it checks if it's a SCTP CSUM skb. This function would be used later in many networking drivers in the following patches. Suggested-by: Alexander Duyck <alexander.duyck@gmail.com> Signed-off-by: Xin Long <lucien.xin@gmail.com> Reviewed-by: Alexander Duyck <alexanderduyck@fb.com> Signed-off-by: Jakub Kicinski <kuba@kernel.org> Signed-off-by: hongrongxuan <hongrongxuan@huawei.com>
This commit is contained in:
parent
fd23055d7f
commit
599e4e0f53
|
@ -740,7 +740,7 @@ static int ionic_tx_calc_csum(struct ionic_queue *q, struct sk_buff *skb)
|
|||
desc->csum_start = cpu_to_le16(skb_checksum_start_offset(skb));
|
||||
desc->csum_offset = cpu_to_le16(skb->csum_offset);
|
||||
|
||||
if (skb->csum_not_inet)
|
||||
if (skb_csum_is_sctp(skb))
|
||||
stats->crc32_csum++;
|
||||
else
|
||||
stats->csum++;
|
||||
|
|
|
@ -4583,5 +4583,10 @@ static inline void skb_reset_redirect(struct sk_buff *skb)
|
|||
#endif
|
||||
}
|
||||
|
||||
static inline bool skb_csum_is_sctp(struct sk_buff *skb)
|
||||
{
|
||||
return skb->csum_not_inet;
|
||||
}
|
||||
|
||||
#endif /* __KERNEL__ */
|
||||
#endif /* _LINUX_SKBUFF_H */
|
||||
|
|
|
@ -3249,7 +3249,7 @@ static struct sk_buff *validate_xmit_vlan(struct sk_buff *skb,
|
|||
int skb_csum_hwoffload_help(struct sk_buff *skb,
|
||||
const netdev_features_t features)
|
||||
{
|
||||
if (unlikely(skb->csum_not_inet))
|
||||
if (unlikely(skb_csum_is_sctp(skb)))
|
||||
return !!(features & NETIF_F_SCTP_CRC) ? 0 :
|
||||
skb_crc32c_csum_help(skb);
|
||||
|
||||
|
|
Loading…
Reference in New Issue