comparison src/core/ngx_cpuinfo.c @ 364:a39aab45a53f NGINX_0_6_26

nginx 0.6.26 *) Bugfix: the "proxy_store" and "fastcgi_store" directives did not check a response length. *) Bugfix: a segmentation fault occurred in worker process, if big value was used in a "expires" directive. Thanks to Joaquin Cuenca Abela. *) Bugfix: nginx incorrectly detected cache line size on Pentium 4. Thanks to Gena Makhomed. *) Bugfix: in proxied or FastCGI subrequests a client original method was used instead of the GET method. *) Bugfix: socket leak in HTTPS mode if deferred accept was used. Thanks to Ben Maurer. *) Bugfix: nginx issued the bogus error message "SSL_shutdown() failed (SSL: )"; bug appeared in 0.6.23. *) Bugfix: in HTTPS mode requests might fail with the "bad write retry" error; bug appeared in 0.6.23.
author Igor Sysoev <http://sysoev.ru>
date Mon, 11 Feb 2008 00:00:00 +0300
parents d2ae1c9f1fd3
children 56baf312c1b5
comparison
equal deleted inserted replaced
363:6999caedb665 364:a39aab45a53f
90 90
91 ngx_cpuid(1, cpu); 91 ngx_cpuid(1, cpu);
92 92
93 if (ngx_strcmp(vendor, "GenuineIntel") == 0) { 93 if (ngx_strcmp(vendor, "GenuineIntel") == 0) {
94 94
95 switch (cpu[0] & 0xf00) { 95 switch ((cpu[0] & 0xf00) >> 8) {
96 96
97 /* Pentium */ 97 /* Pentium */
98 case 5: 98 case 5:
99 ngx_cacheline_size = 32;
100 break;
101
99 /* Pentium Pro, II, III */ 102 /* Pentium Pro, II, III */
100 case 6: 103 case 6:
101 ngx_cacheline_size = 32; 104 ngx_cacheline_size = 32;
105
106 if ((cpu[0] & 0xf0) >= 0xd0) {
107 /* Intel Core */
108 ngx_cacheline_size = 64;
109 }
110
102 break; 111 break;
103 112
104 /* 113 /*
105 * Pentium 4, although its cache line size is 64 bytes, 114 * Pentium 4, although its cache line size is 64 bytes,
106 * it prefetches up to two cache lines during memory read 115 * it prefetches up to two cache lines during memory read