Mercurial > hg > nginx-quic
view src/os/unix/ngx_sunpro_x86.il @ 2111:4300c587db9e stable-0.5
r1901, r1902, r2032 merge:
bugfixes in channel:
*) avoid endless loop if epoll is used
*) use CMSG_LEN(), this fixes an alert
"sendmsg() failed (9: Bad file descriptor)" on some 64-bit platforms
*) read channel until EAGAIN
author | Igor Sysoev <igor@sysoev.ru> |
---|---|
date | Mon, 07 Jul 2008 11:58:55 +0000 |
parents | b766d9c0a2be |
children | 7e02df612521 |
line wrap: on
line source
/ / Copyright (C) Igor Sysoev / / ngx_atomic_uint_t ngx_atomic_cmp_set(ngx_atomic_t *lock, / ngx_atomic_uint_t old, ngx_atomic_uint_t set); / / the arguments are passed on the stack (%esp), 4(%esp), 8(%esp) .inline ngx_atomic_cmp_set,0 movl (%esp), %ecx movl 4(%esp), %eax movl 8(%esp), %edx lock cmpxchgl %edx, (%ecx) setz %al movzbl %al, %eax .end / ngx_atomic_int_t ngx_atomic_fetch_add(ngx_atomic_t *value, / ngx_atomic_int_t add); / / the arguments are passed on the stack (%esp), 4(%esp) .inline ngx_atomic_fetch_add,0 movl (%esp), %ecx movl 4(%esp), %eax lock xaddl %eax, (%ecx) .end / ngx_cpu_pause() .inline ngx_cpu_pause,0 pause .end