[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [PATCH v2 1/2] xen/events: access last_priority and last_vcpu_id together
On 20.10.2020 12:01, Julien Grall wrote: > > > On 20/10/2020 10:34, Jan Beulich wrote: >> On 20.10.2020 11:25, Julien Grall wrote: >>> Given that evtchn->last_vcpu_id and evtchn->last_priority can only be >>> modified in evtchn_fifo_set_pending(), this suggests that it is expected >>> for the function to multiple called concurrently on the same event channel. >>> >>>> I'm unconvinced it was really considered >>>> whether racing sending on the same channel is also safe this way. >>> >>> How would you explain the 3 try in lock_old_queue then? >> >> Queue changes (as said by the gprintk()) can't result from sending >> alone, but require re-binding to a different vCPU or altering the >> priority. > > I agree with that. However, this doesn't change the fact that update to > evtchn->last_priority and evtchn->last_vcpu can only happen when calling > evtchn_fifo_set_pending(). > > If evtchn_fifo_set_pending() cannot be called concurrently for the same > event, then there is *no* way for evtchn->last_{priority, vcpu} to be > updated concurrently. > >> I'm simply unconvinced that the code indeed fully reflects >> the original intentions. > > Do you mind (re-)sharing what was the original intentions? If only I knew, I would. Jan
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |