aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/include/linux/virtio.h
diff options
context:
space:
mode:
authorJohn Fastabend <john.fastabend@gmail.com>2017-02-02 19:16:01 -0800
committerDavid S. Miller <davem@davemloft.net>2017-02-07 10:05:12 -0500
commit9fe7bfce8b3e112e8e08c40deb72ee7e24c6f072 (patch)
treecb9910cfafe6c9d2cb9525fc86dfd474859d52fc /include/linux/virtio.h
parentvirtio_net: remove duplicate queue pair binding in XDP (diff)
downloadwireguard-linux-9fe7bfce8b3e112e8e08c40deb72ee7e24c6f072.tar.xz
wireguard-linux-9fe7bfce8b3e112e8e08c40deb72ee7e24c6f072.zip
virtio_net: refactor freeze/restore logic into virtnet reset logic
For XDP we will need to reset the queues to allow for buffer headroom to be configured. In order to do this we need to essentially run the freeze()/restore() code path. Unfortunately the locking requirements between the freeze/restore and reset paths are different however so we can not simply reuse the code. This patch refactors the code path and adds a reset helper routine. Signed-off-by: John Fastabend <john.r.fastabend@intel.com> Acked-by: Jason Wang <jasowang@redhat.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'include/linux/virtio.h')
-rw-r--r--include/linux/virtio.h4
1 files changed, 4 insertions, 0 deletions
diff --git a/include/linux/virtio.h b/include/linux/virtio.h
index d5eb5479a425..04b0d3f95043 100644
--- a/include/linux/virtio.h
+++ b/include/linux/virtio.h
@@ -132,12 +132,16 @@ static inline struct virtio_device *dev_to_virtio(struct device *_dev)
return container_of(_dev, struct virtio_device, dev);
}
+void virtio_add_status(struct virtio_device *dev, unsigned int status);
int register_virtio_device(struct virtio_device *dev);
void unregister_virtio_device(struct virtio_device *dev);
void virtio_break_device(struct virtio_device *dev);
void virtio_config_changed(struct virtio_device *dev);
+void virtio_config_disable(struct virtio_device *dev);
+void virtio_config_enable(struct virtio_device *dev);
+int virtio_finalize_features(struct virtio_device *dev);
#ifdef CONFIG_PM_SLEEP
int virtio_device_freeze(struct virtio_device *dev);
int virtio_device_restore(struct virtio_device *dev);