10-26-2011
Can KGDB debug a device driver?
Hi, all:
I am using the KGDB to debug my own network driver on linux. But I suspect if my KGDB work nomally. When I set a breakpoint at "do_one_initcall" function, the kernel function that will call my driver module, and continue to reach there, the "step" command of GDB cannot enter into my own driver(the initiate function of my driver)! Is this correct?
What are the right ways and commands to get the GDB to reach the initiate function of my driver from kernel? What is the best way to debug the initalization codes of a driver? Whether or not can the "step" command enter into my driver on earth?
Thanks!
li, kunlun
5 More Discussions You Might Find Interesting
1. Solaris
I've been researching minimizeing Solaris 8 and found that on the web page http://www.sun.com/bigadmin/content/packagelist/s8u7PkgList/p2.html the package SUNWglmr
is listed as "rasctrl environment monitoring driver for i2c, (Root) (32-bit)" while in the document "Solaris 8 minimize-updt1.pdf"... (1 Reply)
Discussion started by: roygoodwin
1 Replies
2. Programming
HI,
I am writing a network device driver for RTL8139c card on 2.6.18 kernel ... I am facing few queries listed below
1. Can i able to at all write a driver for RTL8139C or Realtek had designed new chip for 2.6 series kernel?
2. If no then which driver file 2.6.18 uses .. Is it 8139too.c or... (1 Reply)
Discussion started by: niketan
1 Replies
3. UNIX for Advanced & Expert Users
Hi All,
I have a device driver that uses UARTserial port to write/read to-from a device.
That device driver is working fine on FC3 machine( kernel version 2.6.12)...
Now I am switching to FC9 (kernel version 2.6.25.11-97).I have changed the interrupt flag SA_INTERRUPT to IRQF_DISABLED... (0 Replies)
Discussion started by: rajuprade
0 Replies
4. Programming
Hi All,
I have a device driver that uses UARTserial port to write/read to-from a device.
That device driver is working fine on FC3 machine( kernel version 2.6.12)...
Now I am switching to FC9 (kernel version 2.6.25.11-97).I have changed the interrupt flag SA_INTERRUPT to IRQF_DISABLED... (0 Replies)
Discussion started by: rajuprade
0 Replies
5. What is on Your Mind?
I want to work one day as a device driver programmer, OS I'm in love is Solaris :D
I am learning C in my free time which I don't have because college took my life and I need to study to pass.
In college we work in C++ / Java. These languages aren't inteded for device driver programming , saying... (0 Replies)
Discussion started by: solaris_user
0 Replies
LEARN ABOUT OPENSOLARIS
en
EN(4) BSD Kernel Interfaces Manual EN(4)
NAME
en -- device driver for Midway-based ATM interfaces
SYNOPSIS
To compile this driver into the kernel, place the following lines in your kernel configuration file:
device en
device atm
device utopia
Alternatively, to load the driver as a module at boot time, place the following line in loader.conf(5):
if_en_load="YES"
DESCRIPTION
The en device driver supports Midway-based ATM interfaces including the Efficient Networks, Inc. ENI-155 and Adaptec ANA-59x0. Midway is an
AAL5 SAR (Segmentation and Reassembly) chip.
For configuring the card for IP see natmip(4).
The following sysctls are recognized by the driver additionally to those handled by utopia(4):
hw.atm.enX.istats
Contains an array of uint32_t with internal driver statistics.
hw.atm.enX.debug
This is a bit map of debugging options. This variable is only available when the driver is compiled with debugging support.
The driver supports the media options sdh, noscramb and unassigned (see utopia(4)).
DIAGNOSTICS
en0 <Efficient Networks ENI-155p> rev 0 int a irq 5 on pci0:16
en0: ATM midway v0, board IDs 6.0, Utopia (pipelined), 512KB on-board RAM
en0: maximum DMA burst length = 64 bytes
en0: 7 32KB receive buffers, 8 32KB transmit buffers allocated
CAVEATS
The driver extensively uses DMA on PCI. The first generation PCI chipsets do not work or exhibit poor performance.
SEE ALSO
natm(4), natmip(4), utopia(4), ifconfig(8), route(8)
AUTHORS
Chuck Cranor of Washington University implemented en driver in 1996 for NetBSD.
BSD July 16, 2005 BSD