diff options
| author | Ingo Molnar <mingo@kernel.org> | 2017-09-04 11:01:18 +0200 |
|---|---|---|
| committer | Ingo Molnar <mingo@kernel.org> | 2017-09-04 11:01:18 +0200 |
| commit | edc2988c548db05e33b921fed15821010bc74895 (patch) | |
| tree | b35860428acea35e5866d4cf007519ed943a85de /net/tipc/msg.c | |
| parent | d82fed75294229abc9d757f08a4817febae6c4f4 (diff) | |
| parent | 81a84ad3cb5711cec79f4dd53a4ce026b092c432 (diff) | |
| download | blackbird-op-linux-edc2988c548db05e33b921fed15821010bc74895.tar.gz blackbird-op-linux-edc2988c548db05e33b921fed15821010bc74895.zip | |
Merge branch 'linus' into locking/core, to fix up conflicts
Conflicts:
mm/page_alloc.c
Signed-off-by: Ingo Molnar <mingo@kernel.org>
Diffstat (limited to 'net/tipc/msg.c')
| -rw-r--r-- | net/tipc/msg.c | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/net/tipc/msg.c b/net/tipc/msg.c index dcd90e6fa7c3..6ef379f004ac 100644 --- a/net/tipc/msg.c +++ b/net/tipc/msg.c @@ -479,13 +479,14 @@ bool tipc_msg_make_bundle(struct sk_buff **skb, struct tipc_msg *msg, bool tipc_msg_reverse(u32 own_node, struct sk_buff **skb, int err) { struct sk_buff *_skb = *skb; - struct tipc_msg *hdr = buf_msg(_skb); + struct tipc_msg *hdr; struct tipc_msg ohdr; - int dlen = min_t(uint, msg_data_sz(hdr), MAX_FORWARD_SIZE); + int dlen; if (skb_linearize(_skb)) goto exit; hdr = buf_msg(_skb); + dlen = min_t(uint, msg_data_sz(hdr), MAX_FORWARD_SIZE); if (msg_dest_droppable(hdr)) goto exit; if (msg_errcode(hdr)) @@ -511,6 +512,8 @@ bool tipc_msg_reverse(u32 own_node, struct sk_buff **skb, int err) pskb_expand_head(_skb, BUF_HEADROOM, BUF_TAILROOM, GFP_ATOMIC)) goto exit; + /* reassign after skb header modifications */ + hdr = buf_msg(_skb); /* Now reverse the concerned fields */ msg_set_errcode(hdr, err); msg_set_non_seq(hdr, 0); |

