Re: [libvirt] ARM KVM GICv3 Support

2016-02-02 Thread Christoffer Dall
On Fri, Jan 22, 2016 at 02:44:32PM +, Daniel P. Berrange wrote: > On Wed, Jan 06, 2016 at 01:30:16PM +, Peter Maydell wrote: > > On 6 January 2016 at 12:49, Andrea Bolognani wrote: > > > That's correct, having a QMP command that lists the values gic-version > > > can

Re: [libvirt] ARM KVM GICv3 Support

2016-02-02 Thread Daniel P. Berrange
On Tue, Feb 02, 2016 at 12:49:33PM +0100, Christoffer Dall wrote: > On Fri, Jan 22, 2016 at 02:44:32PM +, Daniel P. Berrange wrote: > > On Wed, Jan 06, 2016 at 01:30:16PM +, Peter Maydell wrote: > > > On 6 January 2016 at 12:49, Andrea Bolognani wrote: > > > > That's

Re: [libvirt] ARM KVM GICv3 Support

2016-01-22 Thread Daniel P. Berrange
On Wed, Jan 06, 2016 at 01:30:16PM +, Peter Maydell wrote: > On 6 January 2016 at 12:49, Andrea Bolognani wrote: > > That's correct, having a QMP command that lists the values gic-version > > can have on the current host would be just great. > > > > If we had that, we

Re: [libvirt] ARM KVM GICv3 Support

2016-01-19 Thread Eric Blake
On 01/05/2016 05:37 AM, Andrea Bolognani wrote: >> If I misunderstood, how would you like QEMU to report this? > > I'm not 100% sure about the best interface here (hopefully other people > can weigh in) but I imagine there would be some sort of QMP command that > lists the GIC versions supported

Re: [libvirt] ARM KVM GICv3 Support

2016-01-19 Thread Andrew Jones
On Tue, Jan 12, 2016 at 04:48:27PM +0100, Andrea Bolognani wrote: > Would providing a QMP command that returns the list of GIC versions > available on the current host for the current machine type be > acceptable from QEMU's point of view? > Adding qemu-devel. Peter any opinion on this? If it

Re: [libvirt] ARM KVM GICv3 Support

2016-01-19 Thread Peter Maydell
On 19 January 2016 at 16:46, Andrew Jones wrote: > On Tue, Jan 12, 2016 at 04:48:27PM +0100, Andrea Bolognani wrote: >> Would providing a QMP command that returns the list of GIC versions >> available on the current host for the current machine type be >> acceptable from

Re: [libvirt] ARM KVM GICv3 Support

2016-01-12 Thread Andrea Bolognani
On Sat, 2016-01-09 at 16:01 +0100, Christoffer Dall wrote: > On Wed, Jan 06, 2016 at 01:30:16PM +, Peter Maydell wrote: > > On 6 January 2016 at 12:49, Andrea Bolognani wrote: > > > That's correct, having a QMP command that lists the values gic-version > > > can have on

Re: [libvirt] ARM KVM GICv3 Support

2016-01-09 Thread Christoffer Dall
On Wed, Jan 06, 2016 at 01:30:16PM +, Peter Maydell wrote: > On 6 January 2016 at 12:49, Andrea Bolognani wrote: > > That's correct, having a QMP command that lists the values gic-version > > can have on the current host would be just great. > > > > If we had that, we

Re: [libvirt] ARM KVM GICv3 Support

2016-01-06 Thread Christoffer Dall
On Tue, Jan 05, 2016 at 07:26:54PM +0100, Andrea Bolognani wrote: > On Tue, 2016-01-05 at 18:14 +, Peter Maydell wrote: > > > > Why can libvirt not just run the tool and parse its output?  That's what > > > > I understood was done for other things, but perhaps I misunderstood. > > >  > > >

Re: [libvirt] ARM KVM GICv3 Support

2016-01-06 Thread Andrea Bolognani
On Wed, 2016-01-06 at 12:34 +0100, Christoffer Dall wrote: >  > > libvirt already has to spawn QEMU and run QMP commands to probe for > > dozens of other capabilities, so we have very robust code to do that. > >  > > Most importantly, as I wrote in a previous mail, if the check is done > > by QEMU

Re: [libvirt] ARM KVM GICv3 Support

