Re: [PATCH v4] mm/memblock: fix overlapping allocation when doubling reserved array

Pearson, Greg
2012-06-19T22:37:36Z

On 06/19/2012 04:14 PM, Andrew Morton wrote:
> On Mon, 18 Jun 2012 17:47:58 -0600
> Greg Pearson <greg.pearson@hp.com> wrote:
>
>> The __alloc_memory_core_early() routine will ask memblock for a range
>> of memory then try to reserve it. If the reserved region array lacks
>> space for the new range, memblock_double_array() is called to allocate
>> more space for the array. If memblock is used to allocate memory for
>> the new array it can end up using a range that overlaps with the range
>> originally allocated in __alloc_memory_core_early(), leading to possible
>> data corruption.
> OK, but we have no information about whether it *does* lead to data
> corruption. Are there workloads which trigger this? End users who are
> experiencing problems?
>
> See, I (and others) need to work out whether this patch should be
> included in 3.5 or even earlier kernels. To do that we often need the
> developer to tell us what the impact of the bug is upon users. Please
> always include this info when fixing bugs.

Andrew,

I'm currently working on a prototype system that exhibits the data
corruption problem when doubling the reserved array while booting the
system. This system will be a released product in the future. I'll
remember to include this information in the patch next time.

Thanks

--
Greg