Hi Kyle,
Yes, bge_nic_put32()/bge_reg_get32()/bge_reg_put32() are all defined as
inline functions. This is why you can't set breakpoint against them.
Carson is investigating this issue on a IBM BladeCenter inside SUN.
Regards,
Kerry
Kyle McDonald wrote:
Hi Kerry,
I looked up the bug you filed, hoping to add this to it myself, but I
didn't see anyway for me to do that (is bugs.opensolaris.org read-only?)
Anyway, over the weekend I poked this a little more, and I'll admit it's
got me stumped.
The disconnect definitely occurs at:
bge_asf_pre_reset_operations()
But looking at the code, I can't tell where. There are calls to 3
functions in that one, but setting break points on those didn't add any
info - it appears they were never called? - Or could the calls have been
inlined or optimized out by the compiler?
I'm going to have to go read up on how to use kdb, so I can examine the
arguments passed to the function, etc.
Thanks for all your help!
-Kyle
Here's the very end of the output:
...
hid3 is /p...@0,0/pci1014,2...@1d,1/h...@2/dev...@1/in...@1
USB 1.10 interface (usbif4b3,4004.config1.1) operating at full speed
(USB 1.x) on USB 1.10 external hub: mo...@1, hid1 at bus address 7
IBM HIDK/M
hid1 is /p...@0,0/pci1014,2...@1d,1/h...@2/dev...@3/mo...@1
/p...@0,0/pci1014,2...@1d,1/h...@2/dev...@1/in...@1 (hid3) online
/p...@0,0/pci1014,2...@1d,1/h...@2/dev...@3/mo...@1 (hid1) online
PCIE-device: pci1014,2...@1,1, bge1
bge1 is /p...@0,0/pci8086,3...@3/pci8086,3...@0,2/pci1014,2...@1,1
pseudo-device: devinfo0
devinfo0 is /pseudo/devi...@0
Hostname: Einstein03
dump on /dev/zvol/dsk/zroot0/dump size 4096 MB
NIS domain name is Engineering.NIS
Loaded modules: [ lofs ]
kmdb: stop at bge`bge_attach
kmdb: target stopped at:
bge`bge_attach: pushq %rbp
[2]> [2]>
[2]>
[2]>
[2]> :c
kmdb: stop at bge`bge_asf_pre_reset_operations
kmdb: target stopped at:
bge`bge_asf_pre_reset_operations: pushq %rbp
[2]>
[2]>
[2]>
[2]>
[2]>
[2]>
[2]>
[2]> bge_nic_put32:b
[2]> bge_reg_get32:b
[2]> bge_reg_put32:b
[2]>
[2]>
[2]>
[2]> :c
system>
Kyle McDonald wrote:
Hi Kerry,
Maybe this will help even more. I was looking at the driver sources in
OpenGrok, and (if I was looking at the same version) I thought I'd set
a few more break points. it looks like it's:
bge_attach()->bge_reset()->bge_chip_reset()->bge_asf_pre_reset_operations()
Hope this helps.
-Kyle
_______________________________________________
driver-discuss mailing list
driver-discuss@opensolaris.org
http://mail.opensolaris.org/mailman/listinfo/driver-discuss