Displaying 20 results from an estimated 33 matches for "rp_find_vq".
Did you mean:
vp_find_vq
2018 Dec 28
0
[PATCH v1 2/2] virtio: don't allocate vqs when names[i] = NULL
...c
+++ b/drivers/remoteproc/remoteproc_virtio.c
@@ -153,10 +153,15 @@ static int rproc_virtio_find_vqs(struct virtio_device *vdev, unsigned int nvqs,
const bool * ctx,
struct irq_affinity *desc)
{
- int i, ret;
+ int i, ret, queue_idx = 0;
for (i = 0; i < nvqs; ++i) {
- vqs[i] = rp_find_vq(vdev, i, callbacks[i], names[i],
+ if (!names[i]) {
+ vqs[i] = NULL;
+ continue;
+ }
+
+ vqs[i] = rp_find_vq(vdev, queue_idx++, callbacks[i], names[i],
ctx ? ctx[i] : false);
if (IS_ERR(vqs[i])) {
ret = PTR_ERR(vqs[i]);
diff --git a/drivers/s390/virtio/virtio_ccw.c b/drivers/...
2013 Jan 18
0
[RFC] remoteproc: Add support for host-side (reversed) vrings
...v(vdev);
+ int rng, id, ret, nrings = ARRAY_SIZE(rvdev->vring);
+
+ for (id = 0, rng = 0; rng < nrings; ++rng) {
+ struct rproc_vring *rvring = &rvdev->vring[rng];
+ /* Skip the host side rings */
+ if (rvring->vringh)
+ continue;
- for (i = 0; i < nvqs; ++i) {
- vqs[i] = rp_find_vq(vdev, i, callbacks[i], names[i]);
- if (IS_ERR(vqs[i])) {
- ret = PTR_ERR(vqs[i]);
+ vqs[id] = rp_find_vq(vdev, rng, callbacks[id], names[id]);
+ if (IS_ERR(vqs[id])) {
+ ret = PTR_ERR(vqs[id]);
goto error;
}
+ ++id;
}
/* now that the vqs are all set, boot the remote processor...
2013 Jan 18
0
[RFC] remoteproc: Add support for host-side (reversed) vrings
...v(vdev);
+ int rng, id, ret, nrings = ARRAY_SIZE(rvdev->vring);
+
+ for (id = 0, rng = 0; rng < nrings; ++rng) {
+ struct rproc_vring *rvring = &rvdev->vring[rng];
+ /* Skip the host side rings */
+ if (rvring->vringh)
+ continue;
- for (i = 0; i < nvqs; ++i) {
- vqs[i] = rp_find_vq(vdev, i, callbacks[i], names[i]);
- if (IS_ERR(vqs[i])) {
- ret = PTR_ERR(vqs[i]);
+ vqs[id] = rp_find_vq(vdev, rng, callbacks[id], names[id]);
+ if (IS_ERR(vqs[id])) {
+ ret = PTR_ERR(vqs[id]);
goto error;
}
+ ++id;
}
/* now that the vqs are all set, boot the remote processor...
2013 Apr 09
1
[PATCHv2 virtio-next] remoteproc: Add support for host virtio rings (vringh)
...vringh_cb(&rvring->rvdev->vdev,
+ &rvring->rvringh->vrh);
+ return IRQ_HANDLED;
+ } else if (rvring->vq) {
+ return vring_interrupt(0, rvring->vq);
+ } else {
+ return IRQ_NONE;
+ }
}
EXPORT_SYMBOL(rproc_vq_interrupt);
@@ -78,7 +98,7 @@ static struct virtqueue *rp_find_vq(struct virtio_device *vdev,
struct rproc_vring *rvring;
struct virtqueue *vq;
void *addr;
- int len, size, ret;
+ int len, size, ret, i;
/* we're temporarily limited to two virtqueues per rvdev */
if (id >= ARRAY_SIZE(rvdev->vring))
@@ -87,11 +107,26 @@ static struct virtqueue...
2013 Apr 09
1
[PATCHv2 virtio-next] remoteproc: Add support for host virtio rings (vringh)
...vringh_cb(&rvring->rvdev->vdev,
+ &rvring->rvringh->vrh);
+ return IRQ_HANDLED;
+ } else if (rvring->vq) {
+ return vring_interrupt(0, rvring->vq);
+ } else {
+ return IRQ_NONE;
+ }
}
EXPORT_SYMBOL(rproc_vq_interrupt);
@@ -78,7 +98,7 @@ static struct virtqueue *rp_find_vq(struct virtio_device *vdev,
struct rproc_vring *rvring;
struct virtqueue *vq;
void *addr;
- int len, size, ret;
+ int len, size, ret, i;
/* we're temporarily limited to two virtqueues per rvdev */
if (id >= ARRAY_SIZE(rvdev->vring))
@@ -87,11 +107,26 @@ static struct virtqueue...
2017 Mar 30
0
[vhost:linux-next 6/19] drivers/remoteproc/remoteproc_virtio.c:148:9: error: 'ctx' undeclared
...teproc_virtio.c:148:9: note: each undeclared identifier is reported only once for each function it appears in
vim +/ctx +148 drivers/remoteproc/remoteproc_virtio.c
142 struct irq_affinity *desc)
143 {
144 int i, ret;
145
146 for (i = 0; i < nvqs; ++i) {
147 vqs[i] = rp_find_vq(vdev, i, callbacks[i], names[i],
> 148 ctx ? ctx[i] : false);
149 if (IS_ERR(vqs[i])) {
150 ret = PTR_ERR(vqs[i]);
151 goto error;
---
0-DAY kernel test infrastructure Open Source Technology Center
https://lists.01.org/pipermail/kbuild-all...
2017 Mar 30
0
[vhost:linux-next 6/19] drivers/remoteproc/remoteproc_virtio.c:148:9: error: 'ctx' undeclared
...teproc_virtio.c:148:9: note: each undeclared identifier is reported only once for each function it appears in
vim +/ctx +148 drivers/remoteproc/remoteproc_virtio.c
142 struct irq_affinity *desc)
143 {
144 int i, ret;
145
146 for (i = 0; i < nvqs; ++i) {
147 vqs[i] = rp_find_vq(vdev, i, callbacks[i], names[i],
> 148 ctx ? ctx[i] : false);
149 if (IS_ERR(vqs[i])) {
150 ret = PTR_ERR(vqs[i]);
151 goto error;
---
0-DAY kernel test infrastructure Open Source Technology Center
https://lists.01.org/pipermail/kbuild-all...
2013 Mar 15
2
[PATCH 0/2] remoteproc : support for host virtio
From: Erwan Yvin <erwan.yvin at stericsson.com>
This driver depends on Rusty's new host virtio ring implementation,
so this patch-set is based on the vringh branch in Rusty's git.
with the vringh wrapper patch on top. They do not apply cleanly on top of the
remoteproc virtio config patches from Sjur, but it merges fine.
CAIF will use this new host virtio ring implementation.
Ido,
2013 Mar 15
2
[PATCH 0/2] remoteproc : support for host virtio
From: Erwan Yvin <erwan.yvin at stericsson.com>
This driver depends on Rusty's new host virtio ring implementation,
so this patch-set is based on the vringh branch in Rusty's git.
with the vringh wrapper patch on top. They do not apply cleanly on top of the
remoteproc virtio config patches from Sjur, but it merges fine.
CAIF will use this new host virtio ring implementation.
Ido,
2012 Sep 05
1
[PATCH] virtio: support reserved vqs
...esc->num_vq)
return ERR_PTR(-ENOENT);
diff --git a/drivers/remoteproc/remoteproc_virtio.c b/drivers/remoteproc/remoteproc_virtio.c
index 3541b44..bda6750 100644
--- a/drivers/remoteproc/remoteproc_virtio.c
+++ b/drivers/remoteproc/remoteproc_virtio.c
@@ -84,6 +84,9 @@ static struct virtqueue *rp_find_vq(struct virtio_device *vdev,
if (id >= ARRAY_SIZE(rvdev->vring))
return ERR_PTR(-EINVAL);
+ if (!name)
+ return NULL;
+
ret = rproc_alloc_vring(rvdev, id);
if (ret)
return ERR_PTR(ret);
diff --git a/drivers/s390/kvm/kvm_virtio.c b/drivers/s390/kvm/kvm_virtio.c
index 47cccd5..6e8...
2012 Sep 05
1
[PATCH] virtio: support reserved vqs
...esc->num_vq)
return ERR_PTR(-ENOENT);
diff --git a/drivers/remoteproc/remoteproc_virtio.c b/drivers/remoteproc/remoteproc_virtio.c
index 3541b44..bda6750 100644
--- a/drivers/remoteproc/remoteproc_virtio.c
+++ b/drivers/remoteproc/remoteproc_virtio.c
@@ -84,6 +84,9 @@ static struct virtqueue *rp_find_vq(struct virtio_device *vdev,
if (id >= ARRAY_SIZE(rvdev->vring))
return ERR_PTR(-EINVAL);
+ if (!name)
+ return NULL;
+
ret = rproc_alloc_vring(rvdev, id);
if (ret)
return ERR_PTR(ret);
diff --git a/drivers/s390/kvm/kvm_virtio.c b/drivers/s390/kvm/kvm_virtio.c
index 47cccd5..6e8...
2017 Mar 30
0
[vhost:linux-next 6/19] drivers/remoteproc/remoteproc_virtio.c:106:33: sparse: not enough arguments for function vring_new_virtqueue
...fixed by >>)
include/linux/compiler.h:264:8: sparse: attribute 'no_sanitize_address': unknown attribute
>> drivers/remoteproc/remoteproc_virtio.c:106:33: sparse: not enough arguments for function vring_new_virtqueue
drivers/remoteproc/remoteproc_virtio.c: In function 'rp_find_vq':
drivers/remoteproc/remoteproc_virtio.c:107:27: error: passing argument 8 of 'vring_new_virtqueue' from incompatible pointer type [-Werror=incompatible-pointer-types]
rproc_virtio_notify, callback, name);
^~~~~~~~
In file included from drive...
2017 Mar 30
0
[vhost:linux-next 6/19] drivers/remoteproc/remoteproc_virtio.c:106:33: sparse: not enough arguments for function vring_new_virtqueue
...fixed by >>)
include/linux/compiler.h:264:8: sparse: attribute 'no_sanitize_address': unknown attribute
>> drivers/remoteproc/remoteproc_virtio.c:106:33: sparse: not enough arguments for function vring_new_virtqueue
drivers/remoteproc/remoteproc_virtio.c: In function 'rp_find_vq':
drivers/remoteproc/remoteproc_virtio.c:107:27: error: passing argument 8 of 'vring_new_virtqueue' from incompatible pointer type [-Werror=incompatible-pointer-types]
rproc_virtio_notify, callback, name);
^~~~~~~~
In file included from drive...
2017 Mar 29
0
[vhost:linux-next 6/19] drivers//remoteproc/remoteproc_virtio.c:106:7: error: too few arguments to function 'vring_new_virtqueue'
...cc-4.9 (Debian 4.9.4-2) 4.9.4
reproduce:
git checkout 281310d52c1d63630f54b1ac5cca6e9eb8715b3a
# save the attached .config to linux build tree
make ARCH=x86_64
All error/warnings (new ones prefixed by >>):
drivers//remoteproc/remoteproc_virtio.c: In function 'rp_find_vq':
>> drivers//remoteproc/remoteproc_virtio.c:107:27: warning: passing argument 8 of 'vring_new_virtqueue' from incompatible pointer type
rproc_virtio_notify, callback, name);
^
In file included from drivers//remoteproc/remoteproc_virtio.c:...
2017 Mar 29
0
[vhost:linux-next 6/19] drivers//remoteproc/remoteproc_virtio.c:106:7: error: too few arguments to function 'vring_new_virtqueue'
...cc-4.9 (Debian 4.9.4-2) 4.9.4
reproduce:
git checkout 281310d52c1d63630f54b1ac5cca6e9eb8715b3a
# save the attached .config to linux build tree
make ARCH=x86_64
All error/warnings (new ones prefixed by >>):
drivers//remoteproc/remoteproc_virtio.c: In function 'rp_find_vq':
>> drivers//remoteproc/remoteproc_virtio.c:107:27: warning: passing argument 8 of 'vring_new_virtqueue' from incompatible pointer type
rproc_virtio_notify, callback, name);
^
In file included from drivers//remoteproc/remoteproc_virtio.c:...
2017 Mar 29
0
[vhost:linux-next 6/19] drivers/remoteproc/remoteproc_virtio.c:107:27: error: passing argument 8 of 'vring_new_virtqueue' from incompatible pointer type
...r: gcc-6 (Debian 6.2.0-3) 6.2.0 20160901
reproduce:
git checkout 281310d52c1d63630f54b1ac5cca6e9eb8715b3a
# save the attached .config to linux build tree
make ARCH=i386
All errors (new ones prefixed by >>):
drivers/remoteproc/remoteproc_virtio.c: In function 'rp_find_vq':
>> drivers/remoteproc/remoteproc_virtio.c:107:27: error: passing argument 8 of 'vring_new_virtqueue' from incompatible pointer type [-Werror=incompatible-pointer-types]
rproc_virtio_notify, callback, name);
^~~~~~~~
In file included from...
2017 Mar 29
0
[vhost:linux-next 6/19] drivers/remoteproc/remoteproc_virtio.c:107:27: error: passing argument 8 of 'vring_new_virtqueue' from incompatible pointer type
...r: gcc-6 (Debian 6.2.0-3) 6.2.0 20160901
reproduce:
git checkout 281310d52c1d63630f54b1ac5cca6e9eb8715b3a
# save the attached .config to linux build tree
make ARCH=i386
All errors (new ones prefixed by >>):
drivers/remoteproc/remoteproc_virtio.c: In function 'rp_find_vq':
>> drivers/remoteproc/remoteproc_virtio.c:107:27: error: passing argument 8 of 'vring_new_virtqueue' from incompatible pointer type [-Werror=incompatible-pointer-types]
rproc_virtio_notify, callback, name);
^~~~~~~~
In file included from...
2018 Dec 28
11
[PATCH v1 0/2] Virtio: fix some vq allocation issues
Some vqs don't need to be allocated when the related feature bits are
disabled. Callers notice the vq allocation layer by setting the related
names[i] to be NULL.
This patch series fixes the find_vqs implementations to handle this case.
Wei Wang (2):
virtio_pci: use queue idx instead of array idx to set up the vq
virtio: don't allocate vqs when names[i] = NULL
2018 Dec 28
11
[PATCH v1 0/2] Virtio: fix some vq allocation issues
Some vqs don't need to be allocated when the related feature bits are
disabled. Callers notice the vq allocation layer by setting the related
names[i] to be NULL.
This patch series fixes the find_vqs implementations to handle this case.
Wei Wang (2):
virtio_pci: use queue idx instead of array idx to set up the vq
virtio: don't allocate vqs when names[i] = NULL
2013 Feb 12
3
[PATCHv2 vringh 0/3] Introduce CAIF Virtio driver
From: Sjur Br?ndeland <sjur.brandeland at stericsson.com>
This driver depends on Rusty's new host virtio ring implementation,
so this patch-set is based on the vringh branch in Rusty's git.
Changes since V1:
- Use the new iov helper functions, and simplify iov handling.
However this triggers compile warnings, as it takes struct iov
while kernel api uses struct kiov
- Introduced