我有一个加载共享库的驱动程序,并且库中的ISR中存在段错误。我可以获取段错误的地址,并且尝试获取有关段错误在哪里的上下文。但是,该地址位于已加载库的地址空间之外(位于0x79something
)。
令我感兴趣的是,看起来所有库的大小都为零-这是什么原因引起的?这样就可以理解,这些库中发生的任何事情都是段错误,它在程序的有效地址空间之外。
0x0000000078000000 0x0000000078000000 No libnanospin.so
0x0000000078011000 0x0000000078023040 Yes libstrings.so.1
0x0000000001000000 0x0000000001000000 No libc.so.4
0x0000000078024000 0x0000000078024000 No my_library.so
0x000000007804a000 0x000000007804a000 No libnvxhci.so
0x000000007805f000 0x000000007805f000 No libnvclock.so
0x0000000078075000 0x0000000078075000 No libnvdma32.so
0x0000000078086000 0x0000000078086000 No libnvdtcommon.so