Kernel/x86 - Structure for watchpoints (not used)
[tpg/acess2.git] / KernelLand / Kernel / arch / x86 / include / arch.h
index 8a98705..feb25f4 100644 (file)
@@ -45,6 +45,7 @@ struct sShortSpinlock {
        #if LOCK_DISABLE_INTS
         int    IF;     //!< Interrupt state on call to SHORTLOCK
        #endif
+       void    *LockedBy;
 };
 
 // === MACROS ===
@@ -65,6 +66,10 @@ struct sShortSpinlock {
  * \brief Fire a magic breakpoint (bochs)
  */
 #define        MAGIC_BREAK()   __asm__ __volatile__ ("xchg %bx, %bx")
+// TODO: SMP halt request too
+#define HALT_CPU()     for(;;) { __asm__ __volatile__ ("cli; hlt"); }
+
+#define ASM(v...)      __asm__ __volatile__ (v)
 
 // === TYPES ===
 typedef unsigned int   Uint;   // Unsigned machine native integer
@@ -77,7 +82,6 @@ typedef signed char           Sint8;
 typedef signed short   Sint16;
 typedef signed long            Sint32;
 typedef signed long long       Sint64;
-typedef Uint   size_t;
 typedef char   BOOL;
 
 typedef Uint32 tPAddr;

UCC git Repository :: git.ucc.asn.au