lkml.org 
[lkml]   [2012]   [Aug]   [21]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
SubjectRe: [PATCH v9 2/2] kvm: On Ack, De-assert & Notify KVM_IRQFD extension
From
Date
On Wed, 2012-08-22 at 03:14 +0300, Michael S. Tsirkin wrote:
> On Tue, Aug 21, 2012 at 03:11:41PM -0600, Alex Williamson wrote:
> > On Tue, 2012-08-21 at 23:37 +0300, Michael S. Tsirkin wrote:
> > > On Tue, Aug 21, 2012 at 01:29:14PM -0600, Alex Williamson wrote:
> > > > + }
> > > > +
> > > > irq_rt = rcu_dereference_protected(kvm->irq_routing,
> > > > lockdep_is_held(&kvm->irqfds.lock));
> > > > irqfd_update(kvm, irqfd, irq_rt);
> > > > @@ -267,6 +426,26 @@ kvm_irqfd_assign(struct kvm *kvm, struct kvm_irqfd *args)
> > > >
> > > > spin_unlock_irq(&kvm->irqfds.lock);
> > > >
> > > > + if (oadn) {
> > > > + synchronize_rcu();
> > >
> > > Seems unexpected on assign.
> > > What does this synchronize_rcu do?
> >
> > Because we force the notify below and we need the irqfd we just added to
> > the list to be visible on the list for that.
>
> I do not see it yet - maybe add a comment?

It's entirely possible I'm wrong too. This was an after thought and now
that I look at it again, the below irqfd_oadn_notify obviously starts
after the list_add, so there shouldn't be any need to wait. Thanks,

Alex



\
 
 \ /
  Last update: 2012-08-22 04:21    [W:0.517 / U:0.464 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site