From: jd <d....@fr...> - 2004-05-11 14:44:07
|
hi, I am sorry if it is not the right place to post a newbie question, but I have a problem with uml and gdb. I want to use uml to debug my little kernel hack but when I launch uml with : >> ./linux ubd0=root_fs_Debian-3.0r0.ext2 debug I have this result in the main xterm: Checking for the skas3 patch in the host...not found Checking for /proc/mm...not found tracing thread pid = 4149 and in the other xterm : >>GNU gdb 6.1-debian >>Copyright 2004 Free Software Foundation, Inc. >>GDB is free software, covered by the GNU General Public License, and you are >>welcome to change it and/or distribute copies of it under certain conditions. >>Type "show copying" to see the conditions. >>There is absolutely no warranty for GDB. Type "show warranty" for details. >>This GDB was configured as "i386-linux"...Using host libthread_db library "/lib/ >>tls/libthread_db.so.1". and after, nothing happens. Could somebody help me ? Thanks in advance. |
From: Carl P. <ca...@bo...> - 2004-05-11 16:33:52
|
I don't know if this will help but this is how I ran linux under gdb... gdb linux Then it starts GDB and prompts for action. As per normal when debugging an image in GDB the image is not run until you give GDB the "r" command. The parameters to the "r" command are the "command line" parameters to the image. Thus I did... r umid=anomuran eth0=tuntap,,,192.168.0.222 con=pty ...this ran linux in debug. The first thing it did was to break at a handy breakpoint... Program received signal SIGTRAP, Trace/breakpoint trap. 0xa000e000 in _start () ...I could have set various watches, traps, breakpoints, etc. but I just wanted to get it running first... c ...I then got the usual startup messages... (gdb) c Continuing. Checking for the skas3 patch in the host...not found Checking for /proc/mm...not found tracing thread pid = 3396 Linux version 2.6.4-1um (carl@flanger) (gcc version 3.3 20030226 (prerelease) (SuSE Linux)) #1 Sat May 1 22:16:28 BST 2004 etc. Kernel command line: umid=anomuran eth0=tuntap,,,192.168.0.222 con=pty root=98:0 etc. Memory: 29024k available Calibrating delay loop... 2510.02 BogoMIPS etc. Initializing stdio console driver ...In another console I used this handly little command to find out what pseudo terminals it was connecting to... lsof -c linux |sed -ne '\''s%^.*\(/dev.*\)%\1%p'\'' |sort -u ...getting something like... /dev/pts/3 /dev/ptyp1 ...I then used minicom to connect to the pseudo terminal that it had attached... minicom -o -p /dev/ttyp1 ...I saw all the console output that had come from /sbin/init... INIT: version 2.84 booting Starting devfs daemon: /sbin/devfsd /dev Started device management daemon v1.3.25 for /dev /etc/rc.d/rc.S: Testing filesystem status: Read-only file system Checking root filesystem: fsck 1.27 (8-Mar-2002) /dev/ubd/0 was not cleanly unmounted, check forced. Inode 35805, i_blocks is 24, should be 16. FIXED. Inode 97530, i_blocks is 18, should be 6. FIXED. /dev/ubd/0: Inode 97533, i_blocks is 16, should be 6. FIXED. Entry 'browse.dat' in /var/cache/samba (35794) has deleted/unused inode 35975. CLEARED. /dev/ubd/0: 26461/113088 files (0.9% non-contiguous), 415056/460800 blocks Remounting root device with read-write enabled. /dev/ubd/0 on / type ext2 (rw) Checking non-root filesystems: fsck 1.27 (8-Mar-2002) none on /dev/pts type devpts (rw,gid=5,mode=620) none on /proc type proc (rw) none on /mnt/host type hostfs (ro) Using /etc/random-seed to initialize /dev/urandom. INIT: Entering runlevel: 3 Going multiuser... Configuring eth0: ifconfig eth0 192.168.0.144 broadcast 192.168.0.255 netmask 255.255.255.0 Starting RPC portmapper: /sbin/rpc.portmap Mounting remote (NFS) file systems: /sbin/mount -a -t nfs Mounting remote (SMB) file systems: /sbin/mount -a -t smbfs Starting sysklogd daemons: /usr/sbin/syslogd /usr/sbin/klogd -c 3 -x Activating IPv4 packet forwarding. Starting Internet super-server daemon: /usr/sbin/inetd Starting OpenSSH SSH daemon: /usr/sbin/sshd lsmod: QM_MODULES: Function not implemented modprobe: Can't open dependencies file /lib/modules/2.6.4-1um/modules.dep (No such file or direc) Starting NFS services: /usr/sbin/exportfs -r exportfs: can't open /var/lib/nfs/rmtab for reading bookman-headoffice.co.uk:/database: Function not implemented /usr/sbin/rpc.nfsd 8 nfssvc: Function not implemented /usr/sbin/rpc.mountd --no-nfs-version 3 /usr/sbin/rpc.lockd lockdsvc: Function not implemented /usr/sbin/rpc.statd Welcome to Linux 2.6.4-1um (tty0) anomuran login: CTRL-A Z for help | 38400 8N1 | NOR | Minicom 2.00.0 | VT102 | Offline ...Note that when I first checked what pseudo terminals the UML linux was using I had only seen one pty master (ptyp1) rather than the four I had expected. When I connected with minicom I saw that the UML instance was in the middle of running an fsck on it's disks because the instance had died unexpectedly last time it was run. When the fsck completed I got the usual startup script output you see above and a login prompt. Then (from yet another host console) my lsof based command gave... /dev/net/tun /dev/pts/3 /dev/ptyp2 /dev/ptyp3 /dev/ptyp4 So all four virtual consoles had been opened. I logged in as root in the minicom session and shutdown the UML instance with /sbin/halt. The usual shutdown messages came up in minicom and when the script had completed the UML instance shut down and I saw... Program exited normally. (gdb) ... in the main (gdb) host console. I had to Ctrl-A Q to get out of minicom on the other host console session. Hope that helps! Carl ----- Original Message ----- From: "jd" <d....@fr...> To: <use...@li...> Sent: Tuesday, May 11, 2004 3:45 PM Subject: [uml-user] question about gdb and uml > hi, > > I am sorry if it is not the right place to post a newbie question, but I > have a problem with uml and gdb. > > I want to use uml to debug my little kernel hack but when I launch uml > with : > > >> ./linux ubd0=root_fs_Debian-3.0r0.ext2 debug > > I have this result in the main xterm: > > Checking for the skas3 patch in the host...not found > Checking for /proc/mm...not found > tracing thread pid = 4149 > > and in the other xterm : > > >>GNU gdb 6.1-debian > >>Copyright 2004 Free Software Foundation, Inc. > >>GDB is free software, covered by the GNU General Public License, and > you are > >>welcome to change it and/or distribute copies of it under certain > conditions. > >>Type "show copying" to see the conditions. > >>There is absolutely no warranty for GDB. Type "show warranty" for > details. > >>This GDB was configured as "i386-linux"...Using host libthread_db > library "/lib/ > >>tls/libthread_db.so.1". > > and after, nothing happens. > > Could somebody help me ? > > Thanks in advance. > > > > ------------------------------------------------------- > This SF.Net email is sponsored by Sleepycat Software > Learn developer strategies Cisco, Motorola, Ericsson & Lucent use to > deliver higher performing products faster, at low TCO. > http://www.sleepycat.com/telcomwpreg.php?From=osdnemail3 > _______________________________________________ > User-mode-linux-user mailing list > Use...@li... > https://lists.sourceforge.net/lists/listinfo/user-mode-linux-user > |
From: Vito I. <vim...@ya...> - 2004-05-25 11:14:20
|
Carl Peto <carl <at> bookmanassociates.com> writes: > I don't know if this will help but this is how I ran linux under gdb... > > gdb linux [missing] > r umid=anomuran eth0=tuntap,,,192.168.0.222 con=pty [missing] Hi, this worked for me, just make sure the hosting kernel has the skas patch... otherwise it will not work. Bye, Vito |