From patchwork Mon May 14 21:07:29 2012 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Jan Kiszka X-Patchwork-Id: 159199 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Received: from lists.gnu.org (lists.gnu.org [208.118.235.17]) (using TLSv1 with cipher AES256-SHA (256/256 bits)) (Client did not present a certificate) by ozlabs.org (Postfix) with ESMTPS id 72502B7056 for ; Tue, 15 May 2012 07:31:01 +1000 (EST) Received: from localhost ([::1]:54564 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1SU2VY-0000JL-VH for incoming@patchwork.ozlabs.org; Mon, 14 May 2012 17:08:44 -0400 Received: from eggs.gnu.org ([208.118.235.92]:40221) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1SU2Uo-0006fj-D3 for qemu-devel@nongnu.org; Mon, 14 May 2012 17:07:59 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1SU2Um-0006ut-Ns for qemu-devel@nongnu.org; Mon, 14 May 2012 17:07:57 -0400 Received: from david.siemens.de ([192.35.17.14]:34693) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1SU2Um-0006ua-EI for qemu-devel@nongnu.org; Mon, 14 May 2012 17:07:56 -0400 Received: from mail1.siemens.de (localhost [127.0.0.1]) by david.siemens.de (8.13.6/8.13.6) with ESMTP id q4EL7sZ1000713; Mon, 14 May 2012 23:07:54 +0200 Received: from mchn199C.mchp.siemens.de (atv01a8c.ww300.siemens.net [139.22.118.50]) by mail1.siemens.de (8.13.6/8.13.6) with SMTP id q4EL7kt0003259; Mon, 14 May 2012 23:07:52 +0200 From: Jan Kiszka To: Avi Kivity , Marcelo Tosatti Date: Mon, 14 May 2012 18:07:29 -0300 Message-Id: X-Mailer: git-send-email 1.7.3.4 In-Reply-To: References: In-Reply-To: References: X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6, seldom 2.4 (older, 4) X-Received-From: 192.35.17.14 Cc: qemu-devel , kvm@vger.kernel.org, "Michael S. Tsirkin" Subject: [Qemu-devel] [RFC][PATCH 02/11] msix: Invoke msix_handle_mask_update on msix_mask_all X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org Sender: qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org In preparation of firing vector notifiers on mask changes, call msix_handle_mask_update also from msix_mask_all. So far, this will have no real effect. Signed-off-by: Jan Kiszka --- hw/msix.c | 4 ++++ 1 files changed, 4 insertions(+), 0 deletions(-) diff --git a/hw/msix.c b/hw/msix.c index 3197465..e1a7d92 100644 --- a/hw/msix.c +++ b/hw/msix.c @@ -231,10 +231,14 @@ static void msix_mmio_setup(PCIDevice *d, MemoryRegion *bar) static void msix_mask_all(struct PCIDevice *dev, unsigned nentries) { int vector; + for (vector = 0; vector < nentries; ++vector) { unsigned offset = vector * PCI_MSIX_ENTRY_SIZE + PCI_MSIX_ENTRY_VECTOR_CTRL; + bool was_masked = msix_is_masked(dev, vector); + dev->msix_table_page[offset] |= PCI_MSIX_ENTRY_CTRL_MASKBIT; + msix_handle_mask_update(dev, vector, was_masked); } }