From: Eric Dumazet <[email protected]> Date: Wed, 11 Oct 2017 13:27:29 -0700
> From: Eric Dumazet <[email protected]> > > Yury reported crash with this signature : > > [ 554.034021] [<ffff80003ccd5a58>] 0xffff80003ccd5a58 > [ 554.034156] [<ffff00000888fd34>] skb_release_all+0x14/0x30 > [ 554.034288] [<ffff00000888fd64>] __kfree_skb+0x14/0x28 > [ 554.034409] [<ffff0000088ece6c>] tcp_sendmsg_locked+0x4dc/0xcc8 > [ 554.034541] [<ffff0000088ed68c>] tcp_sendmsg+0x34/0x58 > [ 554.034659] [<ffff000008919fd4>] inet_sendmsg+0x2c/0xf8 > [ 554.034783] [<ffff0000088842e8>] sock_sendmsg+0x18/0x30 > [ 554.034928] [<ffff0000088861fc>] SyS_sendto+0x84/0xf8 > > Problem is that skb->destructor contains garbage, and this is > because I accidentally removed tcp_skb_tsorted_anchor_cleanup() > from tcp_unlink_write_queue() > > This would trigger with a write(fd, <invalid_memory>, len) attempt, > and we will add to packetdrill this capability to avoid future > regressions. > > Fixes: 75c119afe14f ("tcp: implement rb-tree based retransmit queue") > Reported-by: Yury Norov <[email protected]> > Tested-by: Yury Norov <[email protected]> > Signed-off-by: Eric Dumazet <[email protected]> Applied, thanks Eric.
