Mercurial > hg > nginx-vendor-1-0
comparison src/os/unix/rfork_thread.S @ 32:da8c190bdaba NGINX_0_1_16
nginx 0.1.16
*) Bugfix: if the response were transferred by chunks, then on the HEAD
request the final chunk was issued.
*) Bugfix: the "Connection: keep-alive" header were issued, even if the
keepalive_timeout directive forbade the keep-alive use.
*) Bugfix: the errors in the ngx_http_fastcgi_module caused the
segmentation faults.
*) Bugfix: the compressed response encrypted by SSL may not transferred
complete.
*) Bugfix: the TCP-specific TCP_NODELAY, TCP_NOPSUH, and TCP_CORK
options, are not used for the unix domain sockets.
*) Feature: the rewrite directive supports the arguments rewriting.
*) Bugfix: the response code 400 was returned for the POST request with
the "Content-Length: 0" header; bug appeared in 0.1.14.
author | Igor Sysoev <http://sysoev.ru> |
---|---|
date | Tue, 25 Jan 2005 00:00:00 +0300 |
parents | f0b350454894 |
children | ad25218fd14b |
comparison
equal
deleted
inserted
replaced
31:1b17dd824438 | 32:da8c190bdaba |
---|---|
1 | 1 |
2 /* | 2 /* |
3 * Copyright (C) Igor Sysoev | 3 * Copyright (C) Igor Sysoev |
4 */ | 4 */ |
5 | |
6 | 5 |
7 | 6 |
8 #include <sys/syscall.h> | 7 #include <sys/syscall.h> |
9 #include <machine/asm.h> | 8 #include <machine/asm.h> |
10 | 9 |
17 ENTRY(rfork_thread) | 16 ENTRY(rfork_thread) |
18 push %ebp | 17 push %ebp |
19 mov %esp, %ebp | 18 mov %esp, %ebp |
20 push %esi | 19 push %esi |
21 | 20 |
22 mov 12(%ebp), %esi # the stack address | 21 mov 12(%ebp), %esi # the thread stack address |
23 | 22 |
24 sub $4, %esi | 23 sub $4, %esi |
25 mov 20(%ebp), %eax # the thread argument | 24 mov 20(%ebp), %eax # the thread argument |
26 mov %eax, (%esi) | 25 mov %eax, (%esi) |
27 | 26 |
28 sub $4, %esi | 27 sub $4, %esi |
29 mov 16(%ebp), %eax # the start thread address | 28 mov 16(%ebp), %eax # the thread start address |
30 mov %eax, (%esi) | 29 mov %eax, (%esi) |
31 | 30 |
32 push 8(%ebp) # rfork(2) flags | 31 push 8(%ebp) # rfork(2) flags |
33 push $0 | 32 push $0 |
34 mov $SYS_rfork, %eax | 33 mov $SYS_rfork, %eax |
39 jne child | 38 jne child |
40 | 39 |
41 parent: | 40 parent: |
42 add $8, %esp | 41 add $8, %esp |
43 pop %esi | 42 pop %esi |
44 mov %ebp, %esp | 43 leave |
45 pop %ebp | |
46 ret | 44 ret |
47 | 45 |
48 child: | 46 child: |
49 mov %esi, %esp | 47 mov %esi, %esp |
50 pop %eax | 48 pop %eax |
57 KERNCALL | 55 KERNCALL |
58 | 56 |
59 error: | 57 error: |
60 add $8, %esp | 58 add $8, %esp |
61 pop %esi | 59 pop %esi |
62 mov %ebp, %esp | 60 leave |
63 pop %ebp | |
64 PIC_PROLOGUE | 61 PIC_PROLOGUE |
65 | 62 |
66 /* libc's cerror: jmp PIC_PLT(HIDENAME(cerror)) */ | 63 /* libc's cerror: jmp PIC_PLT(HIDENAME(cerror)) */ |
67 | 64 |
68 push %eax | 65 push %eax |