lkml.org 
[lkml]   [2016]   [Mar]   [14]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
SubjectRe: gdb/scripts: Module symbol search paths
From
Date
Hi Kieran,

On 2016-03-14 11:20, Kieran Bingham wrote:
> Hi Jan,
>
> Whilst testing the modules update patch you sent, I discovered (due to
> having rebased to v4.5) that the module search path will end up picking
> an incorrect version of the .ko file if an earlier version exists.:
>
>
> (gdb) lx-symbols /opt/root/ubuntu-vivid.x86_64
> loading vmlinux
> (gdb) c
> Continuing.
> < load module helloworld.ko on target >
> scanning for modules in /opt/root/ubuntu-vivid.x86_64
> loading @0xffffffffa0000000:
> /opt/root/ubuntu-vivid.x86_64/lib/modules/4.4.0+/extra/helloworld.ko
>
> Looking at the filesystem layout:
>
> kbingham@CookieMonster:~$ sudo find /opt/root/ubuntu-vivid.x86_64/ -name
> helloworld.ko
> /opt/root/ubuntu-vivid.x86_64/lib/modules/4.4.0+/extra/helloworld.ko
> /opt/root/ubuntu-vivid.x86_64/lib/modules/4.5.0+/extra/helloworld.ko
>

If there are multiple sets of modules underneath a path, you have to be
more precise, /opt/root/ubuntu-vivid.x86_64/lib/modules/4.5.0+ in this case.

>
> Unfortunately I can't see any reference to a vfs path in:
> print $lx_module("helloworld")
>
> So we can't retrieve the exact path location from the kernel information
> Have you experienced this issue?

No, because I'm always using lx-symbols against the build output, not
against installed modules. But even then, see above, I don't see a
problem is the path is properly specified.

Jan

>
> Perhaps we ought to prefix our search path with
> $(path_item)/lib/modules/`uname -r`
>
>
> ST's C implementation of module support can be seen at:
>
> https://git.linaro.org/people/kieran.bingham/binutils-gdb.git/blob/e30a18cf086bd02c4ebb57f6f783fe2ad4af9c84:/gdb/stlinux/lkd-modules.c
>
> They restrict the search paths, and parse expected
> lib/modules/{version}/ paths to ensure the correct modules are discovered.
>
> --
> Regards
>
> Kieran
>


--
Siemens AG, Corporate Technology, CT RDA ITP SES-DE
Corporate Competence Center Embedded Linux

\
 
 \ /
  Last update: 2016-03-14 12:21    [W:0.232 / U:0.296 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site