[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <d3d87e3e-e13f-252a-1c06-f18a78af5d98@csgroup.eu>
Date: Sun, 13 Feb 2022 18:29:39 +0000
From: Christophe Leroy <christophe.leroy@...roup.eu>
To: Aaron Tomlin <atomlin@...hat.com>
CC: "mcgrof@...nel.org" <mcgrof@...nel.org>,
"cl@...ux.com" <cl@...ux.com>,
"pmladek@...e.com" <pmladek@...e.com>,
"mbenes@...e.cz" <mbenes@...e.cz>,
"akpm@...ux-foundation.org" <akpm@...ux-foundation.org>,
"jeyu@...nel.org" <jeyu@...nel.org>,
"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>,
"linux-modules@...r.kernel.org" <linux-modules@...r.kernel.org>,
"live-patching@...r.kernel.org" <live-patching@...r.kernel.org>,
"atomlin@...mlin.com" <atomlin@...mlin.com>,
"ghalat@...hat.com" <ghalat@...hat.com>,
"allen.lkml@...il.com" <allen.lkml@...il.com>,
"void@...ifault.com" <void@...ifault.com>,
"joe@...ches.com" <joe@...ches.com>,
"msuchanek@...e.de" <msuchanek@...e.de>,
"oleksandr@...alenko.name" <oleksandr@...alenko.name>
Subject: Re: [PATCH v5 13/13] module: Move version support into a separate
file
Le 13/02/2022 à 19:03, Aaron Tomlin a écrit :
> On Thu 2022-02-10 14:28 +0000, Christophe Leroy wrote:
>>
>>
>> Le 09/02/2022 à 18:11, Aaron Tomlin a écrit :
>>> No functional change.
>>>
>>> This patch migrates module version support out of core code into
>>> kernel/module/version.c. In addition simple code refactoring to
>>> make this possible.
>>>
>>> Signed-off-by: Aaron Tomlin <atomlin@...hat.com>
>>> ---
>>> kernel/module/Makefile | 1 +
>>> kernel/module/internal.h | 50 +++++++++++++
>>> kernel/module/main.c | 150 +--------------------------------------
>>> kernel/module/version.c | 110 ++++++++++++++++++++++++++++
>>> 4 files changed, 163 insertions(+), 148 deletions(-)
>>> create mode 100644 kernel/module/version.c
>>
>> Sparse reports:
>>
>> CHECK kernel/module/version.c
>> kernel/module/version.c:103:6: warning: symbol 'module_layout' was not
>> declared. Should it be static?
>
> The function module_layout() does not appear to be used. So, I've decided
> to remove it.
I'm not sure you can do that.
From commit 8c8ef42aee8f ("module: include other structures in module
version check") I understand that module_layout is there for some signature.
>
>> Checkpatch:
>>
>> total: 0 errors, 2 warnings, 3 checks, 337 lines checked
>
> Ok.
>
>>> +struct symsearch {
>>> + const struct kernel_symbol *start, *stop;
>>> + const s32 *crcs;
>>> + enum mod_license {
>>> + NOT_GPL_ONLY,
>>> + GPL_ONLY,
>>> + } license;
>>> +};
>>
>> Why don't leave this in main.c ?
>
> Yes, struct 'symsearch' is not used outside of kernel/module/main.c.
>
>>> +inline int check_modstruct_version(const struct load_info *info,
>>> + struct module *mod)
>>
>> inline is pointless for a non static function
>
> This was an unfortunate oversight.
>
>>> +inline int same_magic(const char *amagic, const char *bmagic,
>>> + bool has_crcs)
>>
>> Same, not point for inline keyword here.
>
> Agreed.
>
>
> Kind regards,
>
Powered by blists - more mailing lists