Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 24 Aug 2017 16:24:50 +0800
From:      Julian Elischer <julian@freebsd.org>
To:        Aijaz Baig <aijazbaig1@gmail.com>, freebsd-fs@freebsd.org
Subject:   Re: Tips on remote debugging for filesystem code
Message-ID:  <046d8df4-71a6-65f5-18ad-50589d6d466d@freebsd.org>
In-Reply-To: <CAHB2L%2Bfx_tbGt7NUf-odG780UgPLqDk34CZo0MNP4VsUTfzeZw@mail.gmail.com>
References:  <CAHB2L%2Bfx_tbGt7NUf-odG780UgPLqDk34CZo0MNP4VsUTfzeZw@mail.gmail.com>

next in thread | previous in thread | raw e-mail | index | archive | help
On 24/8/17 1:40 pm, Aijaz Baig wrote:
> I am trying to understand the internals of the VFS/VNODE interface in the
> kernel and to that end I was attempting to go through the code flow. Hence
> I hooked up two FreeBSD VMs, one as the server and the second as the client
> using named pipes as serial ports.
>
> I put a breakpoint on say 'ufs_lookup' and I hit it by something as simple
> as doing an 'ls' over a directory. Then I try to step through the code and
> examine how the structures get populated and so on. However when I step
> through the code on (K)GDB after a few lines of C code, the server VM (the
> debugged machine) just kind of freezes while the client (on which GDB is
> run is also waiting on the server) and thereafter I always have to restart
> the server VM
>
> Am I doing something incorrectly? How do you guys normally do it? Keen to
> hear tips and best practices
>
I have had more success recently using BHype to make a Virtual FreeBSD 
machine

and connecting to it using the built-in gdb interface.


Firstly it is easier than a serial interface and secondly you don't 
need two machines.






Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?046d8df4-71a6-65f5-18ad-50589d6d466d>