The Linux Kernel Mailing List
 help / color / mirror / Atom feed
From: ZC Miao <hellwolf.misty@gmail.com>
To: Linux Kernel <linux-kernel@vger.kernel.org>
Subject: Usage of kgdb in v2.6.26
Date: Wed, 16 Jul 2008 23:00:03 +0100	[thread overview]
Message-ID: <1216245603.3664.29.camel@hellwolf-sony.freehell.org> (raw)

I tried to use the kgdb from v2.6.26, but met few problems.
I use :
1. gdb 6.8 (gdb-6.8-11.fc9.i386)
2. kernel v2.6.26 source code
3. Qemu 0.9.1 (qemu-0.9.1-5.fc9.i386)
4. Host is : 2.6.25.10-86.fc9.i686
5. Cpu : Intel(R) Core(TM)2 Duo CPU     T5450  @ 1.66GHz


* Firstly I compile kernel 2.6.26 with kgdb support :
CONFIG_KGDB=y
CONFIG_KGDB_SERIAL_CONSOLE=y

* Then I use qemu to boot my kernel along with a rootfs that I created,
with a qemu option that makes a local tcp port a listening service as a
serial port for the emulated system. The kernel arguments I gave is :
nfsroot=192.168.200.1:/path/to/rootfs,udp,nolock ip=dhcp root=/dev/nfs
ro single kgdboc=ttyS0,115200 kgdbwait

* After the kernel loaded and boot for a while, the gdb receives a
signal and hangs the kernel :
kgdb_register_io_module (new_kgdb_io_ops=<value optimized out>)
    at /data/home/hellwolf/mydoc/prog/linux/linux-2.6/kernel/kgdb.c:1674
(gdb) 

Question 1 :
* If I type "b sys_read", and then "c", the kernel continues until I
get :

---------------------------------------------------------------
[New Thread 1]
Cannot remove breakpoints because program is no longer writable.
It might be running in another process.
Further execution is probably impossible.

Breakpoint 1, sys_read (fd=3, buf=0xbfdb31dc "", count=512)

at /data/home/hellwolf/mydoc/prog/linux/linux-2.6/fs/read_write.c:360
(gdb) 
---------------------------------------------------------------

Why "program is no longer writable" happens here?

Question 2 :
* If I directly type "c" when kgdbwait triggered. And use Sys-Rq+G to
interrupt the kernel, I will get :
---------------------------------------------------------------
[New Thread -1]

Program received signal SIGTRAP, Trace/breakpoint trap.
[Switching to Thread -1]
sysrq_handle_gdb (key=103, tty=0xc78f6400)
    at /data/home/hellwolf/mydoc/prog/linux/linux-2.6/kernel/kgdb.c:167
(gdb)  
---------------------------------------------------------------
Here if I type "c sys_read" and "c", it never actually makes any break
points, I will never receive a break from gdb.


I don't know if I made anything wrong, or I missed any important thing,
so I post here and would like to get some help from you.

Thanks. 

--
ZC Miao (hellwolf.misty@gmail.com)
Blog http://hellwolf.cublog.cn

gpg --keyserver pgp.mit.edu --recv-key 0x6B174C6F

Most people deserve each other.
		-- Shirley



             reply	other threads:[~2008-07-16 22:00 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-07-16 22:00 ZC Miao [this message]
2008-07-17 13:14 ` Usage of kgdb in v2.6.26 Jason Wessel
2008-07-17 13:21   ` ZC Miao
2008-07-17 14:45   ` ZC Miao

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1216245603.3664.29.camel@hellwolf-sony.freehell.org \
    --to=hellwolf.misty@gmail.com \
    --cc=linux-kernel@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox