Kernel KVM virtualization development
 help / color / mirror / Atom feed
From: Benjamin Herrenschmidt <benh@kernel.crashing.org>
To: Alexey Kardashevskiy <aik@ozlabs.ru>
Cc: Gavin Shan <shangw@linux.vnet.ibm.com>,
	kvm@vger.kernel.org, alex.williamson@redhat.com
Subject: Re: [PATCH 3/3] drivers/vfio/pci: Fix MSIx message lost
Date: Mon, 03 Mar 2014 16:00:49 +1100	[thread overview]
Message-ID: <1393822849.10727.26.camel@pasglop> (raw)
In-Reply-To: <5314086F.10108@ozlabs.ru>

On Mon, 2014-03-03 at 15:43 +1100, Alexey Kardashevskiy wrote:
> While it works for our particular problem and seems correct, it has one
> flaw - hw/pci/msix.c will not generate this backtrace if masking bit does
> not change which can happen in general:
> ===
> static void msix_handle_mask_update(PCIDevice *dev, int vector, bool
> was_masked)
> {
>     bool is_masked = msix_is_masked(dev, vector);
> 
>     if (is_masked == was_masked) {
>         return;
>     }
> ===
> 
> Or if masking bit is the same, nothing bad is expected?...

Hrm ok, so it will work in this specific case but might not in the general
case of a driver triggering some kind of local reset on the device requiring
the MSI-X to be restored. The guest will write but qemu will swallow them ...

I think that needs to be fixed but it might be hard without introducing
a new ioctl from what I can see of the way the code is structured... Unless
qemu turns that into a disable/enable pair I suppose.

Cheers,
Ben.


  reply	other threads:[~2014-03-03  5:01 UTC|newest]

Thread overview: 16+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-03-03  3:24 [PATCH 1/3] drivers/vfio: Rework offsetofend() Gavin Shan
2014-03-03  3:24 ` [PATCH 2/3] drivers/vfio/pci: Fix wrong MSI interrupt count Gavin Shan
2014-03-03  4:17   ` Alex Williamson
2014-03-03  3:24 ` [PATCH 3/3] drivers/vfio/pci: Fix MSIx message lost Gavin Shan
2014-03-03  3:51   ` Benjamin Herrenschmidt
2014-03-03  4:43     ` Alexey Kardashevskiy
2014-03-03  5:00       ` Benjamin Herrenschmidt [this message]
2014-03-03  4:49     ` Alex Williamson
2014-03-03  5:05       ` Benjamin Herrenschmidt
     [not found]       ` <20140303061036.GA4447@shangw.(null)>
2014-03-03 19:36         ` Alex Williamson
     [not found]           ` <20140304023018.GA21672@shangw.(null)>
2014-03-04 20:45             ` Alex Williamson
  -- strict thread matches above, loose matches on Subject: below --
2014-03-10  5:46 [PATCH 0/3] VFIO Bug Fixes Gavin Shan
2014-03-10  5:46 ` [PATCH 3/3] drivers/vfio/pci: Fix MSIx message lost Gavin Shan
2014-03-17 22:16   ` Alex Williamson
     [not found]     ` <20140318013238.GA9843@shangw.(null)>
2014-03-18 22:44       ` Alex Williamson
2014-04-02  1:16   ` Alexey Kardashevskiy
2014-04-02  1:36     ` Alex Williamson

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=1393822849.10727.26.camel@pasglop \
    --to=benh@kernel.crashing.org \
    --cc=aik@ozlabs.ru \
    --cc=alex.williamson@redhat.com \
    --cc=kvm@vger.kernel.org \
    --cc=shangw@linux.vnet.ibm.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox