qemu-devel
[Top][All Lists]
Advanced

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

Re: [Qemu-devel] [PATCH v2 0/3] Make KVM/MSI code device-ID-aware


From: Pavel Fedin
Subject: Re: [Qemu-devel] [PATCH v2 0/3] Make KVM/MSI code device-ID-aware
Date: Wed, 14 Oct 2015 11:46:02 +0300

 Hello!

> I'm confused by pci changes.  It's all arm specific stuff leaking
> out to pci core.

 But... How else would you implement it? I tried to do this as abstract as 
possible. Just pass device pointer to functions which
will use it. Or, would you like to override all these functions for ARM 
architecture? That would be a huge code duplication. And,
still, they would need PCI device specifier, which they don't have, and what 
patch 0003 takes care about.

> Maybe it was a mistake to put stream id in struct MemTxAttrs: there's
> still nothing using it.

 It will be used by ITS emulation too. Take a look at RFC, ITS code injects it 
into the kernel together with MSI data. Also, i know
that it has something to do with SMMU too, so, if we ever implement ARM SMMU, 
we'll likely have to deal with them too.
 Presence of device ID pretty well emulates what the hardware does - it just 
sends this ID along with PCI transaction.
 We will use it as soon as we either:
a) Get kernel API approved
b) Get software GICv3 emulation from Shlomo, then i'll be able to rebase my old 
software-emulated ITS on top of that.

> How about we stick PCIDevice * (or even DeviceState *) there?

 "there" = where? In MemTxAttrs? Would it be good to have 64-bit pointer 
instead of 16-bit ID there? It is passed by value, and
current version fits into register even on 32-bit host.

Kind regards,
Pavel Fedin
Expert Engineer
Samsung Electronics Research center Russia





reply via email to

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