[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PULL 13/14] virtio-ccw: fix virtio_set_ind_atomic
From: |
Halil Pasic |
Subject: |
Re: [PULL 13/14] virtio-ccw: fix virtio_set_ind_atomic |
Date: |
Wed, 9 Sep 2020 17:41:48 +0200 |
On Tue, 8 Sep 2020 11:34:28 +0200
Halil Pasic <pasic@linux.ibm.com> wrote:
> On Fri, 3 Jul 2020 12:06:49 +0200
> Cornelia Huck <cohuck@redhat.com> wrote:
>
> > From: Halil Pasic <pasic@linux.ibm.com>
> >
> > The atomic_cmpxchg() loop is broken because we occasionally end up with
> > old and _old having different values (a legit compiler can generate code
> > that accessed *ind_addr again to pick up a value for _old instead of
> > using the value of old that was already fetched according to the
> > rules of the abstract machine). This means the underlying CS instruction
> > may use a different old (_old) than the one we intended to use if
> > atomic_cmpxchg() performed the xchg part.
> >
>
> [..]
>
> I believe this fix should be considered for stable. Unfortunately we
> didn't think about it back then.
>
> Regards,
> Halil
>
ping