1int owner(); 2int clear(); 3 4static void fixup() { 5 clear(); 6} 7 8inline __attribute__ ((always_inline)) 9void slowtrylock(void) { 10 if (owner()) 11 fixup(); 12} 13 14void fasttrylock(void (*slowfn)()) { 15 slowfn(); 16} 17 18void trylock(void) { 19 fasttrylock(slowtrylock); 20} 21