From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from [140.186.70.92] (port=44299 helo=eggs.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1OSD4a-0002Hf-FA for qemu-devel@nongnu.org; Fri, 25 Jun 2010 13:52:21 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.69) (envelope-from ) id 1OS6Hy-0002oT-Ov for qemu-devel@nongnu.org; Fri, 25 Jun 2010 06:37:39 -0400 Received: from mx1.redhat.com ([209.132.183.28]:39217) by eggs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1OS6Hy-0002nL-Cx for qemu-devel@nongnu.org; Fri, 25 Jun 2010 06:37:38 -0400 Date: Fri, 25 Jun 2010 13:32:40 +0300 From: "Michael S. Tsirkin" Message-ID: <20100625103240.GB16321@redhat.com> References: MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: Subject: [Qemu-devel] Re: UIO interrupts being lost List-Id: qemu-devel.nongnu.org List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Cam Macdonell , kvm@vger.kernel.org, qemu-devel@nongnu.org On Thu, Jun 24, 2010 at 05:43:15PM -0600, Cam Macdonell wrote: > Hi Michael, > > I'm trying to write a uio driver for my shared memory device for KVM > and I'm running into a situation where several interrupts in quick > succession are not all triggering the callback function in my kernel > UIO driver, say 2 out of 5. My driver does not set the Interrupt > Disable bit and if it helps, I'm using MSI-X interrupts. Even without > the interrupt disable bit set, is there still a window where > successive interrupts can be lost if they arrive too quickly? > > Thanks, > Cam Yes, I think so: if an interrupt is delivered when ISR is running, it gets queued, but a second one gets lost. A queueing mechanism is necessary to avoid losing information, e.g. virtio implements exactly that. Why don't you reuse virtio for signalling? If I understand what Anthony said correctly, he objected to the specific implementation, not to the idea of reusing virtio spec and code. -- MST