qemu-devel
[Top][All Lists]
Advanced

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

Re: [Qemu-devel] [PATCH] ppc/pnv: Add model for Power8 PHB3 PCIe Host br


From: Cédric Le Goater
Subject: Re: [Qemu-devel] [PATCH] ppc/pnv: Add model for Power8 PHB3 PCIe Host bridge
Date: Thu, 28 Jun 2018 12:04:52 +0200
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.5.2

On 06/28/2018 10:00 AM, Andrea Bolognani wrote:
> On Thu, 2018-06-28 at 13:59 +1000, David Gibson wrote:
>> On Wed, Jun 27, 2018 at 12:22:31PM +0200, Andrea Bolognani wrote:
>>> On Tue, 2018-06-26 at 19:02 +0200, Cédric Le Goater wrote:
>>>> I didn't follow that discussion but this is "another" kind of PHB.
>>>> This one models the baremetal controller as found on OpenPOWER and
>>>> IBM Power machines. pSeries has a virtual PHB.
>>>
>>> I understand that, and of course libvirt will need to learn about
>>> this new type of PHB and make sure both pSeries and PowerNV guests
>>> get the correct one assigned to them.
>>
>> Hmm.. does it?  I would have thought pnv could act more like x86, in
>> that libvirt doesn't attempt to create PHBs at all and just use the
>> ones that are built in.
> 
> AFAIK x86 guests have a single PHB and additional ones cannot be
> created in any way, which means we don't have to do any additional
> second-guessing when assigning IDs to additional PCI controllers.
> 
>> Though, come to that, I wouldn't think pnv support for libvirt would
>> be much of a priority anyway.  The machine type is still very much in
>> flux, and it's designed primarily for testing and development, not
>> "real world" usage.
> 
> Can you *guarantee* that someone won't ask for PowerNV support in
> libvirt at some point? Because if you can't (and I don't think you
> can ;) then this is still a valuable conversation to have.
> 
>>> What I meant is that pSeries guests get a single PHB by default,
>>> with additional ones being instantiable through -device; this is
>>> also consistent with how PCI controllers are added to other guest
>>> types including pc, q35 and aarch64/virt, so it would be really
>>> nice if PowerNV behaved the same way.
>>
>> Well.. sure.. but it doesn't.  pSeries is a virtual platform, so we
>> have a reasonable amount of flexibility to define it as we want.
>> PowerNV is an emulation of existing hardware which has a specific
>> behaviour which we need to match.
> 
> Sure, that's something to keep in mind.
> 
> But the thing is, you still need to have *some* flexibility in
> the number of PHBs, since there is variation among real Power8
> and Power9 chips; in the current incarnation, that flexibility
> is provided by the num_phbs parameter, which is an entirely new
> interface that's exclusive to PowerNV.
> 
> What I'm suggesting is that the same amount of flexibility is
> offered through a standard interface, namely -device, instead.

Yes. I don't know to be honest. Adding support for -device is not 
complex.

v2 proposes to initialize a fixed set of PHBs 2, 3, 4 depending on 
the CPU. I think this is the best modeling option to fit the HW.

Thanks,

C.




reply via email to

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