Messages in this thread | | | From | Alex Williamson <> | Subject | [PATCH v7 0/2] kvm: level irqfd and new eoifd | Date | Tue, 24 Jul 2012 14:43:05 -0600 |
| |
v7:
Just a minor change from v6 to fix locking. In v6 we called f_op->poll under eoifds.lock to install the eventfd waitqueue function. This creates a eoifds.lock --> ctx->wqh lock ordering. When our wakeup function gets called it's under ctx->wqh and acquires eoifds.lock. Badness. To fix this we can move the poll call to before the lock because we only do anything on POLLHUP which won't occur as long as we have a reference to the file. Thanks,
Alex
---
Alex Williamson (2): kvm: KVM_EOIFD, an eventfd for EOIs kvm: Extend irqfd to support level interrupts
Documentation/virtual/kvm/api.txt | 32 ++- arch/x86/kvm/x86.c | 3 include/linux/kvm.h | 18 + include/linux/kvm_host.h | 17 + virt/kvm/eventfd.c | 464 ++++++++++++++++++++++++++++++++++++- virt/kvm/kvm_main.c | 11 + 6 files changed, 537 insertions(+), 8 deletions(-)
| |