Patchwork Does KVM support the P.A. Semi PA6T cpu?

login
register
mail settings
Submitter Alexander Graf
Date May 30, 2014, 12:47 p.m.
Message ID <53887DC5.9080908@suse.de>
Download mbox | patch
Permalink /patch/354169/
State New
Headers show

Comments

Alexander Graf - May 30, 2014, 12:47 p.m.
On 30.05.14 14:42, Christian Zigotzky wrote:
> Am 30.05.14 14:21, schrieb Alexander Graf:
>>
>> On 30.05.14 13:39, Christian Zigotzky wrote:
>>> Hi Alex,
>>>
>>> Thank you for your answer. Here are the traces:
>>>
>>> http://www.xenosoft.de/trace_mol_mac_os_x_tiger.txt.tar.gz
>>> http://www.xenosoft.de/trace_mol_mac_os_x_jaguar.txt.tar.gz
>>
>> Looking at the Jaguar log, the guest seems to be stuck trying to map 
>> a page:
>>
>>              mol-4087  [001] ....   252.368002: kvm_exit: 
>> exit=DATA_STORAGE | pc=0x900074c4 | msr=0x4000d030 | dar=0xa000a434 | 
>> srr1=0x100000000000d032 | last_inst=0x912b0
>> 000
>>
>> If you look at the trace, you will see that this PC with the exact 
>> same DAR happens over and over again - every time the guest thinks 
>> it's mapped the page.
>>
>> I don't know why that's happening. Try to enable the debug prints (or 
>> convert them to trace points ;)) in the book3s_32 guest and book3s_64 
>> host emulation. Maybe that tells us something.
>>
>>
>> Alex
> Thanks Alex for your effort. How can I enable the debug prints?

This should do the trick. Output will be in dmesg:



There's also always the chance that split real mode is the real culprit 
for breakage here. Have you verified that the same kernel source (KVM 
code) works on a PPC32 host with MOL?


Alex

--
To unsubscribe from this list: send the line "unsubscribe kvm-ppc" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Christian Zigotzky - May 30, 2014, 3:44 p.m.
On 30.05.2014 14:47, Alexander Graf wrote:
>
> On 30.05.14 14:42, Christian Zigotzky wrote:
>> Am 30.05.14 14:21, schrieb Alexander Graf:
>>>
>>> On 30.05.14 13:39, Christian Zigotzky wrote:
>>>> Hi Alex,
>>>>
>>>> Thank you for your answer. Here are the traces:
>>>>
>>>> http://www.xenosoft.de/trace_mol_mac_os_x_tiger.txt.tar.gz
>>>> http://www.xenosoft.de/trace_mol_mac_os_x_jaguar.txt.tar.gz
>>>
>>> Looking at the Jaguar log, the guest seems to be stuck trying to map 
>>> a page:
>>>
>>> mol-4087 [001] .... 252.368002: kvm_exit: exit=DATA_STORAGE | 
>>> pc=0x900074c4 | msr=0x4000d030 | dar=0xa000a434 | 
>>> srr1=0x100000000000d032 | last_inst=0x912b0
>>> 000
>>>
>>> If you look at the trace, you will see that this PC with the exact 
>>> same DAR happens over and over again - every time the guest thinks 
>>> it's mapped the page.
>>>
>>> I don't know why that's happening. Try to enable the debug prints 
>>> (or convert them to trace points ;)) in the book3s_32 guest and 
>>> book3s_64 host emulation. Maybe that tells us something.
>>>
>>>
>>> Alex
>> Thanks Alex for your effort. How can I enable the debug prints?
>
> This should do the trick. Output will be in dmesg:
>
> diff --git a/arch/powerpc/kvm/book3s_32_mmu.c 
> b/arch/powerpc/kvm/book3s_32_mmu.c
> index 93503bb..939b14f 100644
> --- a/arch/powerpc/kvm/book3s_32_mmu.c
> +++ b/arch/powerpc/kvm/book3s_32_mmu.c
> @@ -27,8 +27,8 @@
> #include <asm/kvm_ppc.h>
> #include <asm/kvm_book3s.h>
>
> -/* #define DEBUG_MMU */
> -/* #define DEBUG_MMU_PTE */
> +#define DEBUG_MMU
> +#define DEBUG_MMU_PTE
> /* #define DEBUG_MMU_PTE_IP 0xfff14c40 */
>
> #ifdef DEBUG_MMU
Hi Alex,

