Ingo Molnar wrote:
* Yinghai Lu <yinghai@xxxxxxxxxx> wrote:
+ new_addr = memblock_alloc(new_log_buf_len, PAGE_SIZE);
+ if (new_addr != MEMBLOCK_ERROR)
+ new_log_buf = __va(new_addr);
+ else
+ new_log_buf = alloc_bootmem(new_log_buf_len);
alloc_bootmem() can fail, especially if someone uses a too large boot parameter
value - and your code does not check for failure.
alloc_bootmem does panic when it can't allocate memory.
Ingo, we have a "uvconfig" script that sets up the boot parameters (there
are many that are needed to be very specific). It sets up the log_buf_len
to be 8M. We will never overflow memory with that.
And if someone is stupid enough to try and allocate a log buffer that
consumes more memory than they have, then they have a different kind of
problem.
Thanks,
Ingo
--
To unsubscribe from this list: send the line "unsubscribe linux-acpi" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html