diff options
| author | David S. Miller <davem@davemloft.net> | 2017-06-20 20:30:16 +0300 |
|---|---|---|
| committer | David S. Miller <davem@davemloft.net> | 2017-06-20 20:30:16 +0300 |
| commit | c0ca9e7201c4507e70c4d71c1997c410651fe3c5 (patch) | |
| tree | fda132505741ee4d859ae09f45966656ea557572 /include | |
| parent | ddcbabf4404606fcc3edf6e48caa9707b33d3df4 (diff) | |
| parent | b952f4dff2751252db073c27c0f8a16a416a2ddc (diff) | |
| download | linux-c0ca9e7201c4507e70c4d71c1997c410651fe3c5.tar.xz | |
Merge branch 'net-more-skb_put-work'
yuan linyu says:
====================
net: more skb_put_[data:zero] related work
yuan linyu (3):
net: introduce __skb_put_[zero, data, u8]
net: replace more place to skb_put_[data:zero]
net: manual clean code which call skb_put_[data:zero]
====================
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'include')
| -rw-r--r-- | include/linux/skbuff.h | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/include/linux/skbuff.h b/include/linux/skbuff.h index 852feacf4bbf..a17e235639ae 100644 --- a/include/linux/skbuff.h +++ b/include/linux/skbuff.h @@ -1904,6 +1904,28 @@ static inline void *__skb_put(struct sk_buff *skb, unsigned int len) return tmp; } +static inline void *__skb_put_zero(struct sk_buff *skb, unsigned int len) +{ + void *tmp = __skb_put(skb, len); + + memset(tmp, 0, len); + return tmp; +} + +static inline void *__skb_put_data(struct sk_buff *skb, const void *data, + unsigned int len) +{ + void *tmp = __skb_put(skb, len); + + memcpy(tmp, data, len); + return tmp; +} + +static inline void __skb_put_u8(struct sk_buff *skb, u8 val) +{ + *(u8 *)__skb_put(skb, 1) = val; +} + static inline void *skb_put_zero(struct sk_buff *skb, unsigned int len) { void *tmp = skb_put(skb, len); |
