On 2014/7/29 7:24, Dave Hansen wrote:
> On 07/28/2014 04:12 PM, David Rientjes wrote:
>> I agree, but I'm not sure the suggestion is any better than the patch.  I 
>> think it would be better to just figure out whether anything needs to be 
>> updated in the caller and then call a generic function.
>>
>> So in arch_add_memory(), do
>>
>>      end_pfn = PFN_UP(start + size);
>>      if (end_pfn > max_pfn)
>>              update_end_of_memory_vars(end_pfn);
>>
>> and in arch_remove_memory(),
>>
>>      end_pfn = PFN_UP(start);
>>      if (end_pfn < max_pfn)
>>              update_end_of_memory_vars(end_pfn);
>>
>> and then update_end_of_memory_vars() becomes a three-liner.
> 
> That does look better than my suggestion, generally.
> 
> It is broken in the remove case, though.  In your example, the memory
> being removed is assumed to be coming from the end of memory, and that
> isn't always the case.  I think you need something like:
> 
>       if ((max_pfn >= start_pfn) && (max_pfn < end_pfn)
>               update_end_of_memory_vars(start);
> 
> But, yeah, that's a lot better than new functions.
> 
Thanks for your comments!

I will change according to your suggestions.
> --
> To unsubscribe, send a message with 'unsubscribe linux-mm' in
> the body to [email protected].  For more info on Linux MM,
> see: http://www.linux-mm.org/ .
> Don't email: <a href=mailto:"[email protected]";> [email protected] </a>
> 
> 


--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to