[patch 0/8] Basic infrastructure patches for a paravirtualized kernel

Jeremy Fitzhardinge
2006-08-03T00:25:51Z

Hi Andrew,

This series of patches lays the basic ground work for the
paravirtualized kernel patches coming later on. I think this lot is
ready for the rough-and-tumble world of the -mm tree.

The main change from the last posting is that all the page-table
related patches have been moved out, and will be posted separately.

Also, the off-by-one in reserving the top of address space has been
fixed.

For the most part, these patches do nothing or very little. The
patches should be self explanatory, but the overview is:

Helper functions for later use:
2/8: Implement always-locked bit ops...
8/8: Put .note.* sections into a PT_NOTE segment in vmlinux

Cleanups:
1/8: Remove locally-defined ldt structure in favour of standard type
3/8: Allow a kernel to not be in ring 0
5/8: Roll all the cpuid asm into one __cpuid call

Hooks:
4/8: Replace sensitive instructions with macros
6/8: Make __FIXADDR_TOP variable to allow it to make space...
7/8: Add a bootparameter to reserve high linear address...

8/8 "Put .note.* sections into a PT_NOTE segment in vmlinux" is mostly
here to shake out problems early. It slightly changes the way the
vmlinux image is linked together, and it uses the somewhat esoteric
PHDRS command in vmlinux.lds. I want to make sure that this doesn't
provoke any problems in the various binutils people are using.

Thanks,
J