[SCTP] Move rwnd accounting and I/O redrive off of the skb destructor.
When the skb was shared with Ethereal, Ethereal was sometimes the last user and the destructor would get called on another CPU, not knowing anything about our sock_lock. Move our rwnd updates and I/O redrive out of the skb destructor. Also, if unable to allocate an skb for our transmission packet, walk the packet's chunks and free the control chunks. Also change list_dels to list_del_init. Fix real later, but this prevent us from a doing damage if we list_del twice.
Showing
Please register or sign in to comment