search for: eventfd_signal

Displaying 20 results from an estimated 216 matches for "eventfd_signal".

2017 May 22
2
[PATCH 2/2] vhost/scsi: Delete error messages for failed memory allocations in five functions
...- vq_err(vq, "Failed to allocate vhost_scsi_evt\n"); #define vq_err(vq, fmt, ...) do { \ pr_debug(pr_fmt(fmt), ##__VA_ARGS__); \ if ((vq)->error_ctx) \ eventfd_signal((vq)->error_ctx, 1);\ } while (0) You silently dropped the eventfd_signal() call. Please explain. -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 455 bytes Desc: not available URL: <http://lists....
2017 May 22
2
[PATCH 2/2] vhost/scsi: Delete error messages for failed memory allocations in five functions
...- vq_err(vq, "Failed to allocate vhost_scsi_evt\n"); #define vq_err(vq, fmt, ...) do { \ pr_debug(pr_fmt(fmt), ##__VA_ARGS__); \ if ((vq)->error_ctx) \ eventfd_signal((vq)->error_ctx, 1);\ } while (0) You silently dropped the eventfd_signal() call. Please explain. -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 455 bytes Desc: not available URL: <http://lists....
2020 Aug 04
3
[PATCH V5 1/6] vhost: introduce vhost_vring_call
...dpa_virtqueue_cb(void *private) >>> ? { >>> ????? struct vhost_virtqueue *vq = private; >>> -??? struct eventfd_ctx *call_ctx = vq->call_ctx; >>> +??? struct eventfd_ctx *call_ctx = vq->call_ctx.ctx; >>> ? ????? if (call_ctx) >>> ????????? eventfd_signal(call_ctx, 1); >>> @@ -382,7 +382,7 @@ static long vhost_vdpa_vring_ioctl(struct >>> vhost_vdpa *v, unsigned int cmd, >>> ????????? break; >>> ? ????? case VHOST_SET_VRING_CALL: >>> -??????? if (vq->call_ctx) { >>> +??????? if (vq->call_ct...
2020 Aug 04
3
[PATCH V5 1/6] vhost: introduce vhost_vring_call
...dpa_virtqueue_cb(void *private) >>> ? { >>> ????? struct vhost_virtqueue *vq = private; >>> -??? struct eventfd_ctx *call_ctx = vq->call_ctx; >>> +??? struct eventfd_ctx *call_ctx = vq->call_ctx.ctx; >>> ? ????? if (call_ctx) >>> ????????? eventfd_signal(call_ctx, 1); >>> @@ -382,7 +382,7 @@ static long vhost_vdpa_vring_ioctl(struct >>> vhost_vdpa *v, unsigned int cmd, >>> ????????? break; >>> ? ????? case VHOST_SET_VRING_CALL: >>> -??????? if (vq->call_ctx) { >>> +??????? if (vq->call_ct...
2018 Dec 12
2
[PATCH net V2 4/4] vhost: log dirty page correctly
...->used->flags; > - log_write(vq->log_base, vq->log_addr + > - (used - (void __user *)vq->used), > - sizeof vq->used->flags); > + log_used(vq, (used - (void __user *)vq->used), > + sizeof vq->used->flags); > if (vq->log_ctx) > eventfd_signal(vq->log_ctx, 1); > } > @@ -1789,9 +1844,8 @@ static int vhost_update_avail_event(struct vhost_virtqueue *vq, u16 avail_event) > smp_wmb(); > /* Log avail event write */ > used = vhost_avail_event(vq); > - log_write(vq->log_base, vq->log_addr + > - (used...
2018 Dec 12
2
[PATCH net V2 4/4] vhost: log dirty page correctly
...->used->flags; > - log_write(vq->log_base, vq->log_addr + > - (used - (void __user *)vq->used), > - sizeof vq->used->flags); > + log_used(vq, (used - (void __user *)vq->used), > + sizeof vq->used->flags); > if (vq->log_ctx) > eventfd_signal(vq->log_ctx, 1); > } > @@ -1789,9 +1844,8 @@ static int vhost_update_avail_event(struct vhost_virtqueue *vq, u16 avail_event) > smp_wmb(); > /* Log avail event write */ > used = vhost_avail_event(vq); > - log_write(vq->log_base, vq->log_addr + > - (used...
2020 Aug 04
0
[PATCH V5 1/6] vhost: introduce vhost_vring_call
...k(struct vhost_work *work) > static irqreturn_t vhost_vdpa_virtqueue_cb(void *private) > { > struct vhost_virtqueue *vq = private; > - struct eventfd_ctx *call_ctx = vq->call_ctx; > + struct eventfd_ctx *call_ctx = vq->call_ctx.ctx; > > if (call_ctx) > eventfd_signal(call_ctx, 1); > @@ -382,7 +382,7 @@ static long vhost_vdpa_vring_ioctl(struct vhost_vdpa *v, unsigned int cmd, > break; > > case VHOST_SET_VRING_CALL: > - if (vq->call_ctx) { > + if (vq->call_ctx.ctx) { > cb.callback = vhost_vdpa_virtqueue_cb; > c...
2020 Jul 17
0
[PATCH V2 1/6] vhost: introduce vhost_call_ctx
...k(struct vhost_work *work) > static irqreturn_t vhost_vdpa_virtqueue_cb(void *private) > { > struct vhost_virtqueue *vq = private; > - struct eventfd_ctx *call_ctx = vq->call_ctx; > + struct eventfd_ctx *call_ctx = vq->call_ctx.ctx; > > if (call_ctx) > eventfd_signal(call_ctx, 1); > @@ -382,7 +382,7 @@ static long vhost_vdpa_vring_ioctl(struct vhost_vdpa *v, unsigned int cmd, > break; > > case VHOST_SET_VRING_CALL: > - if (vq->call_ctx) { > + if (vq->call_ctx.ctx) { > cb.callback = vhost_vdpa_virtqueue_cb; > c...
2020 Jul 22
0
[PATCH V3 1/6] vhost: introduce vhost_vring_call
...k(struct vhost_work *work) > static irqreturn_t vhost_vdpa_virtqueue_cb(void *private) > { > struct vhost_virtqueue *vq = private; > - struct eventfd_ctx *call_ctx = vq->call_ctx; > + struct eventfd_ctx *call_ctx = vq->call_ctx.ctx; > > if (call_ctx) > eventfd_signal(call_ctx, 1); > @@ -382,7 +382,7 @@ static long vhost_vdpa_vring_ioctl(struct vhost_vdpa *v, unsigned int cmd, > break; > > case VHOST_SET_VRING_CALL: > - if (vq->call_ctx) { > + if (vq->call_ctx.ctx) { > cb.callback = vhost_vdpa_virtqueue_cb; > c...
2020 Aug 04
0
[PATCH V5 1/6] vhost: introduce vhost_vring_call
...> > ? { > > > > ????? struct vhost_virtqueue *vq = private; > > > > -??? struct eventfd_ctx *call_ctx = vq->call_ctx; > > > > +??? struct eventfd_ctx *call_ctx = vq->call_ctx.ctx; > > > > ? ????? if (call_ctx) > > > > ????????? eventfd_signal(call_ctx, 1); > > > > @@ -382,7 +382,7 @@ static long vhost_vdpa_vring_ioctl(struct > > > > vhost_vdpa *v, unsigned int cmd, > > > > ????????? break; > > > > ? ????? case VHOST_SET_VRING_CALL: > > > > -??????? if (vq->call_ctx) { > &...
2018 Dec 10
0
[PATCH net 4/4] vhost: log dirty page correctly
...ed flag write. */ used = &vq->used->flags; - log_write(vq->log_base, vq->log_addr + - (used - (void __user *)vq->used), - sizeof vq->used->flags); + log_used(vq, (used - (void __user *)vq->used), + sizeof vq->used->flags); if (vq->log_ctx) eventfd_signal(vq->log_ctx, 1); } @@ -1789,9 +1843,8 @@ static int vhost_update_avail_event(struct vhost_virtqueue *vq, u16 avail_event) smp_wmb(); /* Log avail event write */ used = vhost_avail_event(vq); - log_write(vq->log_base, vq->log_addr + - (used - (void __user *)vq->used), -...
2018 Dec 12
0
[PATCH net V2 4/4] vhost: log dirty page correctly
...ed flag write. */ used = &vq->used->flags; - log_write(vq->log_base, vq->log_addr + - (used - (void __user *)vq->used), - sizeof vq->used->flags); + log_used(vq, (used - (void __user *)vq->used), + sizeof vq->used->flags); if (vq->log_ctx) eventfd_signal(vq->log_ctx, 1); } @@ -1789,9 +1844,8 @@ static int vhost_update_avail_event(struct vhost_virtqueue *vq, u16 avail_event) smp_wmb(); /* Log avail event write */ used = vhost_avail_event(vq); - log_write(vq->log_base, vq->log_addr + - (used - (void __user *)vq->used), -...
2017 May 22
0
[PATCH 2/2] vhost/scsi: Delete error messages for failed memory allocations in five functions
...d to allocate vhost_scsi_evt\n"); > > #define vq_err(vq, fmt, ...) do { \ > pr_debug(pr_fmt(fmt), ##__VA_ARGS__); \ > if ((vq)->error_ctx) \ > eventfd_signal((vq)->error_ctx, 1);\ > } while (0) > > You silently dropped the eventfd_signal() call. Do you prefer to preserve this special error handling then? Regards, Markus
2018 Dec 13
0
[PATCH net V2 4/4] vhost: log dirty page correctly
...- log_write(vq->log_base, vq->log_addr + >> - (used - (void __user *)vq->used), >> - sizeof vq->used->flags); >> + log_used(vq, (used - (void __user *)vq->used), >> + sizeof vq->used->flags); >> if (vq->log_ctx) >> eventfd_signal(vq->log_ctx, 1); >> } >> @@ -1789,9 +1844,8 @@ static int vhost_update_avail_event(struct vhost_virtqueue *vq, u16 avail_event) >> smp_wmb(); >> /* Log avail event write */ >> used = vhost_avail_event(vq); >> - log_write(vq->log_base, vq-&gt...
2017 Jan 22
1
[PATCH v2] vfio error recovery: kernel support
...s/vfio/pci/vfio_pci.c +++ b/drivers/vfio/pci/vfio_pci.c @@ -1296,7 +1296,9 @@ static pci_ers_result_t vfio_pci_aer_err_detected(struct pci_dev *pdev, mutex_lock(&vdev->igate); - if (vdev->err_trigger) + if (state == pci_channel_io_normal && vdev->non_fatal_err_trigger) + eventfd_signal(vdev->non_fatal_err_trigger, 1); + else if (vdev->err_trigger) eventfd_signal(vdev->err_trigger, 1); mutex_unlock(&vdev->igate); @@ -1306,8 +1308,39 @@ static pci_ers_result_t vfio_pci_aer_err_detected(struct pci_dev *pdev, return PCI_ERS_RESULT_CAN_RECOVER; } +static pc...
2017 Sep 26
2
[PATCH net-next RFC 3/5] vhost: introduce vhost_add_used_idx()
...d idx"); > + return -EFAULT; > + } > + if (unlikely(vq->log_used)) { > + /* Log used index update. */ > + log_write(vq->log_base, > + vq->log_addr + offsetof(struct vring_used, idx), > + sizeof(vq->used->idx)); > + if (vq->log_ctx) > + eventfd_signal(vq->log_ctx, 1); > + } > + return 0; > +} > +EXPORT_SYMBOL_GPL(vhost_add_used_idx); > + > static int __vhost_add_used_n(struct vhost_virtqueue *vq, > struct vring_used_elem *heads, > unsigned count) > diff --git a/drivers/vhost/vhost.h b/drivers/vhost/...
2017 Jan 22
1
[PATCH v2] vfio error recovery: kernel support
...s/vfio/pci/vfio_pci.c +++ b/drivers/vfio/pci/vfio_pci.c @@ -1296,7 +1296,9 @@ static pci_ers_result_t vfio_pci_aer_err_detected(struct pci_dev *pdev, mutex_lock(&vdev->igate); - if (vdev->err_trigger) + if (state == pci_channel_io_normal && vdev->non_fatal_err_trigger) + eventfd_signal(vdev->non_fatal_err_trigger, 1); + else if (vdev->err_trigger) eventfd_signal(vdev->err_trigger, 1); mutex_unlock(&vdev->igate); @@ -1306,8 +1308,39 @@ static pci_ers_result_t vfio_pci_aer_err_detected(struct pci_dev *pdev, return PCI_ERS_RESULT_CAN_RECOVER; } +static pc...
2017 Sep 26
2
[PATCH net-next RFC 3/5] vhost: introduce vhost_add_used_idx()
...d idx"); > + return -EFAULT; > + } > + if (unlikely(vq->log_used)) { > + /* Log used index update. */ > + log_write(vq->log_base, > + vq->log_addr + offsetof(struct vring_used, idx), > + sizeof(vq->used->idx)); > + if (vq->log_ctx) > + eventfd_signal(vq->log_ctx, 1); > + } > + return 0; > +} > +EXPORT_SYMBOL_GPL(vhost_add_used_idx); > + > static int __vhost_add_used_n(struct vhost_virtqueue *vq, > struct vring_used_elem *heads, > unsigned count) > diff --git a/drivers/vhost/vhost.h b/drivers/vhost/...
2017 Jan 22
2
[PATCH v3] vfio error recovery: kernel support
...s/vfio/pci/vfio_pci.c +++ b/drivers/vfio/pci/vfio_pci.c @@ -1296,7 +1296,9 @@ static pci_ers_result_t vfio_pci_aer_err_detected(struct pci_dev *pdev, mutex_lock(&vdev->igate); - if (vdev->err_trigger) + if (state == pci_channel_io_normal && vdev->non_fatal_err_trigger) + eventfd_signal(vdev->non_fatal_err_trigger, 1); + else if (vdev->err_trigger) eventfd_signal(vdev->err_trigger, 1); mutex_unlock(&vdev->igate); @@ -1306,8 +1308,38 @@ static pci_ers_result_t vfio_pci_aer_err_detected(struct pci_dev *pdev, return PCI_ERS_RESULT_CAN_RECOVER; } +static pc...
2017 Jan 22
2
[PATCH v3] vfio error recovery: kernel support
...s/vfio/pci/vfio_pci.c +++ b/drivers/vfio/pci/vfio_pci.c @@ -1296,7 +1296,9 @@ static pci_ers_result_t vfio_pci_aer_err_detected(struct pci_dev *pdev, mutex_lock(&vdev->igate); - if (vdev->err_trigger) + if (state == pci_channel_io_normal && vdev->non_fatal_err_trigger) + eventfd_signal(vdev->non_fatal_err_trigger, 1); + else if (vdev->err_trigger) eventfd_signal(vdev->err_trigger, 1); mutex_unlock(&vdev->igate); @@ -1306,8 +1308,38 @@ static pci_ers_result_t vfio_pci_aer_err_detected(struct pci_dev *pdev, return PCI_ERS_RESULT_CAN_RECOVER; } +static pc...