On 2015/6/5 0:57, Luck, Tony wrote: > +#ifdef CONFIG_MEMORY_MIRROR > +struct numa_mirror_info { > + int node; > + unsigned long start; > + unsigned long size; > +}; > + > +struct mirror_info { > + int count; > + struct numa_mirror_info info[MAX_NUMNODES]; > +}; > > Do we really need this? My patch series leaves all the mirrored memory in > the memblock allocator tagged with the MEMBLOCK_MIRROR flag. Can't > we use that information when freeing the boot memory into the runtime > free lists? > Hi Tony, I used this code for testing before, so when your patchset added to mainline, I'll rewrite it, use MEMBLOCK_MIRROR, not mirror_info. I find Andrew has added your patches to mm-tree, right? Thanks, Xishi Qiu > If we can't ... then [MAX_NUMNODES] may not be enough. We may have > more than one mirrored range on each node. Current h/w allows two ranges > per node. > > -Tony > > . > -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@xxxxxxxxx. For more info on Linux MM, see: http://www.linux-mm.org/ . Don't email: <a href=mailto:"dont@xxxxxxxxx"> email@xxxxxxxxx </a>