Displaying 20 results from an estimated 27 matches for "vhost_rpmsg_finish_unlock".
2020 Sep 10
0
[PATCH v7 3/3] vhost: add an RPMsg API
...cess data, but copy_{to,from}_iter() don't do
+ * that either
+ */
+ if (iter->vq == vr->vq + VIRTIO_RPMSG_RESPONSE)
+ return copy_to_iter(data, size, &iter->iov_iter);
+
+ return copy_from_iter(data, size, &iter->iov_iter);
+}
+EXPORT_SYMBOL_GPL(vhost_rpmsg_copy);
+
+int vhost_rpmsg_finish_unlock(struct vhost_rpmsg *vr,
+ struct vhost_rpmsg_iter *iter)
+ __releases(vq->mutex)
+{
+ if (iter->head >= 0)
+ vhost_add_used_and_signal(iter->vq->dev, iter->vq, iter->head,
+ vhost16_to_cpu(iter->vq, iter->rhdr.len) +
+ sizeof(iter->rhdr));
+
+ vhos...
2020 May 27
0
[PATCH v3 5/5] vhost: add an RPMsg API
...cess data, but copy_{to,from}_iter() don't do
+ * that either
+ */
+ if (iter->vq == vr->vq + VIRTIO_RPMSG_RESPONSE)
+ return copy_to_iter(data, size, &iter->iov_iter);
+
+ return copy_from_iter(data, size, &iter->iov_iter);
+}
+EXPORT_SYMBOL_GPL(vhost_rpmsg_copy);
+
+int vhost_rpmsg_finish_unlock(struct vhost_rpmsg *vr,
+ struct vhost_rpmsg_iter *iter)
+ __releases(vq->mutex)
+{
+ if (iter->head >= 0)
+ vhost_add_used_and_signal(iter->vq->dev, iter->vq, iter->head,
+ iter->rhdr.len + sizeof(iter->rhdr));
+
+ vhost_enable_notify(&vr->dev, iter...
2020 Jul 22
0
[PATCH v4 4/4] vhost: add an RPMsg API
...cess data, but copy_{to,from}_iter() don't do
+ * that either
+ */
+ if (iter->vq == vr->vq + VIRTIO_RPMSG_RESPONSE)
+ return copy_to_iter(data, size, &iter->iov_iter);
+
+ return copy_from_iter(data, size, &iter->iov_iter);
+}
+EXPORT_SYMBOL_GPL(vhost_rpmsg_copy);
+
+int vhost_rpmsg_finish_unlock(struct vhost_rpmsg *vr,
+ struct vhost_rpmsg_iter *iter)
+ __releases(vq->mutex)
+{
+ if (iter->head >= 0)
+ vhost_add_used_and_signal(iter->vq->dev, iter->vq, iter->head,
+ vhost16_to_cpu(iter->vq, iter->rhdr.len) +
+ sizeof(iter->rhdr));
+
+ vhos...
2020 Sep 10
6
[PATCH v7 0/3] Add a vhost RPMsg API
Hi,
Next update:
v7:
- remove documentation update to be send separately
- address comments from Mathieu Poirier (thanks)
v6:
- rename include/linux/virtio_rpmsg.h -> include/linux/rpmsg/virtio.h
v5:
- don't hard-code message layout
v4:
- add endianness conversions to comply with the VirtIO standard
v3:
- address several checkpatch warnings
- address comments from Mathieu Poirier
v2:
2020 Sep 10
6
[PATCH v7 0/3] Add a vhost RPMsg API
Hi,
Next update:
v7:
- remove documentation update to be send separately
- address comments from Mathieu Poirier (thanks)
v6:
- rename include/linux/virtio_rpmsg.h -> include/linux/rpmsg/virtio.h
v5:
- don't hard-code message layout
v4:
- add endianness conversions to comply with the VirtIO standard
v3:
- address several checkpatch warnings
- address comments from Mathieu Poirier
v2:
2020 Sep 10
0
[PATCH v5 4/4] vhost: add an RPMsg API
...t; + if (iter->vq == vr->vq + VIRTIO_RPMSG_RESPONSE)
> > + return copy_to_iter(data, size, &iter->iov_iter);
> > +
> > + return copy_from_iter(data, size, &iter->iov_iter);
> > +}
> > +EXPORT_SYMBOL_GPL(vhost_rpmsg_copy);
> > +
> > +int vhost_rpmsg_finish_unlock(struct vhost_rpmsg *vr,
> > + struct vhost_rpmsg_iter *iter)
> > + __releases(vq->mutex)
> > +{
> > + if (iter->head >= 0)
> > + vhost_add_used_and_signal(iter->vq->dev, iter->vq, iter->head,
> > + vhost16_to_cpu(iter->vq, i...
2020 Sep 18
0
[PATCH v7 3/3] vhost: add an RPMsg API
...t; + if (iter->vq == vr->vq + VIRTIO_RPMSG_RESPONSE)
> > + return copy_to_iter(data, size, &iter->iov_iter);
> > +
> > + return copy_from_iter(data, size, &iter->iov_iter);
> > +}
> > +EXPORT_SYMBOL_GPL(vhost_rpmsg_copy);
> > +
> > +int vhost_rpmsg_finish_unlock(struct vhost_rpmsg *vr,
> > + struct vhost_rpmsg_iter *iter)
> > + __releases(vq->mutex)
> > +{
> > + if (iter->head >= 0)
> > + vhost_add_used_and_signal(iter->vq->dev, iter->vq, iter->head,
> > + vhost16_to_cpu(iter->vq, i...
2020 May 25
6
[PATCH v2 0/5] Add a vhost RPMsg API
v2:
- remove "default n" from Kconfig
- drop patch #6 - it depends on a different patch, that is currently
an RFC
- update patch #5 with a correct vhost_dev_init() prototype
Linux supports RPMsg over VirtIO for "remote processor" /AMP use
cases. It can however also be used for virtualisation scenarios,
e.g. when using KVM to run Linux on both the host and the guests.
This
2020 May 27
0
[PATCH v2 5/5] vhost: add an RPMsg API
...ame, sizeof(ns.name));
> > +
> > + ret = vhost_rpmsg_copy(vr, &iter, &ns, sizeof(ns));
> > + if (ret != sizeof(ns))
> > + vq_err(iter.vq, "%s(): added %d instead of %zu bytes\n",
> > + __func__, ret, sizeof(ns));
> > +
> > + ret = vhost_rpmsg_finish_unlock(vr, &iter);
> > + if (ret < 0)
> > + vq_err(iter.vq, "%s(): namespace announcement failed: %d\n",
> > + __func__, ret);
> > +
> > + return ret;
> > +}
> > +EXPORT_SYMBOL_GPL(vhost_rpmsg_ns_announce);
> > +
> > +MODULE_L...
2020 Sep 21
0
[PATCH v7 3/3] vhost: add an RPMsg API
...*vr,
> > > > + struct vhost_virtqueue *vq)
> > > > +{
> > > > + struct vhost_rpmsg_iter iter;
> > > > + int ret = vhost_rpmsg_start_lock(vr, &iter, VIRTIO_RPMSG_REQUEST, -EINVAL);
> > > > + if (!ret)
> > > > + ret = vhost_rpmsg_finish_unlock(vr, &iter);
> > > > + if (ret < 0) {
> > > > + if (ret != -EAGAIN)
> > > > + vq_err(vq, "%s(): RPMSG processing failed %d\n",
> > > > + __func__, ret);
> > > > + return false;
> > > > + }
> >...
2020 Aug 04
2
[PATCH v4 4/4] vhost: add an RPMsg API
...> + * that either
> + */
> + if (iter->vq == vr->vq + VIRTIO_RPMSG_RESPONSE)
> + return copy_to_iter(data, size, &iter->iov_iter);
> +
> + return copy_from_iter(data, size, &iter->iov_iter);
> +}
> +EXPORT_SYMBOL_GPL(vhost_rpmsg_copy);
> +
> +int vhost_rpmsg_finish_unlock(struct vhost_rpmsg *vr,
> + struct vhost_rpmsg_iter *iter)
> + __releases(vq->mutex)
> +{
> + if (iter->head >= 0)
> + vhost_add_used_and_signal(iter->vq->dev, iter->vq, iter->head,
> + vhost16_to_cpu(iter->vq, iter->rhdr.len) +
> +...
2020 Aug 04
2
[PATCH v4 4/4] vhost: add an RPMsg API
...> + * that either
> + */
> + if (iter->vq == vr->vq + VIRTIO_RPMSG_RESPONSE)
> + return copy_to_iter(data, size, &iter->iov_iter);
> +
> + return copy_from_iter(data, size, &iter->iov_iter);
> +}
> +EXPORT_SYMBOL_GPL(vhost_rpmsg_copy);
> +
> +int vhost_rpmsg_finish_unlock(struct vhost_rpmsg *vr,
> + struct vhost_rpmsg_iter *iter)
> + __releases(vq->mutex)
> +{
> + if (iter->head >= 0)
> + vhost_add_used_and_signal(iter->vq->dev, iter->vq, iter->head,
> + vhost16_to_cpu(iter->vq, iter->rhdr.len) +
> +...
2020 Jul 22
13
[PATCH v4 0/4] Add a vhost RPMsg API
Hi,
Now that virtio-rpmsg endianness fixes have been merged we can
proceed with the next step.
v4:
- add endianness conversions to comply with the VirtIO standard
v3:
- address several checkpatch warnings
- address comments from Mathieu Poirier
v2:
- update patch #5 with a correct vhost_dev_init() prototype
- drop patch #6 - it depends on a different patch, that is currently
an RFC
-
2020 Jul 22
13
[PATCH v4 0/4] Add a vhost RPMsg API
Hi,
Now that virtio-rpmsg endianness fixes have been merged we can
proceed with the next step.
v4:
- add endianness conversions to comply with the VirtIO standard
v3:
- address several checkpatch warnings
- address comments from Mathieu Poirier
v2:
- update patch #5 with a correct vhost_dev_init() prototype
- drop patch #6 - it depends on a different patch, that is currently
an RFC
-
2020 May 16
9
[PATCH 0/6] Add a vhost RPMsg API
Linux supports RPMsg over VirtIO for "remote processor" /AMP use
cases. It can however also be used for virtualisation scenarios,
e.g. when using KVM to run Linux on both the host and the guests.
This patch set adds a wrapper API to facilitate writing vhost
drivers for such RPMsg-based solutions. The first use case is an
audio DSP virtualisation project, currently under development,
2020 May 16
9
[PATCH 0/6] Add a vhost RPMsg API
Linux supports RPMsg over VirtIO for "remote processor" /AMP use
cases. It can however also be used for virtualisation scenarios,
e.g. when using KVM to run Linux on both the host and the guests.
This patch set adds a wrapper API to facilitate writing vhost
drivers for such RPMsg-based solutions. The first use case is an
audio DSP virtualisation project, currently under development,
2020 Aug 26
12
[PATCH v5 0/4] Add a vhost RPMsg API
Hi,
Next update:
v5:
- don't hard-code message layout
v4:
- add endianness conversions to comply with the VirtIO standard
v3:
- address several checkpatch warnings
- address comments from Mathieu Poirier
v2:
- update patch #5 with a correct vhost_dev_init() prototype
- drop patch #6 - it depends on a different patch, that is currently
an RFC
- address comments from Pierre-Louis Bossart:
2020 Aug 26
12
[PATCH v5 0/4] Add a vhost RPMsg API
Hi,
Next update:
v5:
- don't hard-code message layout
v4:
- add endianness conversions to comply with the VirtIO standard
v3:
- address several checkpatch warnings
- address comments from Mathieu Poirier
v2:
- update patch #5 with a correct vhost_dev_init() prototype
- drop patch #6 - it depends on a different patch, that is currently
an RFC
- address comments from Pierre-Louis Bossart:
2020 May 27
10
[PATCH v3 0/5] Add a vhost RPMsg API
v3:
- address several checkpatch warnings
- address comments from Mathieu Poirier
v2:
- update patch #5 with a correct vhost_dev_init() prototype
- drop patch #6 - it depends on a different patch, that is currently
an RFC
- address comments from Pierre-Louis Bossart:
* remove "default n" from Kconfig
Linux supports RPMsg over VirtIO for "remote processor" /AMP use
cases.
2020 May 27
10
[PATCH v3 0/5] Add a vhost RPMsg API
v3:
- address several checkpatch warnings
- address comments from Mathieu Poirier
v2:
- update patch #5 with a correct vhost_dev_init() prototype
- drop patch #6 - it depends on a different patch, that is currently
an RFC
- address comments from Pierre-Louis Bossart:
* remove "default n" from Kconfig
Linux supports RPMsg over VirtIO for "remote processor" /AMP use
cases.