Prev: [PATCH] drop_monitor: use genl_register_family_with_ops()
Next: vmscan: convert direct reclaim tracepoint to DEFINE_TRACE
From: Cong Wang on 26 Jul 2010 06:10 On 07/25/10 10:54, Eric W. Biederman wrote: > huang ying<huang.ying.caritas(a)gmail.com> writes: > >> On Thu, Jul 22, 2010 at 3:08 PM, Eric W. Biederman >> <ebiederm(a)xmission.com> wrote: >>> Cong Wang<amwang(a)redhat.com> writes: >>> >>>> On 07/22/10 14:28, Eric W. Biederman wrote: >>>>> Amerigo Wang<amwang(a)redhat.com> writes: >>>>> >>>>>> Currently KEXEC_SEGMENT_MAX is only 16 which is too small for machine with >>>>>> many memory ranges. Increase this hard limit to 1024 which is reasonably large, >>>>>> and change ->segment from a static array to a dynamically allocated memory. >>>>> >>>>> ??? >>>>> >>>>> This should be about segments in the executable being loaded. What >>>>> executable has one segment for each range of physical memory? >>>>> >>>>> Not that generalizing this is a bad idea but with a comment that >>>>> seems entirely wrong I am wondering what the problem really is. >>>>> >>>> >>>> Ah, I think Neil should explain this. >>>> >>>> He made a patch which includes many memory ranges, caused kexec >>>> fails to load the kernel. Increasing this limit and the corresponding >>>> one in kexec-tools fixes the problem. His patch is not in upstream >>>> kexec-tools, AFAIK. >>>> >>>> However, even if we don't consider that patch, isn't 16 too small too? >>> >>> Generally you just need one physical hunk for the code, maybe a second >>> for the initrd. >>> >>> It is perfectly fine to raise the number of segments as it doesn't >>> affect the ABI, but it wants a good explanation of what kind of weird >>> application wants to write to all over memory when it is loaded. >> >> kexec can be used to load not only the kernel images, but also more >> complex images such as hibernation image. So I think it is good to >> raise the number of segments. > > Totally reasonable. > > And in all fairness the patch does a good job of raising the limit. > > However if that is the goal 1024 is probably a bit low as I believe > SGI has built machines with that many nodes. Still after the patch > under discussion 1024 was only a limit in a header file so it can > be trivially changed. So, what is a better number? 2048? :) Thanks. -- The opposite of love is not hate, it's indifference. - Elie Wiesel -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo(a)vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/ |