| From | Paolo Bonzini <> | Subject | Re: 5.13-rt1 + KVM = WARNING: at fs/eventfd.c:74 eventfd_signal() | Date | Mon, 26 Jul 2021 13:03:15 +0200 |
| |
On 24/07/21 06:33, Hillf Danton wrote: > lock WQ > count += n > no waiter > unlock WQ
Ok, this is a write.
> > lock WQ > add waiter for EPOLLIN > unlock WQ
This is eventfd_poll(). It hasn't yet returned EPOLLIN.
> lock WQ > count = 0 > wakeup EPOLLOUT > unlock WQ
This is a read().
> lock WQ > count += n > no waiter > unlock WQ
This is wrong; after "unlock WQ" in CPU3 there *is* a waiter, no one has waked it up yet.
Paolo
> ------------------------------- c1 = count
|