diff options
Diffstat (limited to 'include/linux/netdevice.h')
| -rw-r--r-- | include/linux/netdevice.h | 19 |
1 files changed, 12 insertions, 7 deletions
diff --git a/include/linux/netdevice.h b/include/linux/netdevice.h index 01646aa53b0e..561c8bc8976d 100644 --- a/include/linux/netdevice.h +++ b/include/linux/netdevice.h | |||
| @@ -1497,19 +1497,25 @@ struct napi_gro_cb { | |||
| 1497 | /* This indicates where we are processing relative to skb->data. */ | 1497 | /* This indicates where we are processing relative to skb->data. */ |
| 1498 | int data_offset; | 1498 | int data_offset; |
| 1499 | 1499 | ||
| 1500 | /* This is non-zero if the packet may be of the same flow. */ | ||
| 1501 | int same_flow; | ||
| 1502 | |||
| 1503 | /* This is non-zero if the packet cannot be merged with the new skb. */ | 1500 | /* This is non-zero if the packet cannot be merged with the new skb. */ |
| 1504 | int flush; | 1501 | int flush; |
| 1505 | 1502 | ||
| 1506 | /* Number of segments aggregated. */ | 1503 | /* Number of segments aggregated. */ |
| 1507 | int count; | 1504 | u16 count; |
| 1505 | |||
| 1506 | /* This is non-zero if the packet may be of the same flow. */ | ||
| 1507 | u8 same_flow; | ||
| 1508 | 1508 | ||
| 1509 | /* Free the skb? */ | 1509 | /* Free the skb? */ |
| 1510 | int free; | 1510 | u8 free; |
| 1511 | #define NAPI_GRO_FREE 1 | 1511 | #define NAPI_GRO_FREE 1 |
| 1512 | #define NAPI_GRO_FREE_STOLEN_HEAD 2 | 1512 | #define NAPI_GRO_FREE_STOLEN_HEAD 2 |
| 1513 | |||
| 1514 | /* jiffies when first packet was created/queued */ | ||
| 1515 | unsigned long age; | ||
| 1516 | |||
| 1517 | /* Used in ipv6_gro_receive() */ | ||
| 1518 | int proto; | ||
| 1513 | }; | 1519 | }; |
| 1514 | 1520 | ||
| 1515 | #define NAPI_GRO_CB(skb) ((struct napi_gro_cb *)(skb)->cb) | 1521 | #define NAPI_GRO_CB(skb) ((struct napi_gro_cb *)(skb)->cb) |
| @@ -1663,7 +1669,6 @@ extern int netpoll_trap(void); | |||
| 1663 | #endif | 1669 | #endif |
| 1664 | extern int skb_gro_receive(struct sk_buff **head, | 1670 | extern int skb_gro_receive(struct sk_buff **head, |
| 1665 | struct sk_buff *skb); | 1671 | struct sk_buff *skb); |
| 1666 | extern void skb_gro_reset_offset(struct sk_buff *skb); | ||
| 1667 | 1672 | ||
| 1668 | static inline unsigned int skb_gro_offset(const struct sk_buff *skb) | 1673 | static inline unsigned int skb_gro_offset(const struct sk_buff *skb) |
| 1669 | { | 1674 | { |
| @@ -2157,7 +2162,7 @@ extern gro_result_t dev_gro_receive(struct napi_struct *napi, | |||
| 2157 | extern gro_result_t napi_skb_finish(gro_result_t ret, struct sk_buff *skb); | 2162 | extern gro_result_t napi_skb_finish(gro_result_t ret, struct sk_buff *skb); |
| 2158 | extern gro_result_t napi_gro_receive(struct napi_struct *napi, | 2163 | extern gro_result_t napi_gro_receive(struct napi_struct *napi, |
| 2159 | struct sk_buff *skb); | 2164 | struct sk_buff *skb); |
| 2160 | extern void napi_gro_flush(struct napi_struct *napi); | 2165 | extern void napi_gro_flush(struct napi_struct *napi, bool flush_old); |
| 2161 | extern struct sk_buff * napi_get_frags(struct napi_struct *napi); | 2166 | extern struct sk_buff * napi_get_frags(struct napi_struct *napi); |
| 2162 | extern gro_result_t napi_frags_finish(struct napi_struct *napi, | 2167 | extern gro_result_t napi_frags_finish(struct napi_struct *napi, |
| 2163 | struct sk_buff *skb, | 2168 | struct sk_buff *skb, |
