Re: [PATCH] x86_64: print wrong value for RDX register.

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

 




----- Original Message -----
> Hi Dave,
> 
> crash has a funny bug that bt command wrongly shows RCX value
> as RDX value for exception stack of x86_64 xen hypervisor.
> 
> Here is an example.
> RDX is 0xcfc but bt shows 0x4 (== RCX) for it.
> 
> ffff828c802f0fa0:  0000000000000246 00000000ffffffff   F...............
>                           R8               RAX
> ffff828c802f0fb0:  0000000000000004 0000000000000cfc   ................
>                           RCX  ^^^^        RDX  ^^^^
> ffff828c802f0fc0:  0000000000000000 00000000800f0000   ................
>                           RSI              RDI
> crash> bt
> PCPU:  0  VCPU: ffff8300695be080
>  #0 [ffff828c802f0f40] kexec_crash at ffff828c8010d227
>  #1 [ffff828c802f0f50] handle_ist_exception at ffff828c801926f7
>     [exception RIP: pci_conf_read+130]
>     RIP: ffff828c801537e2  RSP: ffff828c802f7de0  RFLAGS: 00000006
>     RAX: 00000000ffffffff  RBX: 0000000000000004  RCX: 0000000000000004
>     RDX: 0000000000000004  RSI: 0000000000000000  RDI: 00000000800f0000
>                      ^^^^
>     RBP: 0000000000000cfc   R8: 0000000000000246   R9: 0000000000000000
>     R10: 0000000000000000  R11: 000000000000ffff  R12: 0000000000000004
>     R13: 0000000000000000  R14: 0000000000000000  R15: ffff8300695be080
>     ORIG_RAX: 0000000200000000  CS: e008  SS: 0000
> --- <exception stack> ---
>  #2 [ffff828c802f7de0] guest_io_read at ffff828c80148345
>  #3 [ffff828c802f7e20] do_general_protection at ffff828c8014a00c
>  #4 [ffff828c802f7eb0] reprogram_timer at ffff828c8012c55e
>  #5 [ffff828c802f7f20] handle_exception_saved at ffff828c80192495
> crash>
> 
> 
> Signed-off-by: Seiichi Ikarashi <s.ikarashi@xxxxxxxxxxxxxx>
> 
> --- a/x86_64.c	2012-02-04 04:22:33.000000000 +0900
> +++ b/x86_64.c	2012-02-21 17:04:09.032121837 +0900
> @@ -6562,7 +6562,7 @@ x86_64_print_eframe_regs_hyper(struct bt
>  	fprintf(fp, "    RAX: %016lx  RBX: %016lx  RCX: %016lx\n",
>  		up[10], up[5], up[11]);
>  	fprintf(fp, "    RDX: %016lx  RSI: %016lx  RDI: %016lx\n",
> - 		up[11], up[13], up[14]);
> + 		up[12], up[13], up[14]);
>  	fprintf(fp, "    RBP: %016lx   R8: %016lx   R9: %016lx\n",
>  		up[4], up[9], up[8]);
>  	fprintf(fp, "    R10: %016lx  R11: %016lx  R12: %016lx\n",

Thanks Seiichi -- it looks it's been doing that since Xen hypervisor
support was originally added.

Queued for crash-6.0.4.

Dave

--
Crash-utility mailing list
Crash-utility@xxxxxxxxxx
https://www.redhat.com/mailman/listinfo/crash-utility


[Index of Archives]     [Fedora Development]     [Fedora Desktop]     [Fedora SELinux]     [Yosemite News]     [KDE Users]     [Fedora Tools]

 

Powered by Linux