All of lore.kernel.org
 help / color / mirror / Atom feed
From: Alexey Kardashevskiy <aik@ozlabs.ru>
To: liu ping fan <qemulist@gmail.com>
Cc: qemu-devel@nongnu.org, Alexander Graf <agraf@suse.de>
Subject: Re: [Qemu-devel] [PATCH] spapr: pci: clean msi info when releasing it
Date: Fri, 09 May 2014 18:44:08 +1000	[thread overview]
Message-ID: <536C9558.2050600@ozlabs.ru> (raw)
In-Reply-To: <CAJnKYQ=NjD9OK2tSK-nR+S5HcbU_+QQmp2fVSUGYUfB6on1wAQ@mail.gmail.com>

On 05/09/2014 05:04 PM, liu ping fan wrote:
> On Wed, May 7, 2014 at 3:20 PM, Alexey Kardashevskiy <aik@ozlabs.ru> wrote:
>> On 05/07/2014 04:51 PM, Liu Ping Fan wrote:
>>> In current code, we use phb->msi_table[ndev].nvec to indicate whether
>>> this msi entries are used by a device or not. So when unplug a pci
>>> device, we should reset nvec to zero.
>>>
>>> Signed-off-by: Liu Ping Fan <pingfank@linux.vnet.ibm.com>
>>> ---
>>>  hw/ppc/spapr_pci.c | 1 +
>>>  1 file changed, 1 insertion(+)
>>>
>>> diff --git a/hw/ppc/spapr_pci.c b/hw/ppc/spapr_pci.c
>>> index cbef095..7b1dfe1 100644
>>> --- a/hw/ppc/spapr_pci.c
>>> +++ b/hw/ppc/spapr_pci.c
>>> @@ -316,6 +316,7 @@ static void rtas_ibm_change_msi(PowerPCCPU *cpu, sPAPREnvironment *spapr,
>>>              rtas_st(rets, 0, RTAS_OUT_HW_ERROR);
>>>              return;
>>>          }
>>> +        phb->msi_table[ndev].nvec = 0;
>>>          trace_spapr_pci_msi("Released MSIs", ndev, config_addr);
>>>          rtas_st(rets, 0, RTAS_OUT_SUCCESS);
>>>          rtas_st(rets, 1, 0);
>>
>>
>> ibm,change-msi is called with 0 to disable MSIs. If later the guest decides
>> to reenable MSI on the same device (rmmod + modprobe in the guest can do
>> that I suppose), new block will be allocated because of this patch which is
>> bad.
>>
>> And there is no PCI hotplug for SPAPR in upstream QEMU so this patch cannot
>> possibly fix it :)
>>
> I saw your patch [PATCH 0/6] move interrupts from spapr to xics. And
> it is great to consider the reclaim of irq.  So if I call something to
> free the irq after "phb->msi_table[ndev].nvec = 0", can it work ?


Yes, then it should work but I am actually planning more than just that so
we will see how it goes.


-- 
Alexey

      reply	other threads:[~2014-05-09  8:44 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-05-07  6:51 [Qemu-devel] [PATCH] spapr: pci: clean msi info when releasing it Liu Ping Fan
2014-05-07  7:20 ` Alexey Kardashevskiy
2014-05-09  7:04   ` liu ping fan
2014-05-09  8:44     ` Alexey Kardashevskiy [this message]

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=536C9558.2050600@ozlabs.ru \
    --to=aik@ozlabs.ru \
    --cc=agraf@suse.de \
    --cc=qemu-devel@nongnu.org \
    --cc=qemulist@gmail.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.