On Wed, Apr 13 2022, Jason Wang <jasow...@redhat.com> wrote: > On Wed, Apr 13, 2022 at 12:49 AM Cornelia Huck <coh...@redhat.com> wrote: >> >> On Tue, Apr 12 2022, Halil Pasic <pa...@linux.ibm.com> wrote: >> >> > On Mon, 11 Apr 2022 16:27:41 +0200 >> > Cornelia Huck <coh...@redhat.com> wrote: >> >> >> My main concern is that we would need to synchronize against a single >> >> interrupt that covers all kinds of I/O interrupts, not just a single >> >> device... >> >> >> > >> > Could we synchronize on struct airq_info's lock member? If we were >> > to grab all of these that might be involved... >> >> Hm, that could possibly narrow the sync down to a subset, which seems >> better. For devices still using classic interrupts, per-device sync >> would be easy. >> >> > >> > AFAIU for the synchronize implementation we need a lock or a set of locks >> > that contain all the possible vring_interrupt() calls with the queuues >> > that belong to the given device as a critical section. That way, one >> > has the acquire's and release's in place so that the vrign_interrupt() >> > either guaranteed to finish before the change of driver_ready is >> > guaranteed to be complete, or it is guaranteed to see the change. >> > >> > In any case, I guess we should first get clear on the first part. I.e. >> > when do we want to allow host->guest notifications. >> >> Also, whether we just care about vring interrupts, or general device >> interrupts (not sure if a config change interrupt may also trigger >> things we do not want to trigger?) > > I think only vring interrupts, since the config interrupt hardening is > done via 22b7050a024d7 ("virtio: defer config changed notifications")
Ah thanks, I even reviewed that one back then :) _______________________________________________ Virtualization mailing list Virtualization@lists.linux-foundation.org https://lists.linuxfoundation.org/mailman/listinfo/virtualization