* [Question] Can KVM run on Freescale IMX6 SABRE board? @ 2016-02-25 15:17 xu mike 2016-02-25 15:30 ` Peter Maydell 0 siblings, 1 reply; 7+ messages in thread From: xu mike @ 2016-02-25 15:17 UTC (permalink / raw) To: kvmarm [-- Attachment #1.1: Type: text/plain, Size: 847 bytes --] Hi, I'm a student from the University of Pennsylvania. I want to try KVM on ARM boards. I have a Freescale IMX6 board [1] which has ARM Cortex A9 processors. I'm wondering if KVM can run on the Freescale IMX6 board? or Can KVM run on any ARM board with ARM Cortex A9 processors? I noticed at [2] that " KVM/ARM is designed specifically to work on ARM processors with the virtualization extensions enabled to run unmodified guest operating systems." I'm wondering if this statement is still true? [1] http://www.nxp.com/products/microcontrollers-and-processors/arm-processors/i.mx-applications-processors-based-on-arm-cores/i.mx-6-processors/i.mx6qp/sabre-board-for-smart-devices-reference-design-based-on-the-i.mx-6-series:RDIMX6SABREBRD [2] https://lwn.net/Articles/557132/ Thank you very much for your time and help! Best regards, Mike [-- Attachment #1.2: Type: text/html, Size: 1312 bytes --] [-- Attachment #2: Type: text/plain, Size: 151 bytes --] _______________________________________________ kvmarm mailing list kvmarm@lists.cs.columbia.edu https://lists.cs.columbia.edu/mailman/listinfo/kvmarm ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [Question] Can KVM run on Freescale IMX6 SABRE board? 2016-02-25 15:17 [Question] Can KVM run on Freescale IMX6 SABRE board? xu mike @ 2016-02-25 15:30 ` Peter Maydell 2016-02-25 17:45 ` xu mike 0 siblings, 1 reply; 7+ messages in thread From: Peter Maydell @ 2016-02-25 15:30 UTC (permalink / raw) To: xu mike; +Cc: kvmarm@lists.cs.columbia.edu On 25 February 2016 at 15:17, xu mike <upennmike@gmail.com> wrote: > I'm a student from the University of Pennsylvania. I want to try KVM on ARM > boards. > > I have a Freescale IMX6 board [1] which has ARM Cortex A9 processors. > I'm wondering if KVM can run on the Freescale IMX6 board? or > Can KVM run on any ARM board with ARM Cortex A9 processors? > > I noticed at [2] that " KVM/ARM is designed specifically to work on ARM > processors with the virtualization extensions enabled to run unmodified > guest operating systems." > I'm wondering if this statement is still true? Yes, it is. You need a CPU with the virtualization extensions, and the A9 does not have them. You want (for instance) an A15 or an A7. There are cheap A7-based development boards out there, for instance the CubieTruck (which is not very fast but can run a mainline Linux kernel and KVM so is a reasonable getting-started development platform). thanks -- PMM ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [Question] Can KVM run on Freescale IMX6 SABRE board? 2016-02-25 15:30 ` Peter Maydell @ 2016-02-25 17:45 ` xu mike 2016-02-26 7:54 ` Christoffer Dall 0 siblings, 1 reply; 7+ messages in thread From: xu mike @ 2016-02-25 17:45 UTC (permalink / raw) To: Peter Maydell; +Cc: kvmarm@lists.cs.columbia.edu Hi Peter, 2016-02-25 10:30 GMT-05:00 Peter Maydell <peter.maydell@linaro.org>: > > On 25 February 2016 at 15:17, xu mike <upennmike@gmail.com> wrote: > > I'm a student from the University of Pennsylvania. I want to try KVM on ARM > > boards. > > > > I have a Freescale IMX6 board [1] which has ARM Cortex A9 processors. > > I'm wondering if KVM can run on the Freescale IMX6 board? or > > Can KVM run on any ARM board with ARM Cortex A9 processors? > > > > I noticed at [2] that " KVM/ARM is designed specifically to work on ARM > > processors with the virtualization extensions enabled to run unmodified > > guest operating systems." > > I'm wondering if this statement is still true? > > Yes, it is. You need a CPU with the virtualization extensions, > and the A9 does not have them. You want (for instance) an A15 > or an A7. There are cheap A7-based development boards out there, > for instance the CubieTruck (which is not very fast but can run > a mainline Linux kernel and KVM so is a reasonable getting-started > development platform). Thank you very much for your quick reply! I'm wondering if KVM community has any plan to make KVM compatible with Cortex A9 processors? If someone, with linux scheduler development experiment but without porting experiment, wants to port KVM to Cortex A9, how hard could it be to port KVM onto Cortex A9 processor? Best regards, Meng ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [Question] Can KVM run on Freescale IMX6 SABRE board? 2016-02-25 17:45 ` xu mike @ 2016-02-26 7:54 ` Christoffer Dall 2016-02-26 15:53 ` xu mike 0 siblings, 1 reply; 7+ messages in thread From: Christoffer Dall @ 2016-02-26 7:54 UTC (permalink / raw) To: xu mike; +Cc: kvmarm@lists.cs.columbia.edu On Thu, Feb 25, 2016 at 12:45:45PM -0500, xu mike wrote: > Hi Peter, > > 2016-02-25 10:30 GMT-05:00 Peter Maydell <peter.maydell@linaro.org>: > > > > On 25 February 2016 at 15:17, xu mike <upennmike@gmail.com> wrote: > > > I'm a student from the University of Pennsylvania. I want to try KVM on ARM > > > boards. > > > > > > I have a Freescale IMX6 board [1] which has ARM Cortex A9 processors. > > > I'm wondering if KVM can run on the Freescale IMX6 board? or > > > Can KVM run on any ARM board with ARM Cortex A9 processors? > > > > > > I noticed at [2] that " KVM/ARM is designed specifically to work on ARM > > > processors with the virtualization extensions enabled to run unmodified > > > guest operating systems." > > > I'm wondering if this statement is still true? > > > > Yes, it is. You need a CPU with the virtualization extensions, > > and the A9 does not have them. You want (for instance) an A15 > > or an A7. There are cheap A7-based development boards out there, > > for instance the CubieTruck (which is not very fast but can run > > a mainline Linux kernel and KVM so is a reasonable getting-started > > development platform). > > > Thank you very much for your quick reply! > > I'm wondering if KVM community has any plan to make KVM compatible > with Cortex A9 processors? > Not that I'm aware, no. > If someone, with linux scheduler development experiment but without > porting experiment, wants to port KVM to Cortex A9, how hard could it > be to port KVM onto Cortex A9 processor? As Peter said, ARM is not a virtualizable architecture, so you need hardware support for virtualization to run hypervisors on an ARM system. Cortex-A9 does not have this support. You could implement something using either binary translation or paravirtualization, but neither is something we're immediately interested in accepting in mainline Linux. What is your use-case for running on A9 specifically, as opposed to a CPU with virt support? Thanks, -Christoffer ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [Question] Can KVM run on Freescale IMX6 SABRE board? 2016-02-26 7:54 ` Christoffer Dall @ 2016-02-26 15:53 ` xu mike 2016-02-27 12:06 ` Christoffer Dall 0 siblings, 1 reply; 7+ messages in thread From: xu mike @ 2016-02-26 15:53 UTC (permalink / raw) To: Christoffer Dall; +Cc: kvmarm@lists.cs.columbia.edu 2016-02-26 2:54 GMT-05:00 Christoffer Dall <christoffer.dall@linaro.org>: > On Thu, Feb 25, 2016 at 12:45:45PM -0500, xu mike wrote: >> Hi Peter, >> >> 2016-02-25 10:30 GMT-05:00 Peter Maydell <peter.maydell@linaro.org>: >> > >> > On 25 February 2016 at 15:17, xu mike <upennmike@gmail.com> wrote: >> > > I'm a student from the University of Pennsylvania. I want to try KVM on ARM >> > > boards. >> > > >> > > I have a Freescale IMX6 board [1] which has ARM Cortex A9 processors. >> > > I'm wondering if KVM can run on the Freescale IMX6 board? or >> > > Can KVM run on any ARM board with ARM Cortex A9 processors? >> > > >> > > I noticed at [2] that " KVM/ARM is designed specifically to work on ARM >> > > processors with the virtualization extensions enabled to run unmodified >> > > guest operating systems." >> > > I'm wondering if this statement is still true? >> > >> > Yes, it is. You need a CPU with the virtualization extensions, >> > and the A9 does not have them. You want (for instance) an A15 >> > or an A7. There are cheap A7-based development boards out there, >> > for instance the CubieTruck (which is not very fast but can run >> > a mainline Linux kernel and KVM so is a reasonable getting-started >> > development platform). >> >> >> Thank you very much for your quick reply! >> >> I'm wondering if KVM community has any plan to make KVM compatible >> with Cortex A9 processors? >> > > Not that I'm aware, no. > >> If someone, with linux scheduler development experiment but without >> porting experiment, wants to port KVM to Cortex A9, how hard could it >> be to port KVM onto Cortex A9 processor? > > As Peter said, ARM is not a virtualizable architecture, so you need > hardware support for virtualization to run hypervisors on an ARM system. > > Cortex-A9 does not have this support. > > You could implement something using either binary translation or > paravirtualization, but neither is something we're immediately > interested in accepting in mainline Linux. Right. I couldn't estimate how hard it will be to achieve the paravirtualization/binary translation in KVM.. Probably it may involve a lot of (assembly) code, since it requires to de-privilege those privileged instructions. :-( > > What is your use-case for running on A9 specifically, as opposed to a > CPU with virt support? The reason why I have to use A9 is because A9 has the special cache controller, called PL310 cache controller, which is not supported in A7 or A15. I want to use the special cache controller in virtualization environment. That's why I'm so addicted to A9. :-( If there is some latest ARM processor that has the PL310 cache controller and virtulaizaiton extension support, that will be awesome! However, I'm unaware of the ideal ARM processors. :-( Do you happen to know? Thank you so much for your time and help in this question! Best, Mike ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [Question] Can KVM run on Freescale IMX6 SABRE board? 2016-02-26 15:53 ` xu mike @ 2016-02-27 12:06 ` Christoffer Dall 2016-02-27 17:19 ` xu mike 0 siblings, 1 reply; 7+ messages in thread From: Christoffer Dall @ 2016-02-27 12:06 UTC (permalink / raw) To: xu mike; +Cc: kvmarm@lists.cs.columbia.edu On Fri, Feb 26, 2016 at 10:53:44AM -0500, xu mike wrote: > 2016-02-26 2:54 GMT-05:00 Christoffer Dall <christoffer.dall@linaro.org>: > > On Thu, Feb 25, 2016 at 12:45:45PM -0500, xu mike wrote: > >> Hi Peter, > >> > >> 2016-02-25 10:30 GMT-05:00 Peter Maydell <peter.maydell@linaro.org>: > >> > > >> > On 25 February 2016 at 15:17, xu mike <upennmike@gmail.com> wrote: > >> > > I'm a student from the University of Pennsylvania. I want to try KVM on ARM > >> > > boards. > >> > > > >> > > I have a Freescale IMX6 board [1] which has ARM Cortex A9 processors. > >> > > I'm wondering if KVM can run on the Freescale IMX6 board? or > >> > > Can KVM run on any ARM board with ARM Cortex A9 processors? > >> > > > >> > > I noticed at [2] that " KVM/ARM is designed specifically to work on ARM > >> > > processors with the virtualization extensions enabled to run unmodified > >> > > guest operating systems." > >> > > I'm wondering if this statement is still true? > >> > > >> > Yes, it is. You need a CPU with the virtualization extensions, > >> > and the A9 does not have them. You want (for instance) an A15 > >> > or an A7. There are cheap A7-based development boards out there, > >> > for instance the CubieTruck (which is not very fast but can run > >> > a mainline Linux kernel and KVM so is a reasonable getting-started > >> > development platform). > >> > >> > >> Thank you very much for your quick reply! > >> > >> I'm wondering if KVM community has any plan to make KVM compatible > >> with Cortex A9 processors? > >> > > > > Not that I'm aware, no. > > > >> If someone, with linux scheduler development experiment but without > >> porting experiment, wants to port KVM to Cortex A9, how hard could it > >> be to port KVM onto Cortex A9 processor? > > > > As Peter said, ARM is not a virtualizable architecture, so you need > > hardware support for virtualization to run hypervisors on an ARM system. > > > > Cortex-A9 does not have this support. > > > > You could implement something using either binary translation or > > paravirtualization, but neither is something we're immediately > > interested in accepting in mainline Linux. > > Right. I couldn't estimate how hard it will be to achieve the > paravirtualization/binary translation in KVM.. Probably it may involve > a lot of (assembly) code, since it requires to de-privilege those > privileged instructions. :-( > I don't think you'd have to write a lot of assembly code, but writing an in-kernel binary translator is simply beyond the scope of what KVM was designed for, and making a binary translator efficient and adding support for shadow page tables will be non-trivial. If anything, but again, I stress that I would *not* accept this upstream, you could build something that was paravirtualized with shadow page table support. > > > > What is your use-case for running on A9 specifically, as opposed to a > > CPU with virt support? > > The reason why I have to use A9 is because A9 has the special cache > controller, called PL310 cache controller, which is not supported in > A7 or A15. I want to use the special cache controller in > virtualization environment. That's why I'm so addicted to A9. :-( > If there is some latest ARM processor that has the PL310 cache > controller and virtulaizaiton extension support, that will be awesome! > However, I'm unaware of the ideal ARM processors. :-( Do you happen to > know? > I have no idea, no. I'm curious, why is it important for you to have a PL310 cache controller in a VM? Is this research or product oriented? In any case, I would give up on A9 virtualization and use a proper piece of hardware for virtualization on ARM. -Christoffer ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [Question] Can KVM run on Freescale IMX6 SABRE board? 2016-02-27 12:06 ` Christoffer Dall @ 2016-02-27 17:19 ` xu mike 0 siblings, 0 replies; 7+ messages in thread From: xu mike @ 2016-02-27 17:19 UTC (permalink / raw) To: Christoffer Dall; +Cc: kvmarm@lists.cs.columbia.edu 2016-02-27 7:06 GMT-05:00 Christoffer Dall <christoffer.dall@linaro.org>: > On Fri, Feb 26, 2016 at 10:53:44AM -0500, xu mike wrote: >> 2016-02-26 2:54 GMT-05:00 Christoffer Dall <christoffer.dall@linaro.org>: >> > On Thu, Feb 25, 2016 at 12:45:45PM -0500, xu mike wrote: >> >> Hi Peter, >> >> >> >> 2016-02-25 10:30 GMT-05:00 Peter Maydell <peter.maydell@linaro.org>: >> >> > >> >> > On 25 February 2016 at 15:17, xu mike <upennmike@gmail.com> wrote: >> >> > > I'm a student from the University of Pennsylvania. I want to try KVM on ARM >> >> > > boards. >> >> > > >> >> > > I have a Freescale IMX6 board [1] which has ARM Cortex A9 processors. >> >> > > I'm wondering if KVM can run on the Freescale IMX6 board? or >> >> > > Can KVM run on any ARM board with ARM Cortex A9 processors? >> >> > > >> >> > > I noticed at [2] that " KVM/ARM is designed specifically to work on ARM >> >> > > processors with the virtualization extensions enabled to run unmodified >> >> > > guest operating systems." >> >> > > I'm wondering if this statement is still true? >> >> > >> >> > Yes, it is. You need a CPU with the virtualization extensions, >> >> > and the A9 does not have them. You want (for instance) an A15 >> >> > or an A7. There are cheap A7-based development boards out there, >> >> > for instance the CubieTruck (which is not very fast but can run >> >> > a mainline Linux kernel and KVM so is a reasonable getting-started >> >> > development platform). >> >> >> >> >> >> Thank you very much for your quick reply! >> >> >> >> I'm wondering if KVM community has any plan to make KVM compatible >> >> with Cortex A9 processors? >> >> >> > >> > Not that I'm aware, no. >> > >> >> If someone, with linux scheduler development experiment but without >> >> porting experiment, wants to port KVM to Cortex A9, how hard could it >> >> be to port KVM onto Cortex A9 processor? >> > >> > As Peter said, ARM is not a virtualizable architecture, so you need >> > hardware support for virtualization to run hypervisors on an ARM system. >> > >> > Cortex-A9 does not have this support. >> > >> > You could implement something using either binary translation or >> > paravirtualization, but neither is something we're immediately >> > interested in accepting in mainline Linux. >> >> Right. I couldn't estimate how hard it will be to achieve the >> paravirtualization/binary translation in KVM.. Probably it may involve >> a lot of (assembly) code, since it requires to de-privilege those >> privileged instructions. :-( >> > > I don't think you'd have to write a lot of assembly code, but writing an > in-kernel binary translator is simply beyond the scope of what KVM was > designed for, and making a binary translator efficient and adding > support for shadow page tables will be non-trivial. I see... :-( > > If anything, but again, I stress that I would *not* accept this upstream, > you could build something that was paravirtualized with shadow page > table support. Ahha, it's totally understandable... > >> > >> > What is your use-case for running on A9 specifically, as opposed to a >> > CPU with virt support? >> >> The reason why I have to use A9 is because A9 has the special cache >> controller, called PL310 cache controller, which is not supported in >> A7 or A15. I want to use the special cache controller in >> virtualization environment. That's why I'm so addicted to A9. :-( >> If there is some latest ARM processor that has the PL310 cache >> controller and virtulaizaiton extension support, that will be awesome! >> However, I'm unaware of the ideal ARM processors. :-( Do you happen to >> know? >> > > I have no idea, no. I'm curious, why is it important for you to have a > PL310 cache controller in a VM? > > Is this research or product oriented? It's more for research. We want to see if we can control the L2 cache resource to provide better performance for the VMs. > > In any case, I would give up on A9 virtualization and use a proper piece > of hardware for virtualization on ARM. I see.. Now I guess I may have to give up A9 for virtualizaiotn. :-( Thank you very much for your time and help! Best, Mike ^ permalink raw reply [flat|nested] 7+ messages in thread
end of thread, other threads:[~2016-02-27 17:12 UTC | newest] Thread overview: 7+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2016-02-25 15:17 [Question] Can KVM run on Freescale IMX6 SABRE board? xu mike 2016-02-25 15:30 ` Peter Maydell 2016-02-25 17:45 ` xu mike 2016-02-26 7:54 ` Christoffer Dall 2016-02-26 15:53 ` xu mike 2016-02-27 12:06 ` Christoffer Dall 2016-02-27 17:19 ` xu mike
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.