search for: virtqueue_num

Displaying 20 results from an estimated 32 matches for "virtqueue_num".

2013 Jan 02
0
[PATCH] virtio: use chained scatterlists
...ed long flags; struct virtio_chan *chan = client->trans; + struct scatterlist *outsg = NULL, *insg = NULL; p9_debug(P9_DEBUG_TRANS, "9p debug: virtio request\n"); @@ -269,12 +270,21 @@ req_retry: /* Handle out VirtIO ring buffers */ out = pack_sg_list(chan->sg, 0, VIRTQUEUE_NUM, req->tc->sdata, req->tc->size); + if (out) { + sg_unset_end_markers(chan->sg, out - 1); + sg_mark_end(&chan->sg[out - 1]); + outsg = chan->sg; + } in = pack_sg_list(chan->sg, out, VIRTQUEUE_NUM, req->rc->sdata, req->rc->capacity); + if (in) { +...
2013 Jan 02
0
[PATCH] virtio: use chained scatterlists
...ed long flags; struct virtio_chan *chan = client->trans; + struct scatterlist *outsg = NULL, *insg = NULL; p9_debug(P9_DEBUG_TRANS, "9p debug: virtio request\n"); @@ -269,12 +270,21 @@ req_retry: /* Handle out VirtIO ring buffers */ out = pack_sg_list(chan->sg, 0, VIRTQUEUE_NUM, req->tc->sdata, req->tc->size); + if (out) { + sg_unset_end_markers(chan->sg, out - 1); + sg_mark_end(&chan->sg[out - 1]); + outsg = chan->sg; + } in = pack_sg_list(chan->sg, out, VIRTQUEUE_NUM, req->rc->sdata, req->rc->capacity); + if (in) { +...
2011 Nov 03
1
[PATCH 2 of 5] virtio: rename virtqueue_add_buf_gfp to virtqueue_add_buf
...irtqueue_add_buf(). * This is not valid on an active queue; it is useful only for device * shutdown. */ diff --git a/net/9p/trans_virtio.c b/net/9p/trans_virtio.c --- a/net/9p/trans_virtio.c +++ b/net/9p/trans_virtio.c @@ -270,7 +270,8 @@ req_retry: in = pack_sg_list(chan->sg, out, VIRTQUEUE_NUM, req->rc->sdata, req->rc->capacity); - err = virtqueue_add_buf(chan->vq, chan->sg, out, in, req->tc); + err = virtqueue_add_buf(chan->vq, chan->sg, out, in, req->tc, + GFP_ATOMIC); if (err < 0) { if (err == -ENOSPC) { chan->ring_bufs_avail = 0; @@ -...
2011 Nov 03
1
[PATCH 2 of 5] virtio: rename virtqueue_add_buf_gfp to virtqueue_add_buf
...irtqueue_add_buf(). * This is not valid on an active queue; it is useful only for device * shutdown. */ diff --git a/net/9p/trans_virtio.c b/net/9p/trans_virtio.c --- a/net/9p/trans_virtio.c +++ b/net/9p/trans_virtio.c @@ -270,7 +270,8 @@ req_retry: in = pack_sg_list(chan->sg, out, VIRTQUEUE_NUM, req->rc->sdata, req->rc->capacity); - err = virtqueue_add_buf(chan->vq, chan->sg, out, in, req->tc); + err = virtqueue_add_buf(chan->vq, chan->sg, out, in, req->tc, + GFP_ATOMIC); if (err < 0) { if (err == -ENOSPC) { chan->ring_bufs_avail = 0; @@ -...
2009 Sep 29
0
[PATCH 2/4] lguest: get rid of offset hack in example launcher
...ine _LARGEFILE64_SOURCE #define _GNU_SOURCE +#define VIRTIO_BLK_IDENTIFY_DEPRECATED #include <stdio.h> #include <string.h> #include <unistd.h> @@ -1750,8 +1751,21 @@ static void setup_block_file(const char add_feature(dev, VIRTIO_BLK_F_SEG_MAX); conf.seg_max = cpu_to_le32(VIRTQUEUE_NUM - 2); - /* Don't try to put whole struct: we have 8 bit limit. */ - set_config(dev, offsetof(struct virtio_blk_config, geometry), &conf); + /* + * We only have 8 bits of configuration space for each device. But a + * new feature for virtio_blk added a 1k 'identify' field to str...
2009 Sep 29
0
[PATCH 4/4] lguest: GET_ID "support"
...lse if (out->type & VIRTIO_BLK_T_SCSI_CMD) { fprintf(stderr, "Scsi commands unsupported\n"); *in = VIRTIO_BLK_S_UNSUPP; wlen = sizeof(*in); @@ -1751,6 +1755,9 @@ static void setup_block_file(const char add_feature(dev, VIRTIO_BLK_F_SEG_MAX); conf.seg_max = cpu_to_le32(VIRTQUEUE_NUM - 2); + /* We have GET_ID, at least for testing! */ + add_feature(dev, VIRTIO_BLK_F_GET_ID); + /* * We only have 8 bits of configuration space for each device. But a * new feature for virtio_blk added a 1k 'identify' field to struct
2009 Sep 29
0
[PATCH 2/4] lguest: get rid of offset hack in example launcher
...ine _LARGEFILE64_SOURCE #define _GNU_SOURCE +#define VIRTIO_BLK_IDENTIFY_DEPRECATED #include <stdio.h> #include <string.h> #include <unistd.h> @@ -1750,8 +1751,21 @@ static void setup_block_file(const char add_feature(dev, VIRTIO_BLK_F_SEG_MAX); conf.seg_max = cpu_to_le32(VIRTQUEUE_NUM - 2); - /* Don't try to put whole struct: we have 8 bit limit. */ - set_config(dev, offsetof(struct virtio_blk_config, geometry), &conf); + /* + * We only have 8 bits of configuration space for each device. But a + * new feature for virtio_blk added a 1k 'identify' field to str...
2009 Sep 29
0
[PATCH 4/4] lguest: GET_ID "support"
...lse if (out->type & VIRTIO_BLK_T_SCSI_CMD) { fprintf(stderr, "Scsi commands unsupported\n"); *in = VIRTIO_BLK_S_UNSUPP; wlen = sizeof(*in); @@ -1751,6 +1755,9 @@ static void setup_block_file(const char add_feature(dev, VIRTIO_BLK_F_SEG_MAX); conf.seg_max = cpu_to_le32(VIRTQUEUE_NUM - 2); + /* We have GET_ID, at least for testing! */ + add_feature(dev, VIRTIO_BLK_F_GET_ID); + /* * We only have 8 bits of configuration space for each device. But a * new feature for virtio_blk added a 1k 'identify' field to struct
2007 Nov 10
2
[PATCH] Change virtio_pci to use a shared memory area for config
This patch changes virtio_pci to use a shared memory area for virtio config info instead of using the PCI configuration space. This is closer semantically to what the virtio API exposes and is it a lot easier to implement on both ends. Signed-off-by: Anthony Liguori <aliguori@us.ibm.com> diff --git a/drivers/virtio/virtio_pci.c b/drivers/virtio/virtio_pci.c index eb9a8e0..7e6e453 100644
2007 Nov 10
2
[PATCH] Change virtio_pci to use a shared memory area for config
This patch changes virtio_pci to use a shared memory area for virtio config info instead of using the PCI configuration space. This is closer semantically to what the virtio API exposes and is it a lot easier to implement on both ends. Signed-off-by: Anthony Liguori <aliguori@us.ibm.com> diff --git a/drivers/virtio/virtio_pci.c b/drivers/virtio/virtio_pci.c index eb9a8e0..7e6e453 100644
2010 Jan 08
2
Virtio ballooning support for Lguest
Hi, I am doing working on enabling Transcendent Memory(OLS '09) support on lguest. For the same, I need ballooning support for lguest. Is there an implmentation of Virtio Balloon driver, that I can use for my purpose? Could someone give me an insight, as to how to go about, for implementing this myself, incase I dont find this patch... Thankyou. -- Gaurav Kukreja +91 997 030 1257
2010 Jan 08
2
Virtio ballooning support for Lguest
Hi, I am doing working on enabling Transcendent Memory(OLS '09) support on lguest. For the same, I need ballooning support for lguest. Is there an implmentation of Virtio Balloon driver, that I can use for my purpose? Could someone give me an insight, as to how to go about, for implementing this myself, incase I dont find this patch... Thankyou. -- Gaurav Kukreja +91 997 030 1257
2013 Feb 19
24
[PATCH 00/16] virtio ring rework.
OK, this is (ab)uses some of Paolo's patches. The first 7 are candidates for this merge window (maybe), the rest I'm not so sure about. Thanks, Rusty. Paolo Bonzini (3): scatterlist: introduce sg_unmark_end virtio-blk: reorganize virtblk_add_req virtio-blk: use virtqueue_add_sgs on req path Rusty Russell (13): virtio_ring: virtqueue_add_sgs, to add multiple sgs. virtio-blk:
2013 Feb 19
24
[PATCH 00/16] virtio ring rework.
OK, this is (ab)uses some of Paolo's patches. The first 7 are candidates for this merge window (maybe), the rest I'm not so sure about. Thanks, Rusty. Paolo Bonzini (3): scatterlist: introduce sg_unmark_end virtio-blk: reorganize virtblk_add_req virtio-blk: use virtqueue_add_sgs on req path Rusty Russell (13): virtio_ring: virtqueue_add_sgs, to add multiple sgs. virtio-blk:
2012 Aug 30
2
[PATCH v3 1/2] virtio-ring: Use threshold for switching to indirect descriptors
...void *priv; + unsigned int indirect_thresh; }; #define dev_to_virtio(dev) container_of(dev, struct virtio_device, dev) diff --git a/net/9p/trans_virtio.c b/net/9p/trans_virtio.c index 35b8911..418f933 100644 --- a/net/9p/trans_virtio.c +++ b/net/9p/trans_virtio.c @@ -52,6 +52,9 @@ #define VIRTQUEUE_NUM 128 +static unsigned int indirect_thresh; +module_param(indirect_thresh, uint, S_IRUGO); + /* a single mutex to manage channel initialization and attachment */ static DEFINE_MUTEX(virtio_9p_lock); static DECLARE_WAIT_QUEUE_HEAD(vp_wq); @@ -501,6 +504,7 @@ static int p9_virtio_probe(struct virt...
2012 Aug 30
2
[PATCH v3 1/2] virtio-ring: Use threshold for switching to indirect descriptors
...void *priv; + unsigned int indirect_thresh; }; #define dev_to_virtio(dev) container_of(dev, struct virtio_device, dev) diff --git a/net/9p/trans_virtio.c b/net/9p/trans_virtio.c index 35b8911..418f933 100644 --- a/net/9p/trans_virtio.c +++ b/net/9p/trans_virtio.c @@ -52,6 +52,9 @@ #define VIRTQUEUE_NUM 128 +static unsigned int indirect_thresh; +module_param(indirect_thresh, uint, S_IRUGO); + /* a single mutex to manage channel initialization and attachment */ static DEFINE_MUTEX(virtio_9p_lock); static DECLARE_WAIT_QUEUE_HEAD(vp_wq); @@ -501,6 +504,7 @@ static int p9_virtio_probe(struct virt...
2013 Mar 18
28
[PATCH 00/22] virtqueue_add_sgs, virtqueue_add_outbuf, virtqueue_add_inbuf
Add virtqueue_add_sgs which is more general than virtqueue_add_buf, which makes virtio-scsi and virtio-blk nicer, then add virtqueue_add_inbuf and virtqueue_add_outbuf which handle the more general case, and finally delete virtqueue_add_buf(). I'm hoping this will be the final post of the whole series, and it can move from my pending-rebases tree into virtio-next. Thanks! Rusty. Paolo
2013 Mar 18
28
[PATCH 00/22] virtqueue_add_sgs, virtqueue_add_outbuf, virtqueue_add_inbuf
Add virtqueue_add_sgs which is more general than virtqueue_add_buf, which makes virtio-scsi and virtio-blk nicer, then add virtqueue_add_inbuf and virtqueue_add_outbuf which handle the more general case, and finally delete virtqueue_add_buf(). I'm hoping this will be the final post of the whole series, and it can move from my pending-rebases tree into virtio-next. Thanks! Rusty. Paolo
2007 Dec 21
0
[kvm-devel] [Virtio-for-kvm] [PATCH 2/13] [Mostly resend] virtio additions
...fd; + + fd = open_or_die("/dev/urandom", O_RDONLY); + + /* The device responds to return from I/O thread. */ + dev = new_device("rng", VIRTIO_ID_RNG, fd, handle_rng_input); + + /* The device has one virtqueue, where the Guest places inbufs. */ + add_virtqueue(dev, VIRTQUEUE_NUM, enable_fd); + + verbose("device %u: rng\n", devices.device_num); +} +/* That's the end of device setup. */ + /*L:220 Finally we reach the core of the Launcher, which runs the Guest, serves * its input and output, and finally, lays it to rest. */ static void __attribute__((nor...
2007 Dec 21
0
[kvm-devel] [Virtio-for-kvm] [PATCH 2/13] [Mostly resend] virtio additions
...fd; + + fd = open_or_die("/dev/urandom", O_RDONLY); + + /* The device responds to return from I/O thread. */ + dev = new_device("rng", VIRTIO_ID_RNG, fd, handle_rng_input); + + /* The device has one virtqueue, where the Guest places inbufs. */ + add_virtqueue(dev, VIRTQUEUE_NUM, enable_fd); + + verbose("device %u: rng\n", devices.device_num); +} +/* That's the end of device setup. */ + /*L:220 Finally we reach the core of the Launcher, which runs the Guest, serves * its input and output, and finally, lays it to rest. */ static void __attribute__((nor...