[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH qemu 1/1] docs: how to use gdb with unix sockets
From: |
Philippe Mathieu-Daudé |
Subject: |
Re: [PATCH qemu 1/1] docs: how to use gdb with unix sockets |
Date: |
Tue, 10 Aug 2021 21:25:28 +0200 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101 Thunderbird/78.11.0 |
Yay! Posting from sr.ht works \o/
On 8/10/21 6:04 PM, ~archi42 wrote:
> From: Sebastian Meyer <meyer@absint.com>
>
> Signed-off-by: Sebastian Meyer <meyer@absint.com>
> ---
> docs/system/gdb.rst | 24 +++++++++++++++++++++++-
> 1 file changed, 23 insertions(+), 1 deletion(-)
>
> diff --git a/docs/system/gdb.rst b/docs/system/gdb.rst
> index 144d083df3..2ff4d6aab5 100644
> --- a/docs/system/gdb.rst
> +++ b/docs/system/gdb.rst
> @@ -15,7 +15,8 @@ The ``-s`` option will make QEMU listen for an incoming
> connection
> from gdb on TCP port 1234, and ``-S`` will make QEMU not start the
> guest until you tell it to from gdb. (If you want to specify which
> TCP port to use or to use something other than TCP for the gdbstub
> -connection, use the ``-gdb dev`` option instead of ``-s``.)
> +connection, use the ``-gdb dev`` option instead of ``-s``. See
> +further below for an example using unix sockets.)
Could we insert a link to the 'Using unix sockets' chapter?
>
> .. parsed-literal::
>
> @@ -168,3 +169,24 @@ The memory mode can be checked by sending the following
> command:
>
> ``maintenance packet Qqemu.PhyMemMode:0``
> This will change it back to normal memory mode.
> +
> +Using unix sockets
> +^^^^^^^^^^^^^^^^^^
> +
> +An alternate method for connecting gdb to the qemu gdbstub are unix
"QEMU"
> +sockets (if supported by your operating system). This is useful when
> +running serveral tests in parallel and/or you do not know a free tcp
"several", "know" -> "have", "TCP"
> +port a priori (e.g. when running automated tests).
> +First create a new chardev with the appropriate options, then
Drop "new"?
> +instruct the gdbserver to use that device::
> +
> +.. parsed-literal::
> +
> + |qemu_system| -chardev
> socket,path=/tmp/gdb-socket,server=on,wait=off,id=gdb0 -gdb chardev:gdb0 -S
> -kernel bzImage -hda rootdisk.img -append "root=/dev/hda"
Maybe simply "-chardev
socket,path=/tmp/gdb-socket,server=on,wait=off,id=gdb0 -gdb chardev:gdb0
..."?
> +
> +Start gdb as before, but this time connect using the path to
> +the socket::
> +
> + (gdb) target remote /tmp/gdb-socket
> +
> +Please mind that this usually requires gdb version 9.0 or newer.
"Note gdb version 9.0 or newer is required."?