Two X86 fixes:

 - Move the command line preparation and the early command line parsing
   earlier so that the command line parameters which affect
   early_reserve_memory(), e.g. efi=nosftreserve, are taken into
   account. This was broken when the invocation of early_reserve_memory()
   was moved recently.

 - Use an atomic type for the SGX page accounting, which is read and
   written lockless, to plug various race conditions related to it.