vhost: check for vhost_ops before using.
'vhost_set_vring_enable()' tries to call function using pointer to 'vhost_ops' which can be already zeroized in 'vhost_dev_cleanup()' while vhost disconnection. Fix that by checking 'vhost_ops' before using. This fixes QEMU crash on calling 'ethtool -L eth0 combined 2' if vhost disconnected. Signed-off-by: Ilya Maximets <i.maximets@samsung.com> Reviewed-by: Michael S. Tsirkin <mst@redhat.com> Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
This commit is contained in:
parent
53279c76cf
commit
ca10203cde
|
@ -428,7 +428,7 @@ int vhost_set_vring_enable(NetClientState *nc, int enable)
|
||||||
|
|
||||||
nc->vring_enable = enable;
|
nc->vring_enable = enable;
|
||||||
|
|
||||||
if (vhost_ops->vhost_set_vring_enable) {
|
if (vhost_ops && vhost_ops->vhost_set_vring_enable) {
|
||||||
return vhost_ops->vhost_set_vring_enable(&net->dev, enable);
|
return vhost_ops->vhost_set_vring_enable(&net->dev, enable);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue