Displaying 20 results from an estimated 61 matches for "vm_notify".
2018 Apr 19
4
[PATCH] virtio_ring: switch to dma_XX barriers for rpmsg
...ase review
> > and ack this patch? Or even better test it?
> >
> > All these barriers are useless on Intel anyway ...
>
> This should be okay, but I wonder if there should be a virtio_wmb(...)
> or an "if (weak_barriers) wmb()" before the "writel" in vm_notify
> (drivers/virtio/virtio_mmio.c).
>
> Thanks,
>
> Paolo
That one uses weak barriers AFAIK.
IIUC you mean rproc_virtio_notify.
I suspect it works because specific kick callbacks have a barrier internally.
> >
> > include/linux/virtio_ring.h | 4 ++--
> > 1 f...
2018 Apr 19
4
[PATCH] virtio_ring: switch to dma_XX barriers for rpmsg
...ase review
> > and ack this patch? Or even better test it?
> >
> > All these barriers are useless on Intel anyway ...
>
> This should be okay, but I wonder if there should be a virtio_wmb(...)
> or an "if (weak_barriers) wmb()" before the "writel" in vm_notify
> (drivers/virtio/virtio_mmio.c).
>
> Thanks,
>
> Paolo
That one uses weak barriers AFAIK.
IIUC you mean rproc_virtio_notify.
I suspect it works because specific kick callbacks have a barrier internally.
> >
> > include/linux/virtio_ring.h | 4 ++--
> > 1 f...
2023 Mar 23
1
[PATCH v4] virtio: add VIRTIO_F_NOTIFICATION_DATA feature support
...upport for this feature for MMIO, channel I/O and modern PCI
> > > transports.
> > >
> > > Signed-off-by: Viktor Prutyanov <viktor at daynix.com>
> > > ---
> > > v4: remove VP_NOTIFY macro and legacy PCI support, add
> > > virtio_ccw_kvm_notify_with_data to virtio_ccw
> > > v3: support feature in virtio_ccw, remove VM_NOTIFY, use avail_idx_shadow,
> > > remove byte swap, rename to vring_notification_data
> > > v2: reject the feature in virtio_ccw, replace __le32 with u32
> > >
> > > Test...
2023 Mar 23
1
[PATCH v4] virtio: add VIRTIO_F_NOTIFICATION_DATA feature support
...rap counter and 15-bit
> available index.
>
> Add support for this feature for MMIO, channel I/O and modern PCI
> transports.
>
> Signed-off-by: Viktor Prutyanov <viktor at daynix.com>
> ---
> v4: remove VP_NOTIFY macro and legacy PCI support, add
> virtio_ccw_kvm_notify_with_data to virtio_ccw
> v3: support feature in virtio_ccw, remove VM_NOTIFY, use avail_idx_shadow,
> remove byte swap, rename to vring_notification_data
> v2: reject the feature in virtio_ccw, replace __le32 with u32
>
> Tested with disabled VIRTIO_F_NOTIFICATION_DATA on qem...
2023 Mar 21
0
[PATCH v2] virtio: add VIRTIO_F_NOTIFICATION_DATA feature support
...t virtio_ccw_finalize_features(struct virtio_device *vdev)
> diff --git a/drivers/virtio/virtio_mmio.c b/drivers/virtio/virtio_mmio.c
> index 3ff746e3f24a..0e13da17fe0a 100644
> --- a/drivers/virtio/virtio_mmio.c
> +++ b/drivers/virtio/virtio_mmio.c
> @@ -285,6 +285,19 @@ static bool vm_notify(struct virtqueue *vq)
> return true;
> }
>
> +static bool vm_notify_with_data(struct virtqueue *vq)
> +{
> + struct virtio_mmio_device *vm_dev = to_virtio_mmio_device(vq->vdev);
> + u32 data = vring_fill_notification_data(vq);
> +
> + writel(data, vm_dev->base...
2023 Mar 21
0
[PATCH v2] virtio: add VIRTIO_F_NOTIFICATION_DATA feature support
...t virtio_ccw_finalize_features(struct virtio_device *vdev)
> diff --git a/drivers/virtio/virtio_mmio.c b/drivers/virtio/virtio_mmio.c
> index 3ff746e3f24a..0e13da17fe0a 100644
> --- a/drivers/virtio/virtio_mmio.c
> +++ b/drivers/virtio/virtio_mmio.c
> @@ -285,6 +285,19 @@ static bool vm_notify(struct virtqueue *vq)
> return true;
> }
>
> +static bool vm_notify_with_data(struct virtqueue *vq)
> +{
> + struct virtio_mmio_device *vm_dev = to_virtio_mmio_device(vq->vdev);
> + u32 data = vring_fill_notification_data(vq);
> +
> + writel(data, vm_dev->base...
2011 Apr 06
2
voicemail call back loop
I have "externnotify = /var/lib/asterisk/agi-bin/vm_notify.pl" so that when
someone is left a voicemail it will call the person's mobile phone and
prompt them with the new message. The perl script simply originates a call
to a persons mobile phone and connects it to their voicemail using
VoiceMailMain. Problem is when user hangs up from checking t...
2023 Mar 22
1
[PATCH v4] virtio: add VIRTIO_F_NOTIFICATION_DATA feature support
...p counter and 15-bit
> available index.
>
> Add support for this feature for MMIO, channel I/O and modern PCI
> transports.
>
> Signed-off-by: Viktor Prutyanov <viktor at daynix.com>
> ---
> v4: remove VP_NOTIFY macro and legacy PCI support, add
> virtio_ccw_kvm_notify_with_data to virtio_ccw
> v3: support feature in virtio_ccw, remove VM_NOTIFY, use avail_idx_shadow,
> remove byte swap, rename to vring_notification_data
> v2: reject the feature in virtio_ccw, replace __le32 with u32
>
> Tested with disabled VIRTIO_F_NOTIFICATION_DATA on qe...
2023 Mar 21
0
[PATCH v3] virtio: add VIRTIO_F_NOTIFICATION_DATA feature support
...r and 15-bit
> available index.
>
> Add support for this feature for MMIO, PCI and channel I/O transports.
>
> Signed-off-by: Viktor Prutyanov <viktor at daynix.com>
Can you pls report what was tested and how? Thanks!
> ---
> v3: support feature in virtio_ccw, remove VM_NOTIFY, use avail_idx_shadow,
> remove byte swap, rename to vring_notification_data
> v2: reject the feature in virtio_ccw, replace __le32 with u32
>
> drivers/s390/virtio/virtio_ccw.c | 4 +++-
> drivers/virtio/virtio_mmio.c | 14 +++++++++++++-
> drivers/virtio/virtio_p...
2023 Mar 23
0
[PATCH v5] virtio: add VIRTIO_F_NOTIFICATION_DATA feature support
...;
> Add support for this feature for MMIO, channel I/O and modern PCI
> transports.
>
> Signed-off-by: Viktor Prutyanov <viktor at daynix.com>
> ---
> v5: replace ternary operator with if-else
> v4: remove VP_NOTIFY macro and legacy PCI support, add
> virtio_ccw_kvm_notify_with_data to virtio_ccw
> v3: support feature in virtio_ccw, remove VM_NOTIFY, use avail_idx_shadow,
> remove byte swap, rename to vring_notification_data
> v2: reject the feature in virtio_ccw, replace __le32 with u32
>
> Tested with disabled VIRTIO_F_NOTIFICATION_DATA on qem...
2013 Oct 24
0
[PATCH V2 RFC 1/9] virtio_ring: change host notification API
...97a46 100644
--- a/drivers/s390/kvm/kvm_virtio.c
+++ b/drivers/s390/kvm/kvm_virtio.c
@@ -166,11 +166,15 @@ static void kvm_reset(struct virtio_device *vdev)
* make a hypercall. We hand the address of the virtqueue so the Host
* knows which virtqueue we're talking about.
*/
-static void kvm_notify(struct virtqueue *vq)
+static int kvm_notify(struct virtqueue *vq)
{
+ long rc;
struct kvm_vqconfig *config = vq->priv;
- kvm_hypercall1(KVM_S390_VIRTIO_NOTIFY, config->address);
+ rc = kvm_hypercall1(KVM_S390_VIRTIO_NOTIFY, config->address);
+ if (rc < 0)
+ return rc;
+ return 0;...
2011 Dec 21
0
[PATCH] virtio: harsher barriers for virtio-mmio.
...s390/kvm/kvm_virtio.c
+++ b/drivers/s390/kvm/kvm_virtio.c
@@ -198,7 +198,7 @@ static struct virtqueue *kvm_find_vq(str
goto out;
vq = vring_new_virtqueue(config->num, KVM_S390_VIRTIO_RING_ALIGN,
- vdev, (void *) config->address,
+ vdev, true, (void *) config->address,
kvm_notify, callback, name);
if (!vq) {
err = -ENOMEM;
diff --git a/drivers/virtio/virtio_mmio.c b/drivers/virtio/virtio_mmio.c
--- a/drivers/virtio/virtio_mmio.c
+++ b/drivers/virtio/virtio_mmio.c
@@ -309,9 +309,10 @@ static struct virtqueue *vm_setup_vq(str
writel(virt_to_phys(info->queue) >>...
2011 Dec 21
0
[PATCH] virtio: harsher barriers for virtio-mmio.
...s390/kvm/kvm_virtio.c
+++ b/drivers/s390/kvm/kvm_virtio.c
@@ -198,7 +198,7 @@ static struct virtqueue *kvm_find_vq(str
goto out;
vq = vring_new_virtqueue(config->num, KVM_S390_VIRTIO_RING_ALIGN,
- vdev, (void *) config->address,
+ vdev, true, (void *) config->address,
kvm_notify, callback, name);
if (!vq) {
err = -ENOMEM;
diff --git a/drivers/virtio/virtio_mmio.c b/drivers/virtio/virtio_mmio.c
--- a/drivers/virtio/virtio_mmio.c
+++ b/drivers/virtio/virtio_mmio.c
@@ -309,9 +309,10 @@ static struct virtqueue *vm_setup_vq(str
writel(virt_to_phys(info->queue) >>...
2018 Apr 19
4
[PATCH] virtio_ring: switch to dma_XX barriers for rpmsg
virtio is using barriers to order memory accesses, thus
dma_wmb/rmb is a good match.
Build-tested on x86: Before
[mst at tuck linux]$ size drivers/virtio/virtio_ring.o
text data bss dec hex filename
11392 820 0 12212 2fb4 drivers/virtio/virtio_ring.o
After
mst at tuck linux]$ size drivers/virtio/virtio_ring.o
text data bss dec hex filename
2018 Apr 19
4
[PATCH] virtio_ring: switch to dma_XX barriers for rpmsg
virtio is using barriers to order memory accesses, thus
dma_wmb/rmb is a good match.
Build-tested on x86: Before
[mst at tuck linux]$ size drivers/virtio/virtio_ring.o
text data bss dec hex filename
11392 820 0 12212 2fb4 drivers/virtio/virtio_ring.o
After
mst at tuck linux]$ size drivers/virtio/virtio_ring.o
text data bss dec hex filename
2015 Jan 20
4
[PATCH v2] virtio-mmio: Update the device to OASIS spec version
...VRING_ALIGN,
- vm_dev->base + VIRTIO_MMIO_QUEUE_ALIGN);
- writel(virt_to_phys(info->queue) >> PAGE_SHIFT,
- vm_dev->base + VIRTIO_MMIO_QUEUE_PFN);
-
/* Create the vring */
vq = vring_new_virtqueue(index, info->num, VIRTIO_MMIO_VRING_ALIGN, vdev,
true, info->queue, vm_notify, callback, name);
@@ -371,6 +354,33 @@ static struct virtqueue *vm_setup_vq(struct virtio_device *vdev, unsigned index,
goto error_new_virtqueue;
}
+ /* Activate the queue */
+ writel(info->num, vm_dev->base + VIRTIO_MMIO_QUEUE_NUM);
+ if (vm_dev->version == 1) {
+ writel(PAGE_SIZE...
2015 Jan 20
4
[PATCH v2] virtio-mmio: Update the device to OASIS spec version
...VRING_ALIGN,
- vm_dev->base + VIRTIO_MMIO_QUEUE_ALIGN);
- writel(virt_to_phys(info->queue) >> PAGE_SHIFT,
- vm_dev->base + VIRTIO_MMIO_QUEUE_PFN);
-
/* Create the vring */
vq = vring_new_virtqueue(index, info->num, VIRTIO_MMIO_VRING_ALIGN, vdev,
true, info->queue, vm_notify, callback, name);
@@ -371,6 +354,33 @@ static struct virtqueue *vm_setup_vq(struct virtio_device *vdev, unsigned index,
goto error_new_virtqueue;
}
+ /* Activate the queue */
+ writel(info->num, vm_dev->base + VIRTIO_MMIO_QUEUE_NUM);
+ if (vm_dev->version == 1) {
+ writel(PAGE_SIZE...
2013 Oct 28
2
[PATCH V2 RFC 1/9] virtio_ring: change host notification API
Rusty,
here is just patch 1 (using bool as return value in notify API).
Thanks.
Heinz Graalfs (9):
virtio_ring: change host notification API
virtio_ring: let virtqueue_{kick()/notify()} return a bool
virtio_net: verify if virtqueue_kick() succeeded
virtio_test: verify if virtqueue_kick() succeeded
virtio_ring: add new function virtqueue_is_broken()
virtio_blk: verify if queue is
2013 Oct 28
2
[PATCH V2 RFC 1/9] virtio_ring: change host notification API
Rusty,
here is just patch 1 (using bool as return value in notify API).
Thanks.
Heinz Graalfs (9):
virtio_ring: change host notification API
virtio_ring: let virtqueue_{kick()/notify()} return a bool
virtio_net: verify if virtqueue_kick() succeeded
virtio_test: verify if virtqueue_kick() succeeded
virtio_ring: add new function virtqueue_is_broken()
virtio_blk: verify if queue is
2015 Apr 28
0
[PATCH v2] virtio-mmio: Update the device to OASIS spec version
...se + VIRTIO_MMIO_QUEUE_ALIGN);
> - writel(virt_to_phys(info->queue) >> PAGE_SHIFT,
> - vm_dev->base + VIRTIO_MMIO_QUEUE_PFN);
> -
> /* Create the vring */
> vq = vring_new_virtqueue(index, info->num, VIRTIO_MMIO_VRING_ALIGN, vdev,
> true, info->queue, vm_notify, callback, name);
> @@ -371,6 +354,33 @@ static struct virtqueue *vm_setup_vq(struct virtio_device *vdev, unsigned index,
> goto error_new_virtqueue;
> }
>
> + /* Activate the queue */
> + writel(info->num, vm_dev->base + VIRTIO_MMIO_QUEUE_NUM);
> + if (vm_dev->...