On 09/24/2013 10:16 PM, Tejun Heo wrote: > Hello, > > On Tue, Sep 24, 2013 at 10:12:22PM +0800, Zhang Yanfei wrote: >> I see. I think it is rarely to fail. But here is case that it must >> fail in the current bottom-up implementation. For example, we allocate >> memory in reserve_real_mode() by calling this: >> memblock_find_in_range(0, 1<<20, size, PAGE_SIZE); >> >> Both the start and end is below the kernel, so trying bottom-up for >> this must fail. So I am now thinking that if we should take this as >> the special case for bottom-up. That said, if we limit start and end >> both below the kernel, we should allocate memory below the kernel instead >> of make it fail. The cases are also rare, in early boot time, only >> these two: >> >> |->early_reserve_e820_mpc_new() /* allocate memory under 1MB */ >> |->reserve_real_mode() /* allocate memory under 1MB */ >> >> How do you think? > > They need to be special cased regardless, right? It's wrong to print > out warning messages for things which are expected to behave that way. > Just skip bottom-up allocs if @end is under kernel image? > Good idea. Will do this way. -- Thanks. Zhang Yanfei -- 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>