lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <4628A238.3010602@vmware.com>
Date:	Fri, 20 Apr 2007 04:21:28 -0700
From:	Petr Vandrovec <petr@...are.com>
To:	Andi Kleen <andi@...stfloor.org>
CC:	Xavier Bestel <xavier.bestel@...e.fr>, roland <devzero@....de>,
	linux-kernel@...r.kernel.org
Subject: Re: VMWare Workstation 6 for debugging Linux Kernel (!)

Andi Kleen wrote:
> Xavier Bestel <xavier.bestel@...e.fr> writes:
> 
>> On Fri, 2007-04-20 at 00:46 +0200, roland wrote:
>>
>>> We just quietly added an exciting feature to Workstation 6.0. I believe it 
>>> will make WS6 a great tool for Linux kernel development. You can now debug 
>>> kernel of Linux VM with gdb running on the Host without changing anything in 
>>> the Guest VM. No kdb, no recompiling and no need for second machine. All you 
>>> need is a single line in VM's configuration file.
>> I think qemu has the exact same feature.
> 
> It doesn't seem to work for x86-64 there though.

Hello,

Do you mean with qemu or with VMware?  Yes, we do not support replay 
with 64bit guests, but debug interface should just work.  Only gotcha is 
that for 64bit guest you need another option:

debugStub.listen.guest64 = "TRUE"

and then you need to attach gdb to port 8864 (*).  Unfortunately it does 
not seem possible to build gdb which would support 16bit/32bit code 
while using 64bit gdb on-wire format, so there are two interfaces.  And 
if you single-step switch from 64bit mode to 32bit mode or back, you 
also have to switch gdbs.  Yes, it is a bit unintuitive, and 
additionally one gdb silently ignores breakpoints set up by other gdb, 
so you need to keep breakpoints in sync between two gdbs yourself :-(

(*) If you are using gdb which has both 32bit and 64bit support, be sure 
to issue appropriate 'set architecture xxx' before 'target remote 
localhost:88xx' (i386:x86-64 for port 8864, i386 or i8086 for port 
8832).  Otherwise gdb is going to die complaining it could not parse 
remote reply.

				Best regards,
					Petr Vandrovec

P.S.: Yes, I'm associated with VMware.
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