]> git.baikalelectronics.ru Git - kernel.git/commit
virtio_net: fix use after free
authorMichael S. Tsirkin <mst@redhat.com>
Wed, 15 Oct 2014 13:23:28 +0000 (16:23 +0300)
committerDavid S. Miller <davem@davemloft.net>
Wed, 15 Oct 2014 20:47:45 +0000 (16:47 -0400)
commit51fc7929cee928395b63c23e99da9a037d5ab103
treee4e32b6121ab17b8b21aac673a69e16bace31c28
parent86e0d62cd705d463ef5f0fb7e8cc3757a97a9989
virtio_net: fix use after free

commit 434f1d33383da5404d6421209ad34411b923fd90
    net: Remove ndo_xmit_flush netdev operation, use signalling instead.

added code that looks at skb->xmit_more after the skb has
been put in TX VQ. Since some paths process the ring and free the skb
immediately, this can cause use after free.

Fix by storing xmit_more in a local variable.

Cc: David S. Miller <davem@davemloft.net>
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/virtio_net.c