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,
>>> 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
>> 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.
David / dhildenb