diff options
Diffstat (limited to 'include/linux/skbuff.h')
-rw-r--r-- | include/linux/skbuff.h | 19 |
1 files changed, 17 insertions, 2 deletions
diff --git a/include/linux/skbuff.h b/include/linux/skbuff.h index b93117389cfe..09b7ea566d66 100644 --- a/include/linux/skbuff.h +++ b/include/linux/skbuff.h | |||
@@ -218,6 +218,9 @@ enum { | |||
218 | 218 | ||
219 | /* device driver supports TX zero-copy buffers */ | 219 | /* device driver supports TX zero-copy buffers */ |
220 | SKBTX_DEV_ZEROCOPY = 1 << 4, | 220 | SKBTX_DEV_ZEROCOPY = 1 << 4, |
221 | |||
222 | /* generate wifi status information (where possible) */ | ||
223 | SKBTX_WIFI_STATUS = 1 << 5, | ||
221 | }; | 224 | }; |
222 | 225 | ||
223 | /* | 226 | /* |
@@ -352,6 +355,8 @@ typedef unsigned char *sk_buff_data_t; | |||
352 | * @ooo_okay: allow the mapping of a socket to a queue to be changed | 355 | * @ooo_okay: allow the mapping of a socket to a queue to be changed |
353 | * @l4_rxhash: indicate rxhash is a canonical 4-tuple hash over transport | 356 | * @l4_rxhash: indicate rxhash is a canonical 4-tuple hash over transport |
354 | * ports. | 357 | * ports. |
358 | * @wifi_acked_valid: wifi_acked was set | ||
359 | * @wifi_acked: whether frame was acked on wifi or not | ||
355 | * @dma_cookie: a cookie to one of several possible DMA operations | 360 | * @dma_cookie: a cookie to one of several possible DMA operations |
356 | * done by skb DMA functions | 361 | * done by skb DMA functions |
357 | * @secmark: security marking | 362 | * @secmark: security marking |
@@ -445,10 +450,11 @@ struct sk_buff { | |||
445 | #endif | 450 | #endif |
446 | __u8 ooo_okay:1; | 451 | __u8 ooo_okay:1; |
447 | __u8 l4_rxhash:1; | 452 | __u8 l4_rxhash:1; |
453 | __u8 wifi_acked_valid:1; | ||
454 | __u8 wifi_acked:1; | ||
455 | /* 10/12 bit hole (depending on ndisc_nodetype presence) */ | ||
448 | kmemcheck_bitfield_end(flags2); | 456 | kmemcheck_bitfield_end(flags2); |
449 | 457 | ||
450 | /* 0/13 bit hole */ | ||
451 | |||
452 | #ifdef CONFIG_NET_DMA | 458 | #ifdef CONFIG_NET_DMA |
453 | dma_cookie_t dma_cookie; | 459 | dma_cookie_t dma_cookie; |
454 | #endif | 460 | #endif |
@@ -2265,6 +2271,15 @@ static inline void skb_tx_timestamp(struct sk_buff *skb) | |||
2265 | sw_tx_timestamp(skb); | 2271 | sw_tx_timestamp(skb); |
2266 | } | 2272 | } |
2267 | 2273 | ||
2274 | /** | ||
2275 | * skb_complete_wifi_ack - deliver skb with wifi status | ||
2276 | * | ||
2277 | * @skb: the original outgoing packet | ||
2278 | * @acked: ack status | ||
2279 | * | ||
2280 | */ | ||
2281 | void skb_complete_wifi_ack(struct sk_buff *skb, bool acked); | ||
2282 | |||
2268 | extern __sum16 __skb_checksum_complete_head(struct sk_buff *skb, int len); | 2283 | extern __sum16 __skb_checksum_complete_head(struct sk_buff *skb, int len); |
2269 | extern __sum16 __skb_checksum_complete(struct sk_buff *skb); | 2284 | extern __sum16 __skb_checksum_complete(struct sk_buff *skb); |
2270 | 2285 | ||