Re: [PATCH] arm64: armv8_deprecated: Checking return value for memory allocation

From: Yunfeng Ye
Date: Mon Oct 07 2019 - 02:06:59 EST




On 2019/9/30 21:22, Will Deacon wrote:
> On Sun, Sep 29, 2019 at 12:44:17PM +0800, Yunfeng Ye wrote:
>> There are no return value checking when using kzalloc() and kcalloc() for
>> memory allocation. so add it.
>>
>> Signed-off-by: Yunfeng Ye <yeyunfeng@xxxxxxxxxx>
>> ---
>> arch/arm64/kernel/armv8_deprecated.c | 5 +++++
>> 1 file changed, 5 insertions(+)
>>
>> diff --git a/arch/arm64/kernel/armv8_deprecated.c b/arch/arm64/kernel/armv8_deprecated.c
>> index 2ec09de..ca158be 100644
>> --- a/arch/arm64/kernel/armv8_deprecated.c
>> +++ b/arch/arm64/kernel/armv8_deprecated.c
>> @@ -174,6 +174,9 @@ static void __init register_insn_emulation(struct insn_emulation_ops *ops)
>> struct insn_emulation *insn;
>>
>> insn = kzalloc(sizeof(*insn), GFP_KERNEL);
>> + if (!insn)
>> + return;
>> +
>> insn->ops = ops;
>> insn->min = INSN_UNDEF;
>>
>> @@ -233,6 +236,8 @@ static void __init register_insn_emulation_sysctl(void)
>>
>> insns_sysctl = kcalloc(nr_insn_emulated + 1, sizeof(*sysctl),
>> GFP_KERNEL);
>> + if (!insns_sysctl)
>> + return;
>
> Since both of these failure paths are fatal to the instruction emulation,
> can you please return an error code when the allocation fails and use that
> to fail the calling initcall() appropriately?
>
ok, I will modify as your suggest, thanks.

> Will
>
> .
>