On 04.04.2013, at 10:25, Cornelia Huck wrote:
> ccw_io_helper neglected to reset vcdev->err after a new channel
> program had been successfully started, resulting in stale errors
> delivered after one I/O failed. Reset the error after a new
> channel program has been successfully started with no old I/O
> pending.
>
> Signed-off-by: Cornelia Huck <[email protected]>
Shouldn't this be CC: stable?
Alex
> ---
> drivers/s390/kvm/virtio_ccw.c | 5 ++++-
> 1 file changed, 4 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/s390/kvm/virtio_ccw.c b/drivers/s390/kvm/virtio_ccw.c
> index 42d507c..5948f2a 100644
> --- a/drivers/s390/kvm/virtio_ccw.c
> +++ b/drivers/s390/kvm/virtio_ccw.c
> @@ -133,8 +133,11 @@ static int ccw_io_helper(struct virtio_ccw_device *vcdev,
> do {
> spin_lock_irqsave(get_ccwdev_lock(vcdev->cdev), flags);
> ret = ccw_device_start(vcdev->cdev, ccw, intparm, 0, 0);
> - if (!ret)
> + if (!ret) {
> + if (!vcdev->curr_io)
> + vcdev->err = 0;
> vcdev->curr_io |= flag;
> + }
> spin_unlock_irqrestore(get_ccwdev_lock(vcdev->cdev), flags);
> cpu_relax();
> } while (ret == -EBUSY);
> --
> 1.7.12.4
>
--
To unsubscribe from this list: send the line "unsubscribe kvm" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html