Unfortunately, the KVM modul doesn't compile with DEBUG_MMU.

Kernel 3.14.4:

make modules
CHK include/config/kernel.release
CHK include/generated/uapi/linux/version.h
CHK include/generated/utsrelease.h
CALL scripts/checksyscalls.sh
AS [M] arch/powerpc/kvm/fpu.o
CC [M] arch/powerpc/kvm/book3s_paired_singles.o
CC [M] arch/powerpc/kvm/book3s_pr.o
CC [M] arch/powerpc/kvm/book3s_pr_papr.o
CC [M] arch/powerpc/kvm/book3s_emulate.o
AS [M] arch/powerpc/kvm/book3s_interrupts.o
CC [M] arch/powerpc/kvm/book3s_mmu_hpte.o
CC [M] arch/powerpc/kvm/book3s_64_mmu_host.o
CC [M] arch/powerpc/kvm/book3s_64_mmu.o
CC [M] arch/powerpc/kvm/book3s_32_mmu.o
arch/powerpc/kvm/book3s_32_mmu.c: In function 
‘kvmppc_mmu_book3s_32_get_pteg’:
arch/powerpc/kvm/book3s_32_mmu.c:133:2: error: ‘struct 
kvmppc_vcpu_book3s’ has no member named ‘vcpu’
make[1]: *** [arch/powerpc/kvm/book3s_32_mmu.o] Fehler 1
make: *** [arch/powerpc/kvm] Fehler 2

>
>
> There's also always the chance that split real mode is the real 
> culprit for breakage here. Have you verified that the same kernel 
> source (KVM code) works on a PPC32 host with MOL?

My PPC32 host (Sam440ep-Flex 733MHz) is too slow for MOL.

Rgds,

Christian
--
To unsubscribe from this list: send the line "unsubscribe kvm-ppc" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Christian Zigotzky - May 30, 2014, 5:38 p.m.
On 30.05.2014 17:46, Alexander Graf wrote:
>
>>> This should do the trick. Output will be in dmesg:
>>>
>>> diff --git a/arch/powerpc/kvm/book3s_32_mmu.c 
>>> b/arch/powerpc/kvm/book3s_32_mmu.c
>>> index 93503bb..939b14f 100644
>>> --- a/arch/powerpc/kvm/book3s_32_mmu.c
>>> +++ b/arch/powerpc/kvm/book3s_32_mmu.c
>>> @@ -27,8 +27,8 @@
>>> #include <asm/kvm_ppc.h>
>>> #include <asm/kvm_book3s.h>
>>>
>>> -/* #define DEBUG_MMU */
>>> -/* #define DEBUG_MMU_PTE */
>>> +#define DEBUG_MMU
>>> +#define DEBUG_MMU_PTE
>>> /* #define DEBUG_MMU_PTE_IP 0xfff14c40 */
>>>
>>> #ifdef DEBUG_MMU
>> Hi Alex,
>>
>> Unfortunately, the KVM modul doesn't compile with DEBUG_MMU.
>>
>> Kernel 3.14.4:
>>
>> make modules
>> CHK include/config/kernel.release
>> CHK include/generated/uapi/linux/version.h
>> CHK include/generated/utsrelease.h
>> CALL scripts/checksyscalls.sh
>> AS [M] arch/powerpc/kvm/fpu.o
>> CC [M] arch/powerpc/kvm/book3s_paired_singles.o
>> CC [M] arch/powerpc/kvm/book3s_pr.o
>> CC [M] arch/powerpc/kvm/book3s_pr_papr.o
>> CC [M] arch/powerpc/kvm/book3s_emulate.o
>> AS [M] arch/powerpc/kvm/book3s_interrupts.o
>> CC [M] arch/powerpc/kvm/book3s_mmu_hpte.o
>> CC [M] arch/powerpc/kvm/book3s_64_mmu_host.o
>> CC [M] arch/powerpc/kvm/book3s_64_mmu.o
>> CC [M] arch/powerpc/kvm/book3s_32_mmu.o
>> arch/powerpc/kvm/book3s_32_mmu.c: In function 
>> ‘kvmppc_mmu_book3s_32_get_pteg’:
>> arch/powerpc/kvm/book3s_32_mmu.c:133:2: error: ‘struct 
>> kvmppc_vcpu_book3s’ has no member named 
>
> Och jetzt komm - das bisschen C um den zu fixen wirst du doch noch 
> schaffen, oder? ;)
>
>
Huch, Deutsch. Bestimmt aus Nürnberg. :D Meine Lieblingsstadt. ;-) I 
have solved the problem above.

