Messages in this thread | | | From | (Eric W. Biederman) | Subject | Re: [PATCH 10/28] i386: map enough initial memory to create lowmem mappings | Date | Mon, 23 Apr 2007 11:31:40 -0600 |
| |
Jeremy Fitzhardinge <jeremy@goop.org> writes:
> H. Peter Anvin wrote: >> Since we allocate the maximum possible memory statically, I fail to >> see how holes could make the situation any worse, or better. > > No, we map enough space to map 4G (~4 pages), but we don't actually map > 4G. If a hole happened to start within that 4 page mapping, then the > memory still wouldn't be available for allocation. > > I think this is a bit of a spurious argument though, since if it were > really a problem we'd have to worry about holes hitting the kernel image > too. As far as I can see, that's not considered to be a problem.
- holes hitting the kernel image is not something we can do anything about.
- I have always believed we need to export enough information so the bootloader can verify that we don't hit a hole in the initial kernel image.
- I know of one system that had BIOS tables at 16MB I believe (and thus had a fairly low hole).
- Given that we are actually increasing (not decreasing) the number of scenarios where we boot the kernel it probably makes sense to be as robust as we can.
- If we support putting the ramdisk immediately after the kernel image in memory we will actually hit this case in practice.
> I think the real point is that there's currently a subtle dependency > between head.S and bootmem allocation which happens between start_kernel > and pagetable_init. Your patch preventing over-mapping should make them > easier to smoke out as it currently stands, but eliminating the problem > by making alloc_bootmem create the mappings for itself does have > appeal. There would still be the dependency on head.S to map the kernel > itself and the bootmem allocator bitmap.
Agreed. However that is essentially all statically allocated memory and the best we can do at this point in time.
Eric - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |