Hi Kalle,

you asked:

> Is it possible to debug the primary exec server with gdb?
> Or is it possible to run another exec server and debug that?

I have successfully attached gdb to the primary exec server (pid 5), but it
is quite unstable, and not recommended.

Here is a way to debug the exec server in a subhurd. When we enable
EXECSERVER again, we might be able to debug exec processes in the main Hurd
as a user, too, but currently this is not possible.

dd if=/dev/zero of=diskimage bs=1024k count=48
mke2fs -o hurd diskimage
settrans -c di /hurd/ext2fs `pwd`/diskimage
cp /boot/servers.boot .
(edit the file, the debian default is fine if you don't want to debug the
root fs server or ld.so)

fsysopts di -r # or set it read-only at least
boot servers.boot diskimage
./native-install
# Now try to "halt". I had difficulties here, there seem to be some bugs.
# If all else fails, kill all subhurd processes from another terminal
# (screen)

boot servers.boot diskimage
ps aux
# Look at exec task, size and similar
# (switch to other terminal, prompt $)
$ ps aux
# Compare with prior output and match pids
$ gdb /somewhere/di/hurd/exec <pid>
# Where <pid> is the pid (in the main hurd) of the exec task (of the subhurd)

Enjoy.
Marcus


-- 
`Rhubarb is no Egyptian god.' Debian http://www.debian.org Check Key server 
Marcus Brinkmann              GNU    http://www.gnu.org    for public PGP Key 
[EMAIL PROTECTED],     [EMAIL PROTECTED]    PGP Key ID 36E7CD09
http://homepage.ruhr-uni-bochum.de/Marcus.Brinkmann/       [EMAIL PROTECTED]

Reply via email to