[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-ppc] [PATCH v3 1/4] cpus: Define NMI callback

From: Alexander Graf
Subject: Re: [Qemu-ppc] [PATCH v3 1/4] cpus: Define NMI callback
Date: Wed, 11 Jun 2014 10:01:15 +0200
User-agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.9; rv:24.0) Gecko/20100101 Thunderbird/24.5.0

On 11.06.14 06:59, Paolo Bonzini wrote:
Il 11/06/2014 02:28, Alexander Graf ha scritto:

Am 11.06.2014 um 02:23 schrieb Peter Maydell <address@hidden>:

On 10 June 2014 19:09, Alexander Graf <address@hidden> wrote:
I agree. I see two different paths forward:

 1) Use the patches as they are - they seem pretty sound and take the
existing x86/s390 only feature to spapr
 2) Model an "NMI" button. That button would get instantiated by the
machine model. That would allow the wiring to be defined by the board.
Monitor / QMP would only "press" that button (trigger an edge interrupt?
call a function? something).

I don't mind much either way - option 2 is the architecturally correct way
of doing this. Option 1 probably won't hurt us either.

In an ideal world I'd like (2), ie actually model front panel switches
per machine and with whatever the machine's behaviour actually
is. However pragmatically speaking that's an awful lot of work
(especially since it basically requires adding a lot of U/I which is
always controversial and hard to drive through). I think pragmatism
should probably win here.

Could we just stick a new nmi function callback into the machine class with the nmi command calling it?

That gets us on the right track to the right direction without putting too much work on Alexey's shoulders. Converting from there to an actual button object should become reasonably straight forward later.

Personally, I don't see anything wrong in these patches, apart from the typo that Cornelia pointed out.

If you wanted to inject an NMI on non-sPAPR machines, such as -M mac99 or -M g3beige you would have to trigger an interrupt with the MPIC, not the CPU itself.


reply via email to

[Prev in Thread] Current Thread [Next in Thread]