Displaying 20 results from an estimated 123 matches for "error_ctx".
2017 May 22
2
[PATCH 2/2] vhost/scsi: Delete error messages for failed memory allocations in five functions
...@@ vhost_scsi_allocate_evt(struct vhost_scsi *vs,
> if (!evt) {
> - 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: appl...
2017 May 22
2
[PATCH 2/2] vhost/scsi: Delete error messages for failed memory allocations in five functions
...@@ vhost_scsi_allocate_evt(struct vhost_scsi *vs,
> if (!evt) {
> - 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: appl...
2020 Aug 04
3
[PATCH V5 1/6] vhost: introduce vhost_vring_call
...gt; +
>>> ? static void vhost_vq_reset(struct vhost_dev *dev,
>>> ???????????????? struct vhost_virtqueue *vq)
>>> ? {
>>> @@ -319,13 +326,13 @@ static void vhost_vq_reset(struct vhost_dev *dev,
>>> ????? vq->log_base = NULL;
>>> ????? vq->error_ctx = NULL;
>>> ????? vq->kick = NULL;
>>> -??? vq->call_ctx = NULL;
>>> ????? vq->log_ctx = NULL;
>>> ????? vhost_reset_is_le(vq);
>>> ????? vhost_disable_cross_endian(vq);
>>> ????? vq->busyloop_timeout = 0;
>>> ????? vq->u...
2020 Aug 04
3
[PATCH V5 1/6] vhost: introduce vhost_vring_call
...gt; +
>>> ? static void vhost_vq_reset(struct vhost_dev *dev,
>>> ???????????????? struct vhost_virtqueue *vq)
>>> ? {
>>> @@ -319,13 +326,13 @@ static void vhost_vq_reset(struct vhost_dev *dev,
>>> ????? vq->log_base = NULL;
>>> ????? vq->error_ctx = NULL;
>>> ????? vq->kick = NULL;
>>> -??? vq->call_ctx = NULL;
>>> ????? vq->log_ctx = NULL;
>>> ????? vhost_reset_is_le(vq);
>>> ????? vhost_disable_cross_endian(vq);
>>> ????? vq->busyloop_timeout = 0;
>>> ????? vq->u...
2020 Aug 04
0
[PATCH V5 1/6] vhost: introduce vhost_vring_call
...);
> + spin_lock_init(&call_ctx->ctx_lock);
> +}
> +
> static void vhost_vq_reset(struct vhost_dev *dev,
> struct vhost_virtqueue *vq)
> {
> @@ -319,13 +326,13 @@ static void vhost_vq_reset(struct vhost_dev *dev,
> vq->log_base = NULL;
> vq->error_ctx = NULL;
> vq->kick = NULL;
> - vq->call_ctx = NULL;
> vq->log_ctx = NULL;
> vhost_reset_is_le(vq);
> vhost_disable_cross_endian(vq);
> vq->busyloop_timeout = 0;
> vq->umem = NULL;
> vq->iotlb = NULL;
> + vhost_vring_call_reset(&v...
2020 Jul 17
0
[PATCH V2 1/6] vhost: introduce vhost_call_ctx
...);
> + spin_lock_init(&call_ctx->ctx_lock);
> +}
> +
> static void vhost_vq_reset(struct vhost_dev *dev,
> struct vhost_virtqueue *vq)
> {
> @@ -319,13 +326,13 @@ static void vhost_vq_reset(struct vhost_dev *dev,
> vq->log_base = NULL;
> vq->error_ctx = NULL;
> vq->kick = NULL;
> - vq->call_ctx = NULL;
> vq->log_ctx = NULL;
> vhost_reset_is_le(vq);
> vhost_disable_cross_endian(vq);
> vq->busyloop_timeout = 0;
> vq->umem = NULL;
> vq->iotlb = NULL;
> + vhost_call_ctx_reset(&vq-...
2020 Jul 22
0
[PATCH V3 1/6] vhost: introduce vhost_vring_call
...);
> + spin_lock_init(&call_ctx->ctx_lock);
> +}
> +
> static void vhost_vq_reset(struct vhost_dev *dev,
> struct vhost_virtqueue *vq)
> {
> @@ -319,13 +326,13 @@ static void vhost_vq_reset(struct vhost_dev *dev,
> vq->log_base = NULL;
> vq->error_ctx = NULL;
> vq->kick = NULL;
> - vq->call_ctx = NULL;
> vq->log_ctx = NULL;
> vhost_reset_is_le(vq);
> vhost_disable_cross_endian(vq);
> vq->busyloop_timeout = 0;
> vq->umem = NULL;
> vq->iotlb = NULL;
> + vhost_vring_call_reset(&v...
2017 Mar 07
2
[PATCH] vhost: Move vhost.h to allow vhost driver out-of-tree compilation
...nsigned int num;
- struct vring_desc __user *desc;
- struct vring_avail __user *avail;
- struct vring_used __user *used;
- const struct vhost_umem_node *meta_iotlb[VHOST_NUM_ADDRS];
- struct file *kick;
- struct file *call;
- struct file *error;
- struct eventfd_ctx *call_ctx;
- struct eventfd_ctx *error_ctx;
- struct eventfd_ctx *log_ctx;
-
- struct vhost_poll poll;
-
- /* The routine to call when the Guest pings us, or timeout. */
- vhost_work_fn_t handle_kick;
-
- /* Last available index we saw. */
- u16 last_avail_idx;
-
- /* Caches available index value from user. */
- u16 avail_idx;
-
- /* Last i...
2017 Mar 07
2
[PATCH] vhost: Move vhost.h to allow vhost driver out-of-tree compilation
...nsigned int num;
- struct vring_desc __user *desc;
- struct vring_avail __user *avail;
- struct vring_used __user *used;
- const struct vhost_umem_node *meta_iotlb[VHOST_NUM_ADDRS];
- struct file *kick;
- struct file *call;
- struct file *error;
- struct eventfd_ctx *call_ctx;
- struct eventfd_ctx *error_ctx;
- struct eventfd_ctx *log_ctx;
-
- struct vhost_poll poll;
-
- /* The routine to call when the Guest pings us, or timeout. */
- vhost_work_fn_t handle_kick;
-
- /* Last available index we saw. */
- u16 last_avail_idx;
-
- /* Caches available index value from user. */
- u16 avail_idx;
-
- /* Last i...
2020 Aug 04
0
[PATCH V5 1/6] vhost: introduce vhost_vring_call
...ost_vq_reset(struct vhost_dev *dev,
> > > > ???????????????? struct vhost_virtqueue *vq)
> > > > ? {
> > > > @@ -319,13 +326,13 @@ static void vhost_vq_reset(struct vhost_dev *dev,
> > > > ????? vq->log_base = NULL;
> > > > ????? vq->error_ctx = NULL;
> > > > ????? vq->kick = NULL;
> > > > -??? vq->call_ctx = NULL;
> > > > ????? vq->log_ctx = NULL;
> > > > ????? vhost_reset_is_le(vq);
> > > > ????? vhost_disable_cross_endian(vq);
> > > > ????? vq->busyloo...
2019 Oct 12
2
[PATCH RFC v1 2/2] vhost: batching fetches
...vhost_dev *dev,
> int vhost_init_device_iotlb(struct vhost_dev *d, bool enabled);
>
> #define vq_err(vq, fmt, ...) do { \
> - pr_debug(pr_fmt(fmt), ##__VA_ARGS__); \
> + pr_err(pr_fmt(fmt), ##__VA_ARGS__); \
> if ((vq)->error_ctx) \
> eventfd_signal((vq)->error_ctx, 1);\
> } while (0)
2019 Oct 12
2
[PATCH RFC v1 2/2] vhost: batching fetches
...vhost_dev *dev,
> int vhost_init_device_iotlb(struct vhost_dev *d, bool enabled);
>
> #define vq_err(vq, fmt, ...) do { \
> - pr_debug(pr_fmt(fmt), ##__VA_ARGS__); \
> + pr_err(pr_fmt(fmt), ##__VA_ARGS__); \
> if ((vq)->error_ctx) \
> eventfd_signal((vq)->error_ctx, 1);\
> } while (0)
2017 Mar 10
0
[PATCH] vhost: Move vhost.h to allow vhost driver out-of-tree compilation
...ser *desc;
> - struct vring_avail __user *avail;
> - struct vring_used __user *used;
> - const struct vhost_umem_node *meta_iotlb[VHOST_NUM_ADDRS];
> - struct file *kick;
> - struct file *call;
> - struct file *error;
> - struct eventfd_ctx *call_ctx;
> - struct eventfd_ctx *error_ctx;
> - struct eventfd_ctx *log_ctx;
> -
> - struct vhost_poll poll;
> -
> - /* The routine to call when the Guest pings us, or timeout. */
> - vhost_work_fn_t handle_kick;
> -
> - /* Last available index we saw. */
> - u16 last_avail_idx;
> -
> - /* Caches available i...
2017 May 22
0
[PATCH 2/2] vhost/scsi: Delete error messages for failed memory allocations in five functions
...struct vhost_scsi *vs,
>> if (!evt) {
>> - 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.
Do you prefer to preserve this special error handling then?
Regards,
Markus
2020 Jun 03
2
[PATCH RFC 03/13] vhost: batching fetches
...,
> struct vhost_iotlb_map *map);
>
> #define vq_err(vq, fmt, ...) do { \
> - pr_debug(pr_fmt(fmt), ##__VA_ARGS__); \
> + pr_err(pr_fmt(fmt), ##__VA_ARGS__); \
Need a separate patch for this?
Thanks
> if ((vq)->error_ctx) \
> eventfd_signal((vq)->error_ctx, 1);\
> } while (0)
> @@ -255,6 +256,8 @@ static inline void vhost_vq_set_backend(struct vhost_virtqueue *vq,
> void *private_data)
> {
> vq->private_data = private_data;
> + vq->nde...
2020 Jun 03
2
[PATCH RFC 03/13] vhost: batching fetches
...,
> struct vhost_iotlb_map *map);
>
> #define vq_err(vq, fmt, ...) do { \
> - pr_debug(pr_fmt(fmt), ##__VA_ARGS__); \
> + pr_err(pr_fmt(fmt), ##__VA_ARGS__); \
Need a separate patch for this?
Thanks
> if ((vq)->error_ctx) \
> eventfd_signal((vq)->error_ctx, 1);\
> } while (0)
> @@ -255,6 +256,8 @@ static inline void vhost_vq_set_backend(struct vhost_virtqueue *vq,
> void *private_data)
> {
> vq->private_data = private_data;
> + vq->nde...
2009 Aug 19
1
[PATCHv4 2/2] vhost_net: a kernel-level virtio server
...mutex */
+void vhost_dev_cleanup(struct vhost_dev *dev)
+{
+ int i;
+ for (i = 0; i < dev->nvqs; ++i) {
+ if (dev->vqs[i].kick && dev->vqs[i].handle_kick) {
+ vhost_poll_stop(&dev->vqs[i].poll);
+ vhost_poll_flush(&dev->vqs[i].poll);
+ }
+ if (dev->vqs[i].error_ctx)
+ eventfd_ctx_put(dev->vqs[i].error_ctx);
+ if (dev->vqs[i].error)
+ fput(dev->vqs[i].error);
+ if (dev->vqs[i].kick)
+ fput(dev->vqs[i].kick);
+ if (dev->vqs[i].call_ctx)
+ eventfd_ctx_put(dev->vqs[i].call_ctx);
+ if (dev->vqs[i].call)
+ fput(dev->vqs[i].c...
2009 Aug 19
1
[PATCHv4 2/2] vhost_net: a kernel-level virtio server
...mutex */
+void vhost_dev_cleanup(struct vhost_dev *dev)
+{
+ int i;
+ for (i = 0; i < dev->nvqs; ++i) {
+ if (dev->vqs[i].kick && dev->vqs[i].handle_kick) {
+ vhost_poll_stop(&dev->vqs[i].poll);
+ vhost_poll_flush(&dev->vqs[i].poll);
+ }
+ if (dev->vqs[i].error_ctx)
+ eventfd_ctx_put(dev->vqs[i].error_ctx);
+ if (dev->vqs[i].error)
+ fput(dev->vqs[i].error);
+ if (dev->vqs[i].kick)
+ fput(dev->vqs[i].kick);
+ if (dev->vqs[i].call_ctx)
+ eventfd_ctx_put(dev->vqs[i].call_ctx);
+ if (dev->vqs[i].call)
+ fput(dev->vqs[i].c...
2009 Aug 11
2
[PATCHv2 2/2] vhost_net: a kernel-level virtio server
...mutex */
+void vhost_dev_cleanup(struct vhost_dev *dev)
+{
+ int i;
+ for(i = 0; i < dev->nvqs; ++i) {
+ if (dev->vqs[i].kick && dev->vqs[i].handle_kick) {
+ vhost_poll_stop(&dev->vqs[i].poll);
+ vhost_poll_flush(&dev->vqs[i].poll);
+ }
+ if (dev->vqs[i].error_ctx)
+ eventfd_ctx_put(dev->vqs[i].error_ctx);
+ if (dev->vqs[i].error)
+ fput(dev->vqs[i].error);
+ if (dev->vqs[i].kick)
+ fput(dev->vqs[i].kick);
+ if (dev->vqs[i].call_ctx)
+ eventfd_ctx_put(dev->vqs[i].call_ctx);
+ if (dev->vqs[i].call)
+ fput(dev->vqs[i].c...
2009 Aug 11
2
[PATCHv2 2/2] vhost_net: a kernel-level virtio server
...mutex */
+void vhost_dev_cleanup(struct vhost_dev *dev)
+{
+ int i;
+ for(i = 0; i < dev->nvqs; ++i) {
+ if (dev->vqs[i].kick && dev->vqs[i].handle_kick) {
+ vhost_poll_stop(&dev->vqs[i].poll);
+ vhost_poll_flush(&dev->vqs[i].poll);
+ }
+ if (dev->vqs[i].error_ctx)
+ eventfd_ctx_put(dev->vqs[i].error_ctx);
+ if (dev->vqs[i].error)
+ fput(dev->vqs[i].error);
+ if (dev->vqs[i].kick)
+ fput(dev->vqs[i].kick);
+ if (dev->vqs[i].call_ctx)
+ eventfd_ctx_put(dev->vqs[i].call_ctx);
+ if (dev->vqs[i].call)
+ fput(dev->vqs[i].c...