On Thu, Jan 10, 2002 at 03:29:14PM -0600, Steve Lord wrote:
> Could you do this please:
>
> cd linux
> rm fs/xfs/xfs_vfsops.o
> make CFLAGS_xfs_vfsops.o=-g vmlinux
> s=$(sed -ne '/xfs_syncsub/s/ .*//p' System.map | tr '[a-z]' '[A-Z]')
> e=$(echo -e "obase=16\nibase=16\n$s+3112" | bc)
> objdump -S --start-address=0x$s --stop-address=0x$e vmlinux
>
> And send me the output, if I got that right it will generate a mixed
> source and disassembly listing of the function.
In theory "make fs/xfs/xfs_vfsops.lst" should also work. It works for
most of kernel, unfortunately not for XFS because it does too
many special things with EXTRA_CFLAGS in its Makefile.
make EXTRA_CFLAGS="-I`pwd`/fs/xfs -I`pwd`/fs -funsigned-char"
fs/xfs/xfs_vnodeops.lst
seems to work for XFS also.
You usually have to do chmod a+x scripts/makelst first because the Makefiles
don't do that. It also does only work properly for compiled in objects,
not modules.
-Andi
|