// === IMPRORTS ===
#if TRACE_LOCKS
extern struct sShortSpinlock glDebug_Lock;
+extern struct sShortSpinlock glThreadListLock;
#endif
extern int GetCPUNum(void);
}
#endif
+ #if TRACE_LOCKS
+ if( Lock != &glDebug_Lock && Lock != &glThreadListLock )
+ {
+ //Log_Log("LOCK", "%p locked by %p", Lock, __builtin_return_address(0));
+ Debug("%p obtaining %p (Called by %p)", __builtin_return_address(0), Lock, __builtin_return_address(1));
+ }
+ #endif
+
// Wait for another CPU to release
while(v) {
// CMPXCHG:
#endif
#if TRACE_LOCKS
- if( Lock != &glDebug_Lock )
+ if( Lock != &glDebug_Lock && Lock != &glThreadListLock )
{
//Log_Log("LOCK", "%p locked by %p", Lock, __builtin_return_address(0));
- LogF("Lock %p locked by %p\n", Lock, __builtin_return_address(0));
+ //Debug("Lock %p locked by %p\t%p", Lock, __builtin_return_address(0), __builtin_return_address(1));
+ Debug("got it");
}
#endif
}
#endif
#if TRACE_LOCKS
- if( Lock != &glDebug_Lock )
+ if( Lock != &glDebug_Lock && Lock != &glThreadListLock )
{
//Log_Log("LOCK", "%p released by %p", Lock, __builtin_return_address(0));
- LogF("Lock %p released by %p\n", Lock, __builtin_return_address(0));
+ Debug("Lock %p released by %p\t%p", Lock, __builtin_return_address(0), __builtin_return_address(1));
}
#endif
outb(GDB_SERIAL_PORT + 3, 0x03); // 8 bits, no parity, one stop bit (8N1)
outb(GDB_SERIAL_PORT + 2, 0xC7); // Enable FIFO with 14-byte threshold and clear it
outb(GDB_SERIAL_PORT + 4, 0x0B); // IRQs enabled, RTS/DSR set
- gbDebug_SerialSetup = 1;
+ gbGDB_SerialSetup = 1;
}
while( (inb(GDB_SERIAL_PORT + 5) & 0x20) == 0 );
outb(GDB_SERIAL_PORT, ch);
outb(GDB_SERIAL_PORT + 3, 0x03); // 8 bits, no parity, one stop bit
outb(GDB_SERIAL_PORT + 2, 0xC7); // Enable FIFO with 14-byte threshold and clear it
outb(GDB_SERIAL_PORT + 4, 0x0B); // IRQs enabled, RTS/DSR set
- gbDebug_SerialSetup = 1;
+ gbGDB_SerialSetup = 1;
}
while( (inb(GDB_SERIAL_PORT + 5) & 1) == 0) ;
return inb(GDB_SERIAL_PORT);