All of lore.kernel.org
 help / color / mirror / Atom feed
From: Gregory Haskins <ghaskins@novell.com>
To: kvm@vger.kernel.org
Cc: linux-kernel@vger.kernel.org, mst@redhat.com, avi@redhat.com,
	davidel@xmailserver.org
Subject: [KVM PATCH v7 0/5] irqfd fixes and enhancements
Date: Mon, 29 Jun 2009 14:28:59 -0400	[thread overview]
Message-ID: <20090629181954.1886.20225.stgit@dev.haskins.net> (raw)

(Applies to kvm.git/master:4631e094)

The following is the latest attempt to fix the races in irqfd/eventfd, as
well as restore DEASSIGN support.  For more details, please read the patch
headers.  I've restored the slow-work variant of the logic as a separate
patch (5/5) so we can get a better idea of the true difference between
the workqueue approach and the slow-work style.  I am personally in favor
of the slow-work approach since it doesnt require a mostly-idle+dedicated
thread to hang around.  But that is just me.  5/5 can be ignored, folded
in to 3/5+4/5 as appropriate, or merged as is per the whim of Avi et. al.

As always, this series has been tested against the kvm-eventfd unit test
with both 5/5 applied and unapplied, and everything appears to be
functioning properly. You can download this test here:

ftp://ftp.novell.com/dev/ghaskins/kvm-eventfd.tar.bz2

I've included version 4 of Davide's eventfd patch (ported to kvm.git) so
that its a complete reviewable series.  Note, however, that there may be
later versions of his patch to consider for merging, so we should
coordinate with him.

-Greg


[Changelog:

	v7:
	   *) Addressed minor-nit feedback from Michael
	   *) Cleaned up patch headers
	   *) Re-added separate slow-work feature patch to end for comparison

	v6:
	   *) Removed slow-work in favor of using a dedicated single-thread
              workqueue.
	   *) Condensed cleanup path to always use deferred shutdown
	   *) Saved about 56 lines over v5, with the following diffstat:

 	   include/linux/kvm_host.h |    2 
 	   virt/kvm/eventfd.c       |  248 ++++++++++++++++++-----------------------------
 	   2 files changed, 97 insertions(+), 153 deletions(-)
	v5:
           Untracked..
]

---

Davide Libenzi (1):
      eventfd - revised interface and cleanups (4th rev)

Gregory Haskins (4):
      KVM: Make irqfd use slow-work for shutdown
      KVM: add irqfd DEASSIGN feature
      KVM: Fix races in irqfd using new eventfd_kref_get interface
      kvm: prepare irqfd for having interrupts disabled during eventfd->release


 drivers/lguest/lg.h          |    2 
 drivers/lguest/lguest_user.c |    4 -
 fs/aio.c                     |   24 +---
 fs/eventfd.c                 |  126 ++++++++++++++++++----
 include/linux/aio.h          |    4 -
 include/linux/eventfd.h      |   35 +++++-
 include/linux/kvm.h          |    2 
 include/linux/kvm_host.h     |    7 +
 virt/kvm/Kconfig             |    1 
 virt/kvm/eventfd.c           |  246 ++++++++++++++++++++++++++++++++----------
 10 files changed, 343 insertions(+), 108 deletions(-)

-- 
Signature

             reply	other threads:[~2009-06-29 18:29 UTC|newest]

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-06-29 18:28 Gregory Haskins [this message]
2009-06-29 18:29 ` [KVM PATCH v7 1/5] kvm: prepare irqfd for having interrupts disabled during eventfd->release Gregory Haskins
2009-06-29 18:29 ` [KVM PATCH v7 2/5] eventfd - revised interface and cleanups (4th rev) Gregory Haskins
2009-06-29 18:29 ` [KVM PATCH v7 3/5] KVM: Fix races in irqfd using new eventfd_kref_get interface Gregory Haskins
2009-06-29 18:29 ` [KVM PATCH v7 4/5] KVM: add irqfd DEASSIGN feature Gregory Haskins
2009-06-29 18:29 ` [KVM PATCH v7 5/5] KVM: Make irqfd use slow-work for shutdown Gregory Haskins
2009-07-01  8:53 ` [KVM PATCH v7 0/5] irqfd fixes and enhancements Avi Kivity
2009-07-01  9:03   ` Michael S. Tsirkin

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20090629181954.1886.20225.stgit@dev.haskins.net \
    --to=ghaskins@novell.com \
    --cc=avi@redhat.com \
    --cc=davidel@xmailserver.org \
    --cc=kvm@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mst@redhat.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.