Displaying 4 results from an estimated 4 matches for "virtio_blk_handle_output".
2012 Dec 18
1
[Qemu-devel] [PATCH v6 12/12] virtio-blk: add x-data-plane=on|off performance feature
On Tue, Dec 18, 2012 at 03:57:17PM +0100, Stefan Hajnoczi wrote:
> > > @@ -407,6 +409,14 @@ static void virtio_blk_handle_output(VirtIODevice *vdev, VirtQueue *vq)
> > > .num_writes = 0,
> > > };
> > >
> > > + /* Some guests kick before setting VIRTIO_CONFIG_S_DRIVER_OK so start
> > > + * dataplane here instead of waiting for .set_status().
> > > +...
2012 Dec 18
1
[Qemu-devel] [PATCH v6 12/12] virtio-blk: add x-data-plane=on|off performance feature
On Tue, Dec 18, 2012 at 03:57:17PM +0100, Stefan Hajnoczi wrote:
> > > @@ -407,6 +409,14 @@ static void virtio_blk_handle_output(VirtIODevice *vdev, VirtQueue *vq)
> > > .num_writes = 0,
> > > };
> > >
> > > + /* Some guests kick before setting VIRTIO_CONFIG_S_DRIVER_OK so start
> > > + * dataplane here instead of waiting for .set_status().
> > > +...
2007 Dec 21
0
[Virtio-for-kvm] [PATCH 3/7] userspace virtio
...write scatter-gather list */
+struct virtio_blk_inhdr
+{
+ unsigned char status;
+};
+
+typedef struct VirtIOBlock
+{
+ VirtIODevice vdev;
+ BlockDriverState *bs;
+} VirtIOBlock;
+
+static VirtIOBlock *to_virtio_blk(VirtIODevice *vdev)
+{
+ return (VirtIOBlock *)vdev;
+}
+
+static void virtio_blk_handle_output(VirtIODevice *vdev, VirtQueue *vq)
+{
+ VirtIOBlock *s = to_virtio_blk(vdev);
+ VirtQueueElement elem;
+ unsigned int count;
+
+ while ((count = virtqueue_pop(vq, &elem)) != 0) {
+ struct virtio_blk_inhdr *in;
+ struct virtio_blk_outhdr *out;
+ unsigned int wlen;
+ off_t...
2007 Dec 21
0
[Virtio-for-kvm] [PATCH 3/7] userspace virtio
...write scatter-gather list */
+struct virtio_blk_inhdr
+{
+ unsigned char status;
+};
+
+typedef struct VirtIOBlock
+{
+ VirtIODevice vdev;
+ BlockDriverState *bs;
+} VirtIOBlock;
+
+static VirtIOBlock *to_virtio_blk(VirtIODevice *vdev)
+{
+ return (VirtIOBlock *)vdev;
+}
+
+static void virtio_blk_handle_output(VirtIODevice *vdev, VirtQueue *vq)
+{
+ VirtIOBlock *s = to_virtio_blk(vdev);
+ VirtQueueElement elem;
+ unsigned int count;
+
+ while ((count = virtqueue_pop(vq, &elem)) != 0) {
+ struct virtio_blk_inhdr *in;
+ struct virtio_blk_outhdr *out;
+ unsigned int wlen;
+ off_t...