2022-04-01 14:39:38

by Jiasheng Jiang

[permalink] [raw]
Subject: Re: [Cluster-devel] [PATCH] gfs2: Add check for mempool_alloc

On Wed, 30 Mar 2022 11:56:41 +0800 Christoph Hellwig wrote:
>> As the potential failure of mempool_alloc(),
>> it could return NULL pointer.
>> Therefore, it should be better to check it
>> in order to avoid the dereference of the NULL
>> pointer.
>>
>> Fixes: e8c92ed76900 ("GFS2: Clean up log write code path")
>> Signed-off-by: Jiasheng Jiang <[email protected]>
>
> Please explain how it could fail to start with.

I think that for safety, the cost of redundant and harmless
check is acceptable.
Also, checking after allocation is a good program pattern.
Therefore, it should be better to check it although it is
hard to fail.

Thanks,
Jiang


2022-04-03 16:16:53

by Christoph Hellwig

[permalink] [raw]
Subject: Re: [Cluster-devel] [PATCH] gfs2: Add check for mempool_alloc

On Fri, Apr 01, 2022 at 11:37:55AM +0800, Jiasheng Jiang wrote:
> >> Fixes: e8c92ed76900 ("GFS2: Clean up log write code path")
> >> Signed-off-by: Jiasheng Jiang <[email protected]>
> >
> > Please explain how it could fail to start with.
>
> I think that for safety, the cost of redundant and harmless
> check is acceptable.
> Also, checking after allocation is a good program pattern.
> Therefore, it should be better to check it although it is
> hard to fail.

Please take a look at the implemetation and documentation of
mempool_alloc again. Thewhole point of that function is that it will
not fail for allocations that can sleep.