On 07/27/15 at 11:31am, Yinghai Lu wrote: > >> #else > >> static void __init reserve_crashkernel(void) > > No, you can not move the calling position for reserve_crashkernel_low(). > > old sequence: > > memblock_find_in_range for high > memblock_reserve for high > memblock_find_in_range for low > memblock_reserve for low > > now you change to: > memblock_find_in_range for high > memblock_find_in_range for low > memblock_reserve for low > memblock_reserve for high > > during memblock_reserve, we would double the memblock reserve array. > So there is possibility that new membock reserve array is overlapped with > range for crashdump high. > > so you should keep the old sequence, and if reserve_crashkernel_low fail, > just call memblock_free to free high range that is reserved before.
Right, memblock_double_array need avoid the required region. Will repost. > > Thanks > > Yinghai -- 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/

