...
Note the section names tend to start with a '.' so they get treated as hidden. The output should look like this:
Code Block | ||
---|---|---|
| ||
-r--r--r-- 1 root root 4096 Feb 8 15:59 .bss -r--r--r-- 1 root root 4096 Feb 8 15:58 __bug_table -r--r--r-- 1 root root 4096 Feb 8 15:59 .data -r--r--r-- 1 root root 4096 Feb 8 15:59 .devexit.text -r--r--r-- 1 root root 4096 Feb 8 15:59 .devinit.text -r--r--r-- 1 root root 4096 Feb 8 15:59 .exit.text -r--r--r-- 1 root root 4096 Feb 8 15:59 .gnu.linkonce.this_module -r--r--r-- 1 root root 4096 Feb 8 15:59 .init.text -r--r--r-- 1 root root 4096 Feb 8 15:59 .note.gnu.build-id -r--r--r-- 1 root root 4096 Feb 8 15:59 .rodata -r--r--r-- 1 root root 4096 Feb 8 15:59 .rodata.str1.1 -r--r--r-- 1 root root 4096 Feb 8 15:59 .smp_locks -r--r--r-- 1 root root 4096 Feb 8 15:59 .strtab -r--r--r-- 1 root root 4096 Feb 8 15:59 .symtab -r--r--r-- 1 root root 4096 Feb 8 15:59 .text -r--r--r-- 1 root root 4096 Feb 8 15:59 .text.unlikely |
...
One final note. To ensure the symbolic information is present in the kernel components that will be debugged, make sure that these are built using the -g
gcc flag. In addition, turning optimization down or off often makes debugging easier. Turning them off can be done by setting the gcc flag -O0
. Another handy flag that makes the stack easier to work with is -fno-omit-frame-pointer
making function calls save the stack frames and pointers. So for example the modified line for the Makefile
in pv-linux-drivers.git
looks like:
$ make -C $(KDIR) FROM_DKMS=n NOSTDINC_FLAGS="$(ENOSTDINC_FLAGS)" M=$(CURDIR) modules EXTRA_CFLAGS="-g -O0 -fno-omit-frame-pointer"
...