Displaying 9 results from an estimated 9 matches for "vhost_vdpa_set_status".
2020 Jul 28
0
[PATCH V4 4/6] vhost_vdpa: implement IRQ offloading in vhost_vdpa
...all_ctx.ctx;
> + irq_bypass_register_producer(&vq->call_ctx.producer);
> + spin_unlock(&vq->call_ctx.ctx_lock);
> +}
> +
> static void vhost_vdpa_reset(struct vhost_vdpa *v)
> {
> struct vdpa_device *vdpa = v->vdpa;
> @@ -155,11 +204,15 @@ static long vhost_vdpa_set_status(struct vhost_vdpa *v, u8 __user *statusp)
> {
> struct vdpa_device *vdpa = v->vdpa;
> const struct vdpa_config_ops *ops = vdpa->config;
> - u8 status;
> + u8 status, status_old;
> + int i, nvqs;
>
> if (copy_from_user(&status, statusp, sizeof(status))...
2020 Jul 28
0
[PATCH V4 4/6] vhost_vdpa: implement IRQ offloading in vhost_vdpa
On 2020/7/28 ??5:18, Zhu, Lingshan wrote:
>>>
>>> ?????? * status to 0.
>>> @@ -167,6 +220,15 @@ static long vhost_vdpa_set_status(struct
>>> vhost_vdpa *v, u8 __user *statusp)
>>> ????? if (status != 0 && (ops->get_status(vdpa) & ~status) != 0)
>>> ????????? return -EINVAL;
>>> ? +??? /* vq irq is not expected to be changed once DRIVER_OK is set */
>>
>>
>>...
2020 Aug 04
0
[PATCH V5 4/6] vhost_vdpa: implement IRQ offloading in vhost_vdpa
...oducer.token = vq->call_ctx.ctx;
vq->call_ctx.producer.irq = irq;
ret = irq_bypass_register_producer(&vq->call_ctx.producer);
> +
> static void vhost_vdpa_reset(struct vhost_vdpa *v)
> {
> struct vdpa_device *vdpa = v->vdpa;
> @@ -155,11 +204,15 @@ static long vhost_vdpa_set_status(struct vhost_vdpa *v, u8 __user *statusp)
> {
> struct vdpa_device *vdpa = v->vdpa;
> const struct vdpa_config_ops *ops = vdpa->config;
> - u8 status;
> + u8 status, status_old;
> + int nvqs = v->nvqs;
> + u16 i;
>
> if (copy_from_user(&status,...
2020 Aug 04
0
[PATCH V5 4/6] vhost_vdpa: implement IRQ offloading in vhost_vdpa
...of useless irq_bypass_unregister_producer().
> is it worth for simplify the code?
>
>
> +
> ? static void vhost_vdpa_reset(struct vhost_vdpa *v)
> ? {
> ????? struct vdpa_device *vdpa = v->vdpa;
> @@ -155,11 +204,15 @@ static long vhost_vdpa_set_status(struct
> vhost_vdpa *v, u8 __user *statusp)
> ? {
> ????? struct vdpa_device *vdpa = v->vdpa;
> ????? const struct vdpa_config_ops *ops = vdpa->config;
> -??? u8 status;
> +??? u8 status, status_old;
> +??? int nvqs...
2020 Aug 05
0
[PATCH V5 4/6] vhost_vdpa: implement IRQ offloading in vhost_vdpa
...you have a case for this?
> is it worth for simplify the code?
Less code(bug).
>>
>>> +
>>> ? static void vhost_vdpa_reset(struct vhost_vdpa *v)
>>> ? {
>>> ????? struct vdpa_device *vdpa = v->vdpa;
>>> @@ -155,11 +204,15 @@ static long vhost_vdpa_set_status(struct
>>> vhost_vdpa *v, u8 __user *statusp)
>>> ? {
>>> ????? struct vdpa_device *vdpa = v->vdpa;
>>> ????? const struct vdpa_config_ops *ops = vdpa->config;
>>> -??? u8 status;
>>> +??? u8 status, status_old;
>>> +??? int nvqs...
2020 Feb 05
0
[PATCH] vhost: introduce vDPA based backend
...ps *ops = vdpa->config;
> > + u8 status;
> > +
> > + status = ops->get_status(vdpa);
> > +
> > + if (copy_to_user(statusp, &status, sizeof(status)))
> > + return -EFAULT;
> > +
> > + return 0;
> > +}
> > +
> > +static long vhost_vdpa_set_status(struct vhost_vdpa *v, u8 __user *statusp)
> > +{
> > + struct vdpa_device *vdpa = v->vdpa;
> > + const struct vdpa_config_ops *ops = vdpa->config;
> > + u8 status;
> > +
> > + if (copy_from_user(&status, statusp, sizeof(status)))
> > + return -EF...
2020 Aug 05
0
[PATCH V5 4/6] vhost_vdpa: implement IRQ offloading in vhost_vdpa
...and it helps for reviewers.
>>
>>>>
>>>>> +
>>>>> ? static void vhost_vdpa_reset(struct vhost_vdpa *v)
>>>>> ? {
>>>>> ????? struct vdpa_device *vdpa = v->vdpa;
>>>>> @@ -155,11 +204,15 @@ static long vhost_vdpa_set_status(struct
>>>>> vhost_vdpa *v, u8 __user *statusp)
>>>>> ? {
>>>>> ????? struct vdpa_device *vdpa = v->vdpa;
>>>>> ????? const struct vdpa_config_ops *ops = vdpa->config;
>>>>> -??? u8 status;
>>>>> +??? u...
2020 Feb 04
10
[PATCH] vhost: introduce vDPA based backend
...e *vdpa = v->vdpa;
> + const struct vdpa_config_ops *ops = vdpa->config;
> + u8 status;
> +
> + status = ops->get_status(vdpa);
> +
> + if (copy_to_user(statusp, &status, sizeof(status)))
> + return -EFAULT;
> +
> + return 0;
> +}
> +
> +static long vhost_vdpa_set_status(struct vhost_vdpa *v, u8 __user *statusp)
> +{
> + struct vdpa_device *vdpa = v->vdpa;
> + const struct vdpa_config_ops *ops = vdpa->config;
> + u8 status;
> +
> + if (copy_from_user(&status, statusp, sizeof(status)))
> + return -EFAULT;
> +
> + /*
> + * Us...
2020 Feb 04
10
[PATCH] vhost: introduce vDPA based backend
...e *vdpa = v->vdpa;
> + const struct vdpa_config_ops *ops = vdpa->config;
> + u8 status;
> +
> + status = ops->get_status(vdpa);
> +
> + if (copy_to_user(statusp, &status, sizeof(status)))
> + return -EFAULT;
> +
> + return 0;
> +}
> +
> +static long vhost_vdpa_set_status(struct vhost_vdpa *v, u8 __user *statusp)
> +{
> + struct vdpa_device *vdpa = v->vdpa;
> + const struct vdpa_config_ops *ops = vdpa->config;
> + u8 status;
> +
> + if (copy_from_user(&status, statusp, sizeof(status)))
> + return -EFAULT;
> +
> + /*
> + * Us...