Messages in this thread | | | Date | Wed, 18 Jul 2012 01:00:21 +0300 | From | "Michael S. Tsirkin" <> | Subject | Re: [PATCH v5 1/4] kvm: Extend irqfd to support level interrupts |
| |
On Tue, Jul 17, 2012 at 03:57:41PM -0600, Alex Williamson wrote: > On Wed, 2012-07-18 at 00:26 +0300, Michael S. Tsirkin wrote: > > On Mon, Jul 16, 2012 at 02:33:47PM -0600, Alex Williamson wrote: > > > @@ -96,6 +183,9 @@ irqfd_shutdown(struct work_struct *work) > > > * It is now safe to release the object's resources > > > */ > > > eventfd_ctx_put(irqfd->eventfd); > > > + > > > + _irq_source_put(irqfd->source); > > > + > > > kfree(irqfd); > > > } > > > > > > > Hang on, this is a bug I think. This is done asynchronously. So this > > means that I can assign MAX number of irqfds, then close one, and now > ^^^^^^^^^^^^^^^^^^^^ What is this? > Do you mean max irq source ids?
Yes, this is what I meant. Sorry about being unclear.
> > assign will fail because deassign did not get freed. > > > > Maybe we can solve this by flushing wq before assign? > > Looks a bit fragile but may be enough - need to document well. > > > >
| |