Subject: filenames and linenumbers in ddb
To: None <tech-kern@netbsd.org>
From: Pavel Cahyna <pcah8322@artax.karlin.mff.cuni.cz>
List: tech-kern
Date: 01/15/2003 11:56:32
Hello,

the ddb(4) man page says (in section EXPRESSIONS): 

If supported by an object format dependent routine,
[filename:]function[:linenumber], [filename:]variable, and
filename[:linenumber], can be accepted as a symbol.

So I tried to set breakpoint at bridge_input:1410 (function
bridge_input, line 1410). ddb responded with 'invalid symbol table name'
error. This is strange, because the man page says that that the symbol
table name is followed by two colons ('The symbol may be prefixed with
symbol_table_name::'). Why does it think that bridge_input is a symbol
table name? Setting breakpoint at bridge_input only is possible, but a
breakpoint at the entry of the function is not what I want. 

I also tried the filename:linenumber syntax, but typing if_bridge.c:1410
or if_bridge:1410, but the first give 'Symbol not found' and the second
'invalid symbol table name' errors. 'sifting if_bridge' command returns
nothing, so there is probably no information available to support
filenames in expressions.

Is there any way to use line numbers in ddb? 

I'm using 1.6_STABLE on an alpha. Kernel is compiled with 
makeoptions DEBUG="-g"
and options DEBUG.

Any help would be appreciated.

Pavel