2016-01-06 Thread Peter Maydell
On 6 January 2016 at 12:49, Andrea Bolognani wrote: > That's correct, having a QMP command that lists the values gic-version > can have on the current host would be just great. > > If we had that, we could validate the GIC version chosen for a guest, > and expose it in the

Re: [libvirt] ARM KVM GICv3 Support

2016-01-05 Thread Andrea Bolognani
On Tue, 2016-01-05 at 18:14 +, Peter Maydell wrote: > > > Why can libvirt not just run the tool and parse its output?  That's what > > > I understood was done for other things, but perhaps I misunderstood. > >  > > It's the other way around: the tool uses libvirt to implement its > > checks.

Re: [libvirt] ARM KVM GICv3 Support

2016-01-05 Thread Peter Maydell
On 5 January 2016 at 17:58, Andrea Bolognani wrote: > On Tue, 2016-01-05 at 14:47 +0100, Christoffer Dall wrote: >> Why can libvirt not just run the tool and parse its output? That's what >> I understood was done for other things, but perhaps I misunderstood. > > It's the

Re: [libvirt] ARM KVM GICv3 Support

2016-01-05 Thread Andrea Bolognani
On Tue, 2016-01-05 at 14:47 +0100, Christoffer Dall wrote: >  > > The tool is just a convenience for the administrator (and for higher > > level tools?), and it can't be where the validation happens for two > > reasons: > >  > >   - it doesn't take any argument, so it can't possibly know whether >

Re: [libvirt] ARM KVM GICv3 Support

2016-01-05 Thread Christoffer Dall
On Tue, Jan 05, 2016 at 01:37:47PM +0100, Andrea Bolognani wrote: > On Tue, 2016-01-05 at 13:08 +0100, Christoffer Dall wrote: > > On Tue, Jan 05, 2016 at 12:37:02PM +0100, Andrea Bolognani wrote: > > > On Mon, 2015-12-21 at 12:03 +0100, Christoffer Dall wrote: > > > >   > > > > So let me

Re: [libvirt] ARM KVM GICv3 Support

2016-01-05 Thread Andrea Bolognani
On Mon, 2015-12-21 at 12:03 +0100, Christoffer Dall wrote: >  > So let me summarize the things we need to do: >  >  - patch libvirt to allow >  - patch libvirt to properly probe for GICv2 and GICv3 support >  - patch libvirt to generally handle virt-host-validate on ARM >  > And that should be

Re: [libvirt] ARM KVM GICv3 Support

2016-01-05 Thread Christoffer Dall
On Tue, Jan 05, 2016 at 12:37:02PM +0100, Andrea Bolognani wrote: > On Mon, 2015-12-21 at 12:03 +0100, Christoffer Dall wrote: > >  > > So let me summarize the things we need to do: > >  > >  - patch libvirt to allow > >  - patch libvirt to properly probe for GICv2 and GICv3 support > >  - patch

Re: [libvirt] ARM KVM GICv3 Support

2016-01-05 Thread Andrea Bolognani
On Tue, 2016-01-05 at 13:08 +0100, Christoffer Dall wrote: > On Tue, Jan 05, 2016 at 12:37:02PM +0100, Andrea Bolognani wrote: > > On Mon, 2015-12-21 at 12:03 +0100, Christoffer Dall wrote: > > >   > > > So let me summarize the things we need to do: > > >   > > >   - patch libvirt to allow > > >  

Re: [libvirt] ARM KVM GICv3 Support

2015-12-21 Thread Christoffer Dall
On Mon, Dec 21, 2015 at 10:15:13AM +, Daniel P. Berrange wrote: > On Sun, Dec 20, 2015 at 04:49:20PM +0100, Kashyap Chamarthy wrote: > > On Tue, Dec 15, 2015 at 04:42:13PM +, Peter Maydell wrote: > > > On 15 December 2015 at 16:35, Andrew Jones wrote: > > > > This is

Re: [libvirt] ARM KVM GICv3 Support

2015-12-21 Thread Daniel P. Berrange
On Sun, Dec 20, 2015 at 04:49:20PM +0100, Kashyap Chamarthy wrote: > On Tue, Dec 15, 2015 at 04:42:13PM +, Peter Maydell wrote: > > On 15 December 2015 at 16:35, Andrew Jones wrote: > > > This is probably good for guests that happy with both. Guests that > > > need/want a

Re: [libvirt] ARM KVM GICv3 Support

