Displaying 20 results from an estimated 29 matches for "vhost_rpmsg_it".
Did you mean:
vhost_rpmsg_iter
2020 May 27
0
[PATCH v2 5/5] vhost: add an RPMsg API
...> > create mode 100644 drivers/vhost/rpmsg.c
> > create mode 100644 drivers/vhost/vhost_rpmsg.h
[snip]
> > +/* send namespace */
> > +int vhost_rpmsg_ns_announce(struct vhost_rpmsg *vr, const char *name,
> > + unsigned int src)
> > +{
> > + struct vhost_rpmsg_iter iter = {
> > + .rhdr = {
> > + .src = 0,
> > + .dst = RPMSG_NS_ADDR,
> > + .flags = RPMSG_NS_CREATE, /* rpmsg_recv_single() */
> > + },
> > + };
> > + struct rpmsg_ns_msg ns = {
> > + .addr = src,
> > + .flags = RPMSG_NS_CREATE, /* f...
2020 Sep 10
0
[PATCH v7 3/3] vhost: add an RPMsg API
...ept[i].addr == addr)
+ return vr->ept + i;
+
+ return NULL;
+}
+
+/*
+ * if len < 0, then for reading a request, the complete virtual queue buffer
+ * size is prepared, for sending a response, the length in the iterator is used
+ */
+int vhost_rpmsg_start_lock(struct vhost_rpmsg *vr, struct vhost_rpmsg_iter *iter,
+ unsigned int qid, ssize_t len)
+ __acquires(vq->mutex)
+{
+ struct vhost_virtqueue *vq = vr->vq + qid;
+ unsigned int cnt;
+ ssize_t ret;
+ size_t tmp;
+
+ if (qid >= VIRTIO_RPMSG_NUM_OF_VQS)
+ return -EINVAL;
+
+ iter->vq = vq;
+
+ mutex_lock(&vq->mutex);
+ vhos...
2020 May 27
0
[PATCH v3 5/5] vhost: add an RPMsg API
...addr == addr)
+ return vr->ept + i;
+
+ return NULL;
+}
+
+/*
+ * if len < 0, then for reading a request, the complete virtual queue buffer
+ * size is prepared, for sending a response, the length in the iterator is used
+ */
+int vhost_rpmsg_start_lock(struct vhost_rpmsg *vr,
+ struct vhost_rpmsg_iter *iter,
+ unsigned int qid, ssize_t len)
+ __acquires(vq->mutex)
+{
+ struct vhost_virtqueue *vq = vr->vq + qid;
+ size_t tmp;
+
+ if (qid >= VIRTIO_RPMSG_NUM_OF_VQS)
+ return -EINVAL;
+
+ iter->vq = vq;
+
+ mutex_lock(&vq->mutex);
+ vhost_disable_notify(&vr->dev, v...
2020 Jul 22
0
[PATCH v4 4/4] vhost: add an RPMsg API
...ept[i].addr == addr)
+ return vr->ept + i;
+
+ return NULL;
+}
+
+/*
+ * if len < 0, then for reading a request, the complete virtual queue buffer
+ * size is prepared, for sending a response, the length in the iterator is used
+ */
+int vhost_rpmsg_start_lock(struct vhost_rpmsg *vr, struct vhost_rpmsg_iter *iter,
+ unsigned int qid, ssize_t len)
+ __acquires(vq->mutex)
+{
+ struct vhost_virtqueue *vq = vr->vq + qid;
+ size_t tmp;
+
+ if (qid >= VIRTIO_RPMSG_NUM_OF_VQS)
+ return -EINVAL;
+
+ iter->vq = vq;
+
+ mutex_lock(&vq->mutex);
+ vhost_disable_notify(&vr->dev, v...
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 Sep 10
0
[PATCH v5 4/4] vhost: add an RPMsg API
...> +}
> > +
> > +/*
> > + * if len < 0, then for reading a request, the complete virtual queue buffer
> > + * size is prepared, for sending a response, the length in the iterator is used
> > + */
> > +int vhost_rpmsg_start_lock(struct vhost_rpmsg *vr, struct vhost_rpmsg_iter *iter,
> > + unsigned int qid, ssize_t len)
> > + __acquires(vq->mutex)
> > +{
> > + struct vhost_virtqueue *vq = vr->vq + qid;
> > + unsigned int cnt;
> > + ssize_t ret;
> > + size_t tmp;
> > +
> > + if (qid >= VIRTIO_RPMSG_NUM_...
2020 Sep 18
0
[PATCH v7 3/3] vhost: add an RPMsg API
...> +}
> > +
> > +/*
> > + * if len < 0, then for reading a request, the complete virtual queue buffer
> > + * size is prepared, for sending a response, the length in the iterator is used
> > + */
> > +int vhost_rpmsg_start_lock(struct vhost_rpmsg *vr, struct vhost_rpmsg_iter *iter,
> > + unsigned int qid, ssize_t len)
> > + __acquires(vq->mutex)
> > +{
> > + struct vhost_virtqueue *vq = vr->vq + qid;
> > + unsigned int cnt;
> > + ssize_t ret;
> > + size_t tmp;
> > +
> > + if (qid >= VIRTIO_RPMSG_NUM_...
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 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 Sep 11
0
[PATCH v5 4/4] vhost: add an RPMsg API
...> + VIRTIO_RPMSG_REQUEST, /* RPMsg request (guest->host) buffers */
> > > > + /* Keep last */
> > > > + VIRTIO_RPMSG_NUM_OF_VQS,
> > > > +};
> > > > +
> > > > +struct vhost_rpmsg_ept;
> > > > +
> > > > +struct vhost_rpmsg_iter {
> > > > + struct iov_iter iov_iter;
> > > > + struct rpmsg_hdr rhdr;
> > > > + struct vhost_virtqueue *vq;
> > > > + const struct vhost_rpmsg_ept *ept;
> > > > + int head;
> > > > + void *priv;
> > >
> > >...
2020 Aug 04
2
[PATCH v4 4/4] vhost: add an RPMsg API
...i;
> +
> + return NULL;
> +}
> +
> +/*
> + * if len < 0, then for reading a request, the complete virtual queue buffer
> + * size is prepared, for sending a response, the length in the iterator is used
> + */
> +int vhost_rpmsg_start_lock(struct vhost_rpmsg *vr, struct vhost_rpmsg_iter *iter,
> + unsigned int qid, ssize_t len)
> + __acquires(vq->mutex)
> +{
> + struct vhost_virtqueue *vq = vr->vq + qid;
> + size_t tmp;
> +
> + if (qid >= VIRTIO_RPMSG_NUM_OF_VQS)
> + return -EINVAL;
> +
> + iter->vq = vq;
> +
> + mutex_lock(&...
2020 Aug 04
2
[PATCH v4 4/4] vhost: add an RPMsg API
...i;
> +
> + return NULL;
> +}
> +
> +/*
> + * if len < 0, then for reading a request, the complete virtual queue buffer
> + * size is prepared, for sending a response, the length in the iterator is used
> + */
> +int vhost_rpmsg_start_lock(struct vhost_rpmsg *vr, struct vhost_rpmsg_iter *iter,
> + unsigned int qid, ssize_t len)
> + __acquires(vq->mutex)
> +{
> + struct vhost_virtqueue *vq = vr->vq + qid;
> + size_t tmp;
> +
> + if (qid >= VIRTIO_RPMSG_NUM_OF_VQS)
> + return -EINVAL;
> +
> + iter->vq = vq;
> +
> + mutex_lock(&...
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 Sep 15
0
[PATCH v5 4/4] vhost: add an RPMsg API
...*/
> > > > > > + /* Keep last */
> > > > > > + VIRTIO_RPMSG_NUM_OF_VQS,
> > > > > > +};
> > > > > > +
> > > > > > +struct vhost_rpmsg_ept;
> > > > > > +
> > > > > > +struct vhost_rpmsg_iter {
> > > > > > + struct iov_iter iov_iter;
> > > > > > + struct rpmsg_hdr rhdr;
> > > > > > + struct vhost_virtqueue *vq;
> > > > > > + const struct vhost_rpmsg_ept *ept;
> > > > > > + int head;
> > >...
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 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.