From mboxrd@z Thu Jan 1 00:00:00 1970 From: Sasha Levin Subject: Re: [PATCH 1/3] kvm tools: Make virtio-net kvm__irq_line thread safe Date: Fri, 29 Apr 2011 10:53:26 +0300 Message-ID: <1304063606.10069.7.camel@lappy> References: <1304058985-13833-1-git-send-email-asias.hejun@gmail.com> <4DBA6519.5070509@gmail.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Cc: Pekka Enberg , Cyrill Gorcunov , Ingo Molnar , Prasad Joshi , kvm@vger.kernel.org To: Asias He Return-path: Received: from mail-ww0-f44.google.com ([74.125.82.44]:59909 "EHLO mail-ww0-f44.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1754537Ab1D2Hxh (ORCPT ); Fri, 29 Apr 2011 03:53:37 -0400 Received: by wwa36 with SMTP id 36so4005952wwa.1 for ; Fri, 29 Apr 2011 00:53:36 -0700 (PDT) In-Reply-To: <4DBA6519.5070509@gmail.com> Sender: kvm-owner@vger.kernel.org List-ID: On Fri, 2011-04-29 at 15:13 +0800, Asias He wrote: > On 04/29/2011 02:52 PM, Pekka Enberg wrote: > > Please make that IRQ latency fix a separate patch. Don't we need to do > > it for TX path as well, btw? > > > > No. We only need it in RX path. Sasha's threadpool patch breaks this. > I'm just moving it back. > I've moved the kvm__irq_line() call out because what would happen sometimes is the following: - Call kvm__irq_line() to signal completion. - virt_queue__available() would return true. - readv() call blocks. I figured it happens because we catch virt_queue in while it's being updated by the guest and use an erroneous state of it. -- Sasha.