Subversion Repositories Kolibri OS

Compare Revisions

Regard whitespace Rev 9850 → Rev 9869

/kernel/trunk/posix/futex.inc
185,28 → 185,31
lea esi, [ebp + FUTEX.wait_list]
 
list_add_tail esp, esi ;esp= new waiter, esi= list head
 
sti
.again_timeout:
call change_task
mov eax, [ebx + APPDATA.wait_param]
test eax, eax
jz .timeout
 
DEBUGF 1, "FUTEX no timeout [ecx]=%x edx=%x\n", [ecx], edx
mov eax, edx
lock cmpxchg [ecx], edx
jz .again_timeout
@@:
cli
list_del esp
sti
add esp, sizeof.MUTEX_WAITER
 
popfd
mov [esp + SYSCALL_STACK.eax], 0
ret
 
.timeout:
cli
list_del esp
sti
add esp, sizeof.MUTEX_WAITER
 
DEBUGF 1, "FUTEX timeout\n"
popfd
mov [esp + SYSCALL_STACK.eax], -1
ret