From: Michael S. Tsirkin Date: Sun, 7 Jul 2013 11:26:53 +0000 (+0300) Subject: vhost-net: fix use-after-free in vhost_net_flush X-Git-Tag: v3.11-rc1~64^2~2 X-Git-Url: http://git.openpandora.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=dd7633ecd553a5e304d349aa6f8eb8a0417098c5;p=pandora-kernel.git vhost-net: fix use-after-free in vhost_net_flush vhost_net_ubuf_put_and_wait has a confusing name: it will actually also free it's argument. Thus since commit 1280c27f8e29acf4af2da914e80ec27c3dbd5c01 "vhost-net: flush outstanding DMAs on memory change" vhost_net_flush tries to use the argument after passing it to vhost_net_ubuf_put_and_wait, this results in use after free. To fix, don't free the argument in vhost_net_ubuf_put_and_wait, add an new API for callers that want to free ubufs. Acked-by: Asias He Acked-by: Jason Wang Signed-off-by: Michael S. Tsirkin Signed-off-by: David S. Miller --- Reading git-diff-tree failed