Commit 0f6ce597 authored by Committed by Vikram Narayanan
Switched to a kmem cache for allocating lcd_arch's.
Was getting bad load/store msr addresses for vm exits. Properly detected by the lcd_arch_check code. In struct lcd_arch, the msr_autoload fields were not word aligned in some instances (see requirement in Intel SDM V3 22.214.171.124). Even with compiler align attributes, if we use kmalloc, proper alignment is not guaranteed - we can allocate a struct lcd_arch on the wrong byte and it throws off the alignment of the entire struct. kmem cache allows specifying alignment. Appears to be working correctly.
Showing with 22 additions and 4 deletions