2015-12-20 Thread Kashyap Chamarthy
On Tue, Dec 15, 2015 at 04:42:13PM +, Peter Maydell wrote: > On 15 December 2015 at 16:35, Andrew Jones wrote: > > This is probably good for guests that happy with both. Guests that > > need/want a specific choice will put their integer there, and then > > we need a way to

Re: [libvirt] ARM KVM GICv3 Support

2015-12-16 Thread Martin Kletzander
On Tue, Dec 15, 2015 at 05:01:39PM +, Peter Maydell wrote: On 15 December 2015 at 16:57, Andre Przywara wrote: Even that wouldn't help us, I guess, as you cannot easily check for GICv3/GICv2 compatibility with a _script_. Having access to ioctl's make this pretty

Re: [libvirt] ARM KVM GICv3 Support

2015-12-15 Thread Peter Maydell
On 15 December 2015 at 16:57, Andre Przywara wrote: > Even that wouldn't help us, I guess, as you cannot easily check for > GICv3/GICv2 compatibility with a _script_. Having access to ioctl's make > this pretty easy though: Just try to call KVM_CREATE_DEVICE with the >

Re: [libvirt] ARM KVM GICv3 Support

2015-12-15 Thread Andrew Jones
On Tue, Dec 15, 2015 at 04:03:13PM +, Peter Maydell wrote: > On 15 December 2015 at 14:12, Martin Kletzander wrote: > > On Tue, Dec 15, 2015 at 09:41:02AM +, Peter Maydell wrote: > >> > >> On 15 December 2015 at 09:36, Martin Kletzander > >>

Re: [libvirt] ARM KVM GICv3 Support

2015-12-15 Thread Andrew Jones
On Tue, Dec 15, 2015 at 05:53:43PM +0100, Andrea Bolognani wrote: > On Tue, 2015-12-15 at 10:35 -0600, Andrew Jones wrote: > > On Tue, Dec 15, 2015 at 04:03:13PM +, Peter Maydell wrote: > > > On 15 December 2015 at 14:12, Martin Kletzander > > > wrote: > > > > On Tue,

Re: [libvirt] ARM KVM GICv3 Support

2015-12-15 Thread Andrea Bolognani
On Tue, 2015-12-15 at 10:35 -0600, Andrew Jones wrote: > On Tue, Dec 15, 2015 at 04:03:13PM +, Peter Maydell wrote: > > On 15 December 2015 at 14:12, Martin Kletzander wrote: > > > On Tue, Dec 15, 2015 at 09:41:02AM +, Peter Maydell wrote: > > > > > > > > On 15

Re: [libvirt] ARM KVM GICv3 Support

2015-12-15 Thread Andrew Jones
On Tue, Dec 15, 2015 at 04:42:13PM +, Peter Maydell wrote: > On 15 December 2015 at 16:35, Andrew Jones wrote: > > This is probably good for guests that happy with both. Guests that > > need/want a specific choice will put their integer there, and then > > we need a way to

Re: [libvirt] ARM KVM GICv3 Support

2015-12-15 Thread Peter Maydell
On 15 December 2015 at 14:12, Martin Kletzander wrote: > On Tue, Dec 15, 2015 at 09:41:02AM +, Peter Maydell wrote: >> >> On 15 December 2015 at 09:36, Martin Kletzander >> wrote: >>> >>> We do pass some options, for example, you can restrict the GIC

Re: [libvirt] ARM KVM GICv3 Support

2015-12-15 Thread Peter Maydell
On 15 December 2015 at 16:53, Andrea Bolognani wrote: > The behaviour of the value '2' has been defined as "don't specify any > GIC version" though, and I'm afraid we'll be unable to change that > because it would affect existing guests. Martin can probably weigh in. QEMU

Re: [libvirt] ARM KVM GICv3 Support

2015-12-15 Thread John Ferlan
On 12/15/2015 11:53 AM, Andrea Bolognani wrote: > On Tue, 2015-12-15 at 10:35 -0600, Andrew Jones wrote: >> On Tue, Dec 15, 2015 at 04:03:13PM +, Peter Maydell wrote: >>> On 15 December 2015 at 14:12, Martin Kletzander wrote: On Tue, Dec 15, 2015 at 09:41:02AM

Re: [libvirt] ARM KVM GICv3 Support

2015-12-15 Thread Peter Maydell
On 15 December 2015 at 16:35, Andrew Jones wrote: > This is probably good for guests that happy with both. Guests that > need/want a specific choice will put their integer there, and then > we need a way to do a capabilities check before launching that guest > on an arbitrary

