Implement dbg_rw_hvm_mem
PATCH 1/1 Implement dbg_rw_hvm_mem
The following patch does 2 things:
- Correct a bug confusing XEN_SUBVERSION with XEN_VERSION - preventing kdb working on xen 3.2
- Implement dbg_rw_hvm_mem for Xen 3.X hypervisors
xen/arch/x86/debug.c +6 -3
@@ -34,12 +34,15 @@typedef unsigned char dbgbyte_t ; -#if XEN_SUBVERSION >=3 /* xen 3.x.x */ +#if XEN_VERSION >=3 /* xen 3.x.x */ static noinline intdbg_rw_hvm_mem (dbgva_t addr,dbgbyte_t *buf,int len,struct domain *dp,int toaddr) { -return len; +if ( toaddr ) +return hvm_copy_to_guest_virt (addr, buf, len) == HVMCOPY_okay; +else +return hvm_copy_from_guest_virt (buf, addr, len) == HVMCOPY_okay; }#else
@@ -82,7 +85,7 @@ return len; } -#endif /* XEN_SUBVERSION >= 3 */ +#endif /* XEN_VERSION >= 3 */ /*
xen/kdb/kdb_cmds.c +2 -2
@@ -658,7 +658,7 @@return KDB_CPU_MAIN_KDB ; } -#if XEN_SUBVERSION >= 3 /* xen 3.x.x */ +#if XEN_VERSION >= 3 /* xen 3.x.x */ struct Xgt_desc_struct { unsigned short size; unsigned long address __attribute__((packed));
@@ -1496,7 +1496,7 @@kdb_cpu_cmd_t kdb_cmdf_reboot (int argc,const char **argv,struct cpu_user_regs *regs) { -#if XEN_SUBVERSION >=3 /* xen 3.x.x */ +#if XEN_VERSION >=3 /* xen 3.x.x */ machine_restart ();#else machine_restart ("" );
_______________________________________________
Xen-devel mailing list
[email protected]
http://lists.xensource.com/xen-devel
Quoted 3 lines · Ben Guthro
The following patch does 2 things:
- Correct a bug confusingXEN_SUBVERSIONwithXEN_VERSION- preventing kdb working on xen 3.2
Actually, there's no confusion. The api's are different in 3.1.x and 3.3. Looks like 3.2 is same as 3.3. I'm downloading 3.2 and will change appropriately.
Quoted 1 line
- Implement
dbg_rw_hvm_memfor Xen 3.X hypervisors
ok, thanks.
BTW, you must refresh your kdb with a BUG fix i made in kdbmain.c/kdbmain() regarding disabling irqs in ss mode.
Thanks
Mukesh