summaryrefslogtreecommitdiffstats
path: root/include/linux/virtio.h
diff options
context:
space:
mode:
authorIngo Molnar <mingo@elte.hu>2011-06-04 12:28:05 +0200
committerIngo Molnar <mingo@elte.hu>2011-06-04 12:28:05 +0200
commit3ce2a0bc9dfb6423491afe0afc9f099e24b8cba4 (patch)
tree58fbef582846fef0e777b1a552aca12e21a071b1 /include/linux/virtio.h
parentaef29bf20bd79c73992ab23d5067e9f0448b466e (diff)
parentaa4a221875873d2a1f9656cb7fd7e545e952b4fa (diff)
downloadtalos-obmc-linux-3ce2a0bc9dfb6423491afe0afc9f099e24b8cba4.tar.gz
talos-obmc-linux-3ce2a0bc9dfb6423491afe0afc9f099e24b8cba4.zip
Merge branch 'perf/urgent' into perf/core
Conflicts: tools/perf/util/python.c Merge reason: resolve the conflict with perf/urgent. Signed-off-by: Ingo Molnar <mingo@elte.hu>
Diffstat (limited to 'include/linux/virtio.h')
-rw-r--r--include/linux/virtio.h9
1 files changed, 9 insertions, 0 deletions
diff --git a/include/linux/virtio.h b/include/linux/virtio.h
index aff5b4f74041..710885749605 100644
--- a/include/linux/virtio.h
+++ b/include/linux/virtio.h
@@ -51,6 +51,13 @@ struct virtqueue {
* This re-enables callbacks; it returns "false" if there are pending
* buffers in the queue, to detect a possible race between the driver
* checking for more work, and enabling callbacks.
+ * virtqueue_enable_cb_delayed: restart callbacks after disable_cb.
+ * vq: the struct virtqueue we're talking about.
+ * This re-enables callbacks but hints to the other side to delay
+ * interrupts until most of the available buffers have been processed;
+ * it returns "false" if there are many pending buffers in the queue,
+ * to detect a possible race between the driver checking for more work,
+ * and enabling callbacks.
* virtqueue_detach_unused_buf: detach first unused buffer
* vq: the struct virtqueue we're talking about.
* Returns NULL or the "data" token handed to add_buf
@@ -86,6 +93,8 @@ void virtqueue_disable_cb(struct virtqueue *vq);
bool virtqueue_enable_cb(struct virtqueue *vq);
+bool virtqueue_enable_cb_delayed(struct virtqueue *vq);
+
void *virtqueue_detach_unused_buf(struct virtqueue *vq);
/**
OpenPOWER on IntegriCloud