Re: [PATCH v2 1/7] kernel/resource: make release_mem_region_adjustable() never fail

From: David Hildenbrand
Date: Tue Sep 15 2020 - 05:16:23 EST


On 15.09.20 11:06, Wei Yang wrote:
> On Tue, Sep 15, 2020 at 09:35:30AM +0200, David Hildenbrand wrote:
>>
>>>> static int __ref try_remove_memory(int nid, u64 start, u64 size)
>>>> {
>>>> int rc = 0;
>>>> @@ -1777,7 +1757,7 @@ static int __ref try_remove_memory(int nid, u64 start, u64 size)
>>>> memblock_remove(start, size);
>>>> }
>>>>
>>>> - __release_memory_resource(start, size);
>>>> + release_mem_region_adjustable(&iomem_resource, start, size);
>>>>
>>>
>>> Seems the only user of release_mem_region_adjustable() is here, can we move
>>> iomem_resource into the function body? Actually, we don't iterate the resource
>>> tree from any level. We always start from the root.
>>
>> You mean, making iomem_resource implicit? I can spot that something
>> similar was done for
>>
>> #define devm_release_mem_region(dev, start, n) \
>> __devm_release_region(dev, &iomem_resource, (start), (n))
>>
>
> What I prefer is remove iomem_resource from the parameter list. Just use is in
> the function body.
>
> For the example you listed, __release_region() would have varies of *parent*,
> which looks reasonable to keep it here.

Yeah I got that ("making iomem_resource implicit"), as I said:

>> I'll send an addon patch for that, ok? - thanks.

--
Thanks,

David / dhildenb