Thread (31 messages) 31 messages, 6 authors, 2024-08-13

Re: [PATCH] clockevents/drivers/i8253: Do not zero timer counter in shutdown

From: David Woodhouse <dwmw2@infradead.org>
Date: 2024-08-13 06:40:14
Also in: lkml

On 13 August 2024 00:59:40 BST, Sean Christopherson [off-list ref] wrote:
On Fri, Aug 02, 2024, David Woodhouse wrote:
quoted
On Fri, 2024-08-02 at 07:55 -0700, Sean Christopherson wrote:
quoted
On Fri, Aug 02, 2024, David Woodhouse wrote:
quoted
On Thu, 2024-08-01 at 20:54 +0200, Thomas Gleixner wrote:
quoted
On Thu, Aug 01 2024 at 16:14, Michael Kelley wrote:
quoted
I don't have a convenient way to test my sequence on KVM.
But still fails in KVM
By KVM you mean the in-kernel one that we want to kill because everyone
should be using userspace IRQ chips these days?
What exactly do you want to kill?  In-kernel local APIC obviously needs to stay
for APICv/AVIC.
The legacy PIT, PIC and I/O APIC.
quoted
And IMO, encouraging userspace I/O APIC emulation is a net negative for KVM and
the community as a whole, as the number of VMMs in use these days results in a
decent amount of duplicated work in userspace VMMs, especially when accounting
for hardware and software quirks.
I don't particularly care, but I thought the general trend was towards
split irqchip mode, with the local APIC in-kernel but i8259 PIC and I/O
APIC (and the i8254 PIT, which was the topic of this discussion) being
done in userspace.
Yeah, that's where most everyone is headed, if not already there.  Letting the
I/O APIC live in userspace is probably the right direction long term, I just don't
love that every VMM seems to have it's own slightly different version.  But I think
the answer to that is to build a library for (legacy?) device emulation so that
VMMs can link to an implementation instead of copy+pasting from somwhere else and
inevitably ending up with code that's frozen in time.
Some would say the right answer is to present a micro-vm machine model that doesn't have any of that crap at all.

Sadly we're going in the wrong direction. For >255 vCPUs on AMD machines it looks like we even have to emulate a full virtual IOMMU with DMA translation support. Well done, AMD!

(Linux is OK with the 15-bit Extended Destination ID, but not Windows)
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help