Re: [libvirt] ARM KVM GICv3 Support

2015-12-15 Thread Andre Przywara
Hi, On 15/12/15 16:42, Peter Maydell wrote: > On 15 December 2015 at 16:35, Andrew Jones wrote: >> This is probably good for guests that happy with both. Guests that >> need/want a specific choice will put their integer there, and then >> we need a way to do a capabilities

Re: [libvirt] ARM KVM GICv3 Support

2015-12-15 Thread Peter Maydell
On 15 December 2015 at 09:36, Martin Kletzander wrote: > We do pass some options, for example, you can restrict the GIC to v2: > https://libvirt.org/formatdomain.html#elementsFeatures > > That could be modified to work for your purpose IIUC, right? What does that option do

Re: [libvirt] ARM KVM GICv3 Support

2015-12-15 Thread Martin Kletzander
On Mon, Dec 14, 2015 at 10:47:26AM -0600, Andrew Jones wrote: On Mon, Dec 14, 2015 at 12:31:59PM +0100, Christoffer Dall wrote: Hi all, I'm trying to figure out what the correct solution for libvirt support for ARM KVM guests with GICv3 is. The challenge is that QEMU's virt machine model

Re: [libvirt] ARM KVM GICv3 Support

2015-12-15 Thread Pavel Fedin
Hello! Nobody ever CCed me, so i saw this topic only occasionally... Sorry for the late reply. > The challenge is that QEMU's virt machine model defaults to GICv2 unless > you specify an additional "-machine gic-version=host" parameter to QEMU, > in which case your VM gets the same GIC

Re: [libvirt] ARM KVM GICv3 Support

2015-12-15 Thread Christoffer Dall
On Tue, Dec 15, 2015 at 10:36:32AM +0100, Martin Kletzander wrote: > On Mon, Dec 14, 2015 at 10:47:26AM -0600, Andrew Jones wrote: > >On Mon, Dec 14, 2015 at 12:31:59PM +0100, Christoffer Dall wrote: > >>Hi all, > >> > >>I'm trying to figure out what the correct solution for libvirt support >

Re: [libvirt] ARM KVM GICv3 Support

2015-12-15 Thread Christoffer Dall
On Mon, Dec 14, 2015 at 10:47:26AM -0600, Andrew Jones wrote: > On Mon, Dec 14, 2015 at 12:31:59PM +0100, Christoffer Dall wrote: > > Hi all, > > > > I'm trying to figure out what the correct solution for libvirt support > > for ARM KVM guests with GICv3 is. > > > > The challenge is that QEMU's

Re: [libvirt] ARM KVM GICv3 Support

2015-12-15 Thread Andrea Bolognani
On Tue, 2015-12-15 at 11:11 +0100, Christoffer Dall wrote: > On Tue, Dec 15, 2015 at 10:36:32AM +0100, Martin Kletzander wrote: > > On Mon, Dec 14, 2015 at 10:47:26AM -0600, Andrew Jones wrote: > > > On Mon, Dec 14, 2015 at 12:31:59PM +0100, Christoffer Dall wrote: > > > > Hi all, > > > > > > > >

Re: [libvirt] ARM KVM GICv3 Support

2015-12-15 Thread Martin Kletzander
On Tue, Dec 15, 2015 at 09:41:02AM +, Peter Maydell wrote: On 15 December 2015 at 09:36, Martin Kletzander wrote: We do pass some options, for example, you can restrict the GIC to v2: https://libvirt.org/formatdomain.html#elementsFeatures That could be modified to

[libvirt] ARM KVM GICv3 Support

2015-12-14 Thread Christoffer Dall
Hi all, I'm trying to figure out what the correct solution for libvirt support for ARM KVM guests with GICv3 is. The challenge is that QEMU's virt machine model defaults to GICv2 unless you specify an additional "-machine gic-version=host" parameter to QEMU, in which case your VM gets the same

Re: [libvirt] ARM KVM GICv3 Support

2015-12-14 Thread Andrew Jones
On Mon, Dec 14, 2015 at 12:31:59PM +0100, Christoffer Dall wrote: > Hi all, > > I'm trying to figure out what the correct solution for libvirt support > for ARM KVM guests with GICv3 is. > > The challenge is that QEMU's virt machine model defaults to GICv2 unless > you specify an additional