Dmesg logs:

watch -n 0 "dmesg" > dmesg_mol_mac_os_x_tiger.txt
watch -n 0 "dmesg" > dmesg_mol_mac_os_x_jaguar.txt

http://forum.hyperion-entertainment.biz/download/file.php?id=1215
http://forum.hyperion-entertainment.biz/download/file.php?id=1216

more dmesg_mol_mac_os_x_tiger.txt

I hope you can fix the problem.

-- Christian

--
To unsubscribe from this list: send the line "unsubscribe kvm-ppc" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Christian Zigotzky - June 10, 2014, 10:39 a.m.
Am 30.05.14 19:38, schrieb Christian Zigotzky:
> Dmesg logs:
>
> watch -n 0 "dmesg" > dmesg_mol_mac_os_x_tiger.txt
> watch -n 0 "dmesg" > dmesg_mol_mac_os_x_jaguar.txt
>
> http://forum.hyperion-entertainment.biz/download/file.php?id=1215
> http://forum.hyperion-entertainment.biz/download/file.php?id=1216
>
> more dmesg_mol_mac_os_x_tiger.txt
>
> I hope you can fix the problem.
>
> -- Christian
>
Hi Alex,

I've read that we should disable SMP support for KVM 
(http://techuman.wordpress.com/2013/09/12/powerpc-g4-virtualization-with-kvm/). 
Is that right? Shall I unset the SMP support in the kernel config? Have 
you looked in the dmesg files above?

Cheers,

Christian
--
To unsubscribe from this list: send the line "unsubscribe kvm-ppc" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Alexander Graf - June 10, 2014, 1:56 p.m.
On 06/10/2014 12:39 PM, Christian Zigotzky wrote:
> Am 30.05.14 19:38, schrieb Christian Zigotzky:
>> Dmesg logs:
>>
>> watch -n 0 "dmesg" > dmesg_mol_mac_os_x_tiger.txt
>> watch -n 0 "dmesg" > dmesg_mol_mac_os_x_jaguar.txt
>>
>> http://forum.hyperion-entertainment.biz/download/file.php?id=1215
>> http://forum.hyperion-entertainment.biz/download/file.php?id=1216
>>
>> more dmesg_mol_mac_os_x_tiger.txt
>>
>> I hope you can fix the problem.
>>
>> -- Christian
>>
> Hi Alex,
>
> I've read that we should disable SMP support for KVM 
> (http://techuman.wordpress.com/2013/09/12/powerpc-g4-virtualization-with-kvm/). 
> Is that right?

Only on 32bit hosts.

> Shall I unset the SMP support in the kernel config? Have you looked in 
> the dmesg files above?

I have no idea what's going wrong on your system tbh :).


Alex

--
To unsubscribe from this list: send the line "unsubscribe kvm-ppc" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Patch

diff --git a/arch/powerpc/kvm/book3s_32_mmu.c 
b/arch/powerpc/kvm/book3s_32_mmu.c
index 93503bb..939b14f 100644
--- a/arch/powerpc/kvm/book3s_32_mmu.c
+++ b/arch/powerpc/kvm/book3s_32_mmu.c
@@ -27,8 +27,8 @@ 
  #include <asm/kvm_ppc.h>
  #include <asm/kvm_book3s.h>

-/* #define DEBUG_MMU */
-/* #define DEBUG_MMU_PTE */
+#define DEBUG_MMU
+#define DEBUG_MMU_PTE
  /* #define DEBUG_MMU_PTE_IP 0xfff14c40 */

  #ifdef DEBUG_MMU