On Tue, Apr 02, 2013 at 09:50:01AM -0400, Vivek Goyal wrote: [..] > To achieve the behavior where we want to enforce that memory either > comes from low or high area only otherwise allocation fails, we could > probably use. > > crashkernel=X,high_only > crashkernel=X,low_only
Thinking more about it. We have following existing syntax. crashkernel=range1:size1[,range2:size2,...][@offset] Which uses ',' as delimiter for range:size pairs. May be we can use a different delimiter, say ';'. crashkernel=<amount_of_memory_to_reserve>;<option1>;<option2> All the existing crashkernel= options should fall into the category of <amount_of_memory_to_reserve>. option1 could specify whether to search for memory from higher addresses or from lower addresses. (valid values are high or low) option2 could specify the range of memory search should be performed in. syntax to specify range could be XM:[YM]. So one could possibly specify. 4G-8G <4G >4G:<8G >8G Now crashkernel_low=0 could be emulated by crashkernel=0M;;<4G If we want to reserve 128MB of memory between 4G and 8G and starting scan from high, we could say. crashkernel=128M;high;>4G:<8G If this is deemed too generic and not worth it. Then we could simplify option 2 to take values "high_only" and "low_only" and that leaves the scope of implementing proper ranges down the line if need be. So crashkernel_low=0 will be emulated by. crashkernel=0M;;low_only Thanks Vivek -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/