Re: [RFC] PPC: MPIC: necessary readback after EOI?
From: Scott Wood <hidden>
Date: 2015-01-05 18:11:09
Also in:
lkml
On Mon, 2015-01-05 at 18:46 +0100, Andreas Mohr wrote:
Hi,quoted
I was curious why the mpic_cpu_read(MPIC_INFO(CPU_WHOAMI)) was there in the first place and if it's still needed. If it's still required, I guess a better approach is to eliminate the call only if the kernel is running on the KVM guest side, where the MPIC is emulated and no longer requires a readback."Why not?" A mechanism being "emulated"/"virtual" or not may not necessarily be much of a distinction (if at all!). The readback might be required to properly fulfill all requirements of a full state change protocol specification, which might easily be the case for both RS(*) and virtual hardware. And especially for virtual hardware such a "readback" event might be an extremely important "end of transaction" marker which may often be needed for freeing of temporary resources etc.
I'm not convinced that it's required in real silicon (though there are many MPIC implementations which have their own quirks...), and I'm 100% sure that it's not required in the QEMU/KVM implementation of MPIC. It would have been nice if a code comment explained why it was doing the readback... I don't see any particular need to wait for EOI completion here (unlike when masking). -Scott