From: Kieran Bingham <kieran.bingham@linaro.org>
To: Jan Kiszka <jan.kiszka@siemens.com>,
Peter Griffin <peter.griffin@linaro.org>
Cc: Lee Jones <lee.jones@linaro.org>,
Maxime Coquelin <maxime.coquelin@st.com>,
Russell Wayman <russell.wayman@linaro.org>,
Linux Kernel <linux-kernel@vger.kernel.org>
Subject: Re: gdb/scripts: Module symbol search paths
Date: Mon, 14 Mar 2016 11:00:36 +0000 [thread overview]
Message-ID: <56E699D4.50200@linaro.org> (raw)
In-Reply-To: <56E6989E.6080300@siemens.com>
On 14/03/16 10:55, Jan Kiszka wrote:
> On 2016-03-14 11:48, Kieran Bingham wrote:
>> On 14/03/16 10:36, Jan Kiszka wrote:
>>> 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.
>>>
>>
>> Ok, I see. I guess it's just a different use-case. ST had this factored
>> out so that the user did not have to do much other than specify the root
>> path. And in fact, the 'user' didn't do this as it was pre-set.
>>
>> I had even toyed with the idea that we could parse the commandline - and
>> if we detect an nfsroot, automatically provide that on the search path.
>>
>> Perhaps we'll put this on the to-think-about stack for now then on this
>> side :)
>>
>> Specifying the full path to modules isn't an unreasonable solution IMO,
>> so it will just come down to a user-experience thing. The automatic
>> detection could just be classed as a nice feature for the future perhaps.
>
> If you wanna do version matching, you could parse the module header and
> filter out everything that's incompatible. But then I'm afraid of the
> loading time...
Interesting alternative. I guess this parsing would only occur on files
after a filename match, so I don't see it as being too intrusive.
Perhaps something to test and measure later, and would need testing on a
large number of modules (with a large number of false positives to match
against).
--
Kieran
>
> Jan
>
prev parent reply other threads:[~2016-03-14 11:00 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-03-14 10:20 gdb/scripts: Module symbol search paths Kieran Bingham
2016-03-14 10:36 ` Jan Kiszka
2016-03-14 10:48 ` Kieran Bingham
2016-03-14 10:55 ` Jan Kiszka
2016-03-14 11:00 ` Kieran Bingham [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=56E699D4.50200@linaro.org \
--to=kieran.bingham@linaro.org \
--cc=jan.kiszka@siemens.com \
--cc=lee.jones@linaro.org \
--cc=linux-kernel@vger.kernel.org \
--cc=maxime.coquelin@st.com \
--cc=peter.griffin@linaro.org \
--cc=russell.wayman@linaro.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox