All of lore.kernel.org
 help / color / mirror / Atom feed
* [Qemu-devel] WinDbg module
@ 2017-04-12 14:05 Mihail Abakumov
  2017-04-12 15:49 ` Marc-André Lureau
                   ` (3 more replies)
  0 siblings, 4 replies; 8+ messages in thread
From: Mihail Abakumov @ 2017-04-12 14:05 UTC (permalink / raw)
  To: qemu-devel; +Cc: Pavel Dovgalyuk, sw, pbonzini

Hello.

We made the debugger module WinDbg (like GDB) for QEMU. This is the 
replacement of the remote stub in Windows kernel. Used for remote 
Windows kernel debugging without debugging mode.

The latest build and instructions for the launch can be found here: 
https://github.com/ispras/qemu/releases/tag/v2.7.50-windbg

Currently only one ways to create a remote debugging connection is 
supported: using COM port with named pipe.

Should I prepare patches for inclusion in the master branch? Or is it 
too specific module and it is not needed?

-- 
Thanks,
Mihail Abakumov

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [Qemu-devel] WinDbg module
  2017-04-12 14:05 [Qemu-devel] WinDbg module Mihail Abakumov
@ 2017-04-12 15:49 ` Marc-André Lureau
  2017-04-12 16:30 ` Roman Kagan
                   ` (2 subsequent siblings)
  3 siblings, 0 replies; 8+ messages in thread
From: Marc-André Lureau @ 2017-04-12 15:49 UTC (permalink / raw)
  To: Mihail Abakumov, qemu-devel; +Cc: sw, Pavel Dovgalyuk, pbonzini

Hi

On Wed, Apr 12, 2017 at 6:44 PM Mihail Abakumov <mikhail.abakumov@ispras.ru>
wrote:

> Hello.
>
> We made the debugger module WinDbg (like GDB) for QEMU. This is the
> replacement of the remote stub in Windows kernel. Used for remote
> Windows kernel debugging without debugging mode.
>
> The latest build and instructions for the launch can be found here:
> https://github.com/ispras/qemu/releases/tag/v2.7.50-windbg
>
> Currently only one ways to create a remote debugging connection is
> supported: using COM port with named pipe.
>
> Should I prepare patches for inclusion in the master branch? Or is it
> too specific module and it is not needed?
>

Great news! A few years ago, I looked into this with a colleague to speed
up debugging, but we were stuck (can't remember the blocking factor, but
the lack of documentation was not helping). I think some windows driver
developers would be quite happy with it, which makes it a good candidate
for inclusion. Please prepare patches!


-- 
Marc-André Lureau

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [Qemu-devel] WinDbg module
  2017-04-12 14:05 [Qemu-devel] WinDbg module Mihail Abakumov
  2017-04-12 15:49 ` Marc-André Lureau
@ 2017-04-12 16:30 ` Roman Kagan
  2017-04-12 17:55   ` Stefan Weil
  2017-04-12 18:47 ` Denis V. Lunev
  2017-04-13  7:02 ` Ladi Prosek
  3 siblings, 1 reply; 8+ messages in thread
From: Roman Kagan @ 2017-04-12 16:30 UTC (permalink / raw)
  To: Mihail Abakumov; +Cc: qemu-devel, sw, Pavel Dovgalyuk, pbonzini

On Wed, Apr 12, 2017 at 05:05:45PM +0300, Mihail Abakumov wrote:
> Hello.
> 
> We made the debugger module WinDbg (like GDB) for QEMU. This is the
> replacement of the remote stub in Windows kernel. Used for remote Windows
> kernel debugging without debugging mode.
> 
> The latest build and instructions for the launch can be found here:
> https://github.com/ispras/qemu/releases/tag/v2.7.50-windbg
> 
> Currently only one ways to create a remote debugging connection is
> supported: using COM port with named pipe.
> 
> Should I prepare patches for inclusion in the master branch? Or is it too
> specific module and it is not needed?

Please do!

Every once in a while dealing with a Windows guest problem I wished I
had this.  We at Virtuozzo looked into doing something like this but
never got around to.

Thanks,
Roman.

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [Qemu-devel] WinDbg module
  2017-04-12 16:30 ` Roman Kagan
@ 2017-04-12 17:55   ` Stefan Weil
  2017-04-13  9:32     ` Mihail Abakumov
  0 siblings, 1 reply; 8+ messages in thread
From: Stefan Weil @ 2017-04-12 17:55 UTC (permalink / raw)
  To: Roman Kagan, Mihail Abakumov, qemu-devel, Pavel Dovgalyuk, pbonzini

Am 12.04.2017 um 18:30 schrieb Roman Kagan:
> On Wed, Apr 12, 2017 at 05:05:45PM +0300, Mihail Abakumov wrote:
>> Hello.
>>
>> We made the debugger module WinDbg (like GDB) for QEMU. This is the
>> replacement of the remote stub in Windows kernel. Used for remote Windows
>> kernel debugging without debugging mode.
>>
>> The latest build and instructions for the launch can be found here:
>> https://github.com/ispras/qemu/releases/tag/v2.7.50-windbg
>>
>> Currently only one ways to create a remote debugging connection is
>> supported: using COM port with named pipe.
>>
>> Should I prepare patches for inclusion in the master branch? Or is it too
>> specific module and it is not needed?
>
> Please do!
>
> Every once in a while dealing with a Windows guest problem I wished I
> had this.  We at Virtuozzo looked into doing something like this but
> never got around to.
>
> Thanks,
> Roman.
>

Hello Mihail,

from the previous answers you can see that there is a
need for WinDbg support.

If you want to prepare patches for the official QEMU,
you need signed commits from all developers who contributed
(Dmitry Koltunov and you?).

Make also sure that no licensed code (for example extracts
from MS header files) gets added.

See http://wiki.qemu-project.org/Contribute/SubmitAPatch for
more hints.

As far as I saw, WinDbg support adds several thousand lines
of code. Do you want to support that code after it has been
included in QEMU?

Cheers
Stefan

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [Qemu-devel] WinDbg module
  2017-04-12 14:05 [Qemu-devel] WinDbg module Mihail Abakumov
  2017-04-12 15:49 ` Marc-André Lureau
  2017-04-12 16:30 ` Roman Kagan
@ 2017-04-12 18:47 ` Denis V. Lunev
  2017-04-13  7:02 ` Ladi Prosek
  3 siblings, 0 replies; 8+ messages in thread
From: Denis V. Lunev @ 2017-04-12 18:47 UTC (permalink / raw)
  To: Mihail Abakumov, qemu-devel; +Cc: sw, Pavel Dovgalyuk, pbonzini

On 04/12/2017 05:05 PM, Mihail Abakumov wrote:
> Hello.
>
> We made the debugger module WinDbg (like GDB) for QEMU. This is the
> replacement of the remote stub in Windows kernel. Used for remote
> Windows kernel debugging without debugging mode.
>
> The latest build and instructions for the launch can be found here:
> https://github.com/ispras/qemu/releases/tag/v2.7.50-windbg
>
> Currently only one ways to create a remote debugging connection is
> supported: using COM port with named pipe.
>
> Should I prepare patches for inclusion in the master branch? Or is it
> too specific module and it is not needed?
>
this would be indeed useful. We have a lot of problems
with Windows debugging. In general, Windows behaviour
with and without debugger is different.

Den

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [Qemu-devel] WinDbg module
  2017-04-12 14:05 [Qemu-devel] WinDbg module Mihail Abakumov
                   ` (2 preceding siblings ...)
  2017-04-12 18:47 ` Denis V. Lunev
@ 2017-04-13  7:02 ` Ladi Prosek
  2017-04-13  9:23   ` Mihail Abakumov
  3 siblings, 1 reply; 8+ messages in thread
From: Ladi Prosek @ 2017-04-13  7:02 UTC (permalink / raw)
  To: Mihail Abakumov; +Cc: qemu-devel, sw, Pavel Dovgalyuk, Paolo Bonzini

Hi,

On Wed, Apr 12, 2017 at 4:05 PM, Mihail Abakumov
<mikhail.abakumov@ispras.ru> wrote:
> Hello.
>
> We made the debugger module WinDbg (like GDB) for QEMU. This is the
> replacement of the remote stub in Windows kernel. Used for remote Windows
> kernel debugging without debugging mode.

This is awesome!

> The latest build and instructions for the launch can be found here:
> https://github.com/ispras/qemu/releases/tag/v2.7.50-windbg
>
> Currently only one ways to create a remote debugging connection is
> supported: using COM port with named pipe.

The linked v2.7.50-windbg seems to be a Windows release. Does it also
work on Linux hosts with KVM?

Also,

  #ifdef TARGET_X86_64 // Unimplemented yet
  #error Unsupported Architecture
  #endif

can you estimate the amount of work to support 64-bit?

Thanks!
Ladi

> Should I prepare patches for inclusion in the master branch? Or is it too
> specific module and it is not needed?
>
> --
> Thanks,
> Mihail Abakumov
>

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [Qemu-devel] WinDbg module
  2017-04-13  7:02 ` Ladi Prosek
@ 2017-04-13  9:23   ` Mihail Abakumov
  0 siblings, 0 replies; 8+ messages in thread
From: Mihail Abakumov @ 2017-04-13  9:23 UTC (permalink / raw)
  To: Ladi Prosek; +Cc: qemu-devel, sw, Pavel Dovgalyuk, Paolo Bonzini

Ladi Prosek писал 2017-04-13 10:02:
> 
> The linked v2.7.50-windbg seems to be a Windows release. Does it also
> work on Linux hosts with KVM?
> 

I haven't tested it yet, but it should work.

> 
> Also,
> 
>   #ifdef TARGET_X86_64 // Unimplemented yet
>   #error Unsupported Architecture
>   #endif
> 
> can you estimate the amount of work to support 64-bit?
> 

At the moment I can't implement support for x86_64 arch. At least due to 
the fact that any OS Windows that I tried crashes on this architecture.

Thanks,
Mihail Abakumov

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [Qemu-devel] WinDbg module
  2017-04-12 17:55   ` Stefan Weil
@ 2017-04-13  9:32     ` Mihail Abakumov
  0 siblings, 0 replies; 8+ messages in thread
From: Mihail Abakumov @ 2017-04-13  9:32 UTC (permalink / raw)
  To: Stefan Weil; +Cc: Roman Kagan, qemu-devel, Pavel Dovgalyuk, pbonzini

Stefan Weil писал 2017-04-12 20:55:
> Am 12.04.2017 um 18:30 schrieb Roman Kagan:
>> On Wed, Apr 12, 2017 at 05:05:45PM +0300, Mihail Abakumov wrote:
>>> Hello.
>>> 
>>> We made the debugger module WinDbg (like GDB) for QEMU. This is the
>>> replacement of the remote stub in Windows kernel. Used for remote 
>>> Windows
>>> kernel debugging without debugging mode.
>>> 
>>> The latest build and instructions for the launch can be found here:
>>> https://github.com/ispras/qemu/releases/tag/v2.7.50-windbg
>>> 
>>> Currently only one ways to create a remote debugging connection is
>>> supported: using COM port with named pipe.
>>> 
>>> Should I prepare patches for inclusion in the master branch? Or is it 
>>> too
>>> specific module and it is not needed?
>> 
>> Please do!
>> 
>> Every once in a while dealing with a Windows guest problem I wished I
>> had this.  We at Virtuozzo looked into doing something like this but
>> never got around to.
>> 
>> Thanks,
>> Roman.
>> 
> 
> Hello Mihail,
> 
> from the previous answers you can see that there is a
> need for WinDbg support.
> 
> If you want to prepare patches for the official QEMU,
> you need signed commits from all developers who contributed
> (Dmitry Koltunov and you?).
> 
> Make also sure that no licensed code (for example extracts
> from MS header files) gets added.
> 
> See http://wiki.qemu-project.org/Contribute/SubmitAPatch for
> more hints.
> 
> As far as I saw, WinDbg support adds several thousand lines
> of code. Do you want to support that code after it has been
> included in QEMU?
> 
> Cheers
> Stefan

Yes, of course. We can support it.

Thanks,
Mihail Abakumov

^ permalink raw reply	[flat|nested] 8+ messages in thread

end of thread, other threads:[~2017-04-13  9:32 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-04-12 14:05 [Qemu-devel] WinDbg module Mihail Abakumov
2017-04-12 15:49 ` Marc-André Lureau
2017-04-12 16:30 ` Roman Kagan
2017-04-12 17:55   ` Stefan Weil
2017-04-13  9:32     ` Mihail Abakumov
2017-04-12 18:47 ` Denis V. Lunev
2017-04-13  7:02 ` Ladi Prosek
2017-04-13  9:23   ` Mihail Abakumov

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.