Index: kernel/arch/amd64/include/asm.h
===================================================================
--- kernel/arch/amd64/include/asm.h	(revision f74bbaf20e8d8be55495c56affc5b17ef6ea2bf0)
+++ kernel/arch/amd64/include/asm.h	(revision cc85fb9f57fb5f9af22419eb0ee58d9548d3c7d1)
@@ -56,6 +56,13 @@
 }
 
-static inline void cpu_sleep(void) { __asm__ volatile ("hlt\n"); };
-static inline void cpu_halt(void) { __asm__ volatile ("hlt\n"); };
+static inline void cpu_sleep(void)
+{
+	asm volatile ("hlt\n");
+};
+
+static inline void cpu_halt(void)
+{
+	asm volatile ("hlt\n");
+};
 
 
Index: kernel/arch/amd64/src/pm.c
===================================================================
--- kernel/arch/amd64/src/pm.c	(revision f74bbaf20e8d8be55495c56affc5b17ef6ea2bf0)
+++ kernel/arch/amd64/src/pm.c	(revision cc85fb9f57fb5f9af22419eb0ee58d9548d3c7d1)
@@ -243,4 +243,5 @@
 	asm volatile (
 		"int $0x03\n"
+		"cli\n"
 		"hlt\n"
 	);
