diff mbox

[v2] netlink: reset skb->peeked when reuse orphan skb for next broadcast

Message ID 20150710122134.21653.46736.stgit@buzz
State Not Applicable, archived
Delegated to: David Miller
Headers show

Commit Message

Konstantin Khlebnikov July 10, 2015, 12:21 p.m. UTC
This patch clears skb->peeked set by previous recipient of broadcast.

Signed-off-by: Konstantin Khlebnikov <khlebnikov@yandex-team.ru>
Fixes: add05ad4e9f5 ("unix/dgram: peek beyond 0-sized skbs")
---
 net/netlink/af_netlink.c |    1 +
 1 file changed, 1 insertion(+)


--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Comments

Herbert Xu July 13, 2015, 8:05 a.m. UTC | #1
On Fri, Jul 10, 2015 at 03:21:34PM +0300, Konstantin Khlebnikov wrote:
> This patch clears skb->peeked set by previous recipient of broadcast.
> 
> Signed-off-by: Konstantin Khlebnikov <khlebnikov@yandex-team.ru>
> Fixes: add05ad4e9f5 ("unix/dgram: peek beyond 0-sized skbs")

Per my earlier email, this patch is not needed if we fix the root
cause.

Thanks,
diff mbox

Patch

diff --git a/net/netlink/af_netlink.c b/net/netlink/af_netlink.c
index 921e0d8dfe3a..f4427f4bf223 100644
--- a/net/netlink/af_netlink.c
+++ b/net/netlink/af_netlink.c
@@ -1967,6 +1967,7 @@  static void do_one_broadcast(struct sock *sk,
 			 * delivered to a previous socket.
 			 */
 			skb_orphan(p->skb2);
+			p->skb2->peeked = 0;
 		}
 	}
 	if (p->skb2 == NULL) {