[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kvm-ppc
Subject:    Re: [kvm-ppc-devel] [PATCH] Add print for PowerPC qemu for failed
From:       Christian Ehrhardt <ehrhardt () linux ! vnet ! ibm ! com>
Date:       2008-02-06 11:25:38
Message-ID: 47A99932.3050009 () linux ! vnet ! ibm ! com
[Download RAW message or body]

hi Jerone,
I think this is good for debugging to find unsupported hardware, but it should not be \
enabled by default (you could get a printf storm if a guest workload does stupid \
things). Maybe qemu has some debug/verbose options you can use. And additionally it \
would be useful for the dcr_write patch to print the value it tried to write. I also \
don't know if we really need that caps-locked in the output.

Jerone Young wrote:
> # HG changeset patch
> # User Jerone Young <jyoung5@us.ibm.com>
> # Date 1202249136 21600
> # Node ID 4bbbf98ebf05ef77dbb68e2131b3bc0764767c99
> # Parent  f8cab6a29bf3f34f1cbf4d1e6d7bd21809fd4184
> Add print for PowerPC qemu for failed DCR read/writes
> 
> This patch adds a print to notify of failed reads and rights. Currently
> we will still ignore them (until development is fully done). But this makes
> them easier to spot.
> 
> Signed-off-by: Jerone Young <jyoung5@us.ibm.com>
> 
> diff --git a/qemu/qemu-kvm-powerpc.c b/qemu/qemu-kvm-powerpc.c
> --- a/qemu/qemu-kvm-powerpc.c
> +++ b/qemu/qemu-kvm-powerpc.c
> @@ -178,13 +178,17 @@ int handle_powerpc_dcr_read(int vcpu, ui
> int handle_powerpc_dcr_read(int vcpu, uint32_t dcrn, uint32_t *data)
> {
> CPUState *env = cpu_single_env;
> -    ppc_dcr_read(env->dcr_env, dcrn, data);
> +    if (ppc_dcr_read(env->dcr_env, dcrn, data) < 0)
> +        printf("DCR FAILED on READ at 0x%x\n", dcrn);
> + 
> return 0; /* XXX ignore failed DCR ops */
> }
> 
> int handle_powerpc_dcr_write(int vcpu, uint32_t dcrn, uint32_t data)
> {
> CPUState *env = cpu_single_env;
> -    ppc_dcr_write(env->dcr_env, dcrn, data);
> +    if (ppc_dcr_write(env->dcr_env, dcrn, data) < 0)
> +        printf("DCR FAILED on WRITE at 0x%x\n", dcrn);
just a suggestion

        printf("%s - failed writing 0x%x @ 0x%x\n", dcrn, data);

> +
> return 0; /* XXX ignore failed DCR ops */
> }
> 
> -------------------------------------------------------------------------
> This SF.net email is sponsored by: Microsoft
> Defy all challenges. Microsoft(R) Visual Studio 2008.
> http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/
> _______________________________________________
> kvm-ppc-devel mailing list
> kvm-ppc-devel@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/kvm-ppc-devel


-- 

Grüsse / regards, 
Christian Ehrhardt
IBM Linux Technology Center, Open Virtualization

-------------------------------------------------------------------------
This SF.net email is sponsored by: Microsoft
Defy all challenges. Microsoft(R) Visual Studio 2008.
http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/
_______________________________________________
kvm-ppc-devel mailing list
kvm-ppc-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/kvm-ppc-devel


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic