Re: [PATCH v2] scripts/gdb: use mem instead of core_layout to get the module address

From: Pankaj Raghav
Date: Thu Apr 13 2023 - 03:44:52 EST


On 2023-04-13 02:53, Luis Chamberlain wrote:
> On Wed, Apr 12, 2023 at 10:25:18PM +0200, Pankaj Raghav wrote:
>> commit ac3b43283923 ("module: replace module_layout with module_memory")
>> changed the struct module data structure from module_layout to
>> module_memory. The core_layout member which is used while loading
>> modules are not available anymore leading to the following error while
>> running gdb:
>>
>> (gdb) lx-symbols
>> loading vmlinux
>> Python Exception <class 'gdb.error'>: There is no member named core_layout.
>> Error occurred in Python: There is no member named core_layout.
>>
>> Replace core_layout with its new counterpart mem[MOD_TEXT].
>>
>> Fixes: ac3b43283923 ("module: replace module_layout with module_memory")
>> Signed-off-by: Pankaj Raghav <p.raghav@xxxxxxxxxxx>
>> ---
>> scripts/gdb/linux/constants.py.in | 3 +++
>> scripts/gdb/linux/modules.py | 4 ++--
>> scripts/gdb/linux/symbols.py | 4 ++--
>> 3 files changed, 7 insertions(+), 4 deletions(-)
>>
>> diff --git a/scripts/gdb/linux/constants.py.in b/scripts/gdb/linux/constants.py.in
>> index 36fd2b145853..471300ba176c 100644
>> --- a/scripts/gdb/linux/constants.py.in
>> +++ b/scripts/gdb/linux/constants.py.in
>> @@ -62,6 +62,9 @@ LX_GDBPARSED(hrtimer_resolution)
>> LX_GDBPARSED(IRQD_LEVEL)
>> LX_GDBPARSED(IRQ_HIDDEN)
>>
>> +/* linux/module.h */
>> +LX_GDBPARSED(MOD_TEXT)
>
> Should we just fill in the rest of the other sections too while at it?
>

I don't see them used in the scripts. Maybe we can add them when needed?

> Luis