- asm volatile ("movq %%cr0, %0" : "=r" (saved_context.cr0));
- asm volatile ("movq %%cr2, %0" : "=r" (saved_context.cr2));
- asm volatile ("movq %%cr3, %0" : "=r" (saved_context.cr3));
- asm volatile ("movq %%cr4, %0" : "=r" (saved_context.cr4));
+ asm volatile ("movq %%cr0, %0" : "=r" (ctxt->cr0));
+ asm volatile ("movq %%cr2, %0" : "=r" (ctxt->cr2));
+ asm volatile ("movq %%cr3, %0" : "=r" (ctxt->cr3));
+ asm volatile ("movq %%cr4, %0" : "=r" (ctxt->cr4));
+}
+
+void save_processor_state(void)
+{
+ __save_processor_state(&saved_context);