<html xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:m="http://schemas.microsoft.com/office/2004/12/omml" xmlns="http://www.w3.org/TR/REC-html40">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<meta name="Generator" content="Microsoft Word 15 (filtered medium)">
<!--[if !mso]><style>v\:* {behavior:url(#default#VML);}
o\:* {behavior:url(#default#VML);}
w\:* {behavior:url(#default#VML);}
.shape {behavior:url(#default#VML);}
</style><![endif]--><style><!--
/* Font Definitions */
@font-face
        {font-family:宋体;
        panose-1:2 1 6 0 3 1 1 1 1 1;}
@font-face
        {font-family:"Cambria Math";
        panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
        {font-family:Calibri;
        panose-1:2 15 5 2 2 2 4 3 2 4;}
@font-face
        {font-family:华文细黑;
        panose-1:2 1 6 0 4 1 1 1 1 1;}
@font-face
        {font-family:"\@宋体";
        panose-1:2 1 6 0 3 1 1 1 1 1;}
@font-face
        {font-family:"\@华文细黑";
        panose-1:2 1 6 0 4 1 1 1 1 1;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0cm;
        margin-bottom:.0001pt;
        text-align:justify;
        text-justify:inter-ideograph;
        font-size:10.5pt;
        font-family:"Calibri",sans-serif;}
a:link, span.MsoHyperlink
        {mso-style-priority:99;
        color:#0563C1;
        text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
        {mso-style-priority:99;
        color:#954F72;
        text-decoration:underline;}
span.EmailStyle17
        {mso-style-type:personal-compose;
        font-family:"Calibri",sans-serif;
        color:windowtext;}
.MsoChpDefault
        {mso-style-type:export-only;
        font-family:"Calibri",sans-serif;}
/* Page Definitions */
@page WordSection1
        {size:612.0pt 792.0pt;
        margin:72.0pt 90.0pt 72.0pt 90.0pt;}
div.WordSection1
        {page:WordSection1;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1" />
</o:shapelayout></xml><![endif]-->
</head>
<body lang="ZH-CN" link="#0563C1" vlink="#954F72" style="text-justify-trim:punctuation">
<div class="WordSection1">
<p class="MsoNormal"><span lang="EN-US"># HG changeset patch</span><span lang="EN-US"><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"># User Rui Sun <<a href="mailto:sunrui26@huawei.com">sunrui26@huawei.com</a>><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"># Date 1572848389 -28800<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">#      Mon Nov 04 14:19:49 2019 +0800<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"># Branch local<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"># Node ID a5ae6e9e99f747fcb45082bac8795622938184f1<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"># Parent  89adf49fe76ada86d84e2af8f5cee9ca8c3dca19<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">Optimal performance when use http non-persistent connection<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">diff -r 89adf49fe76a -r a5ae6e9e99f7 src/core/ngx_cycle.c<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">--- a/src/core/ngx_cycle.c        Mon Oct 21 20:22:30 2019 +0300<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">+++ b/src/core/ngx_cycle.c     Mon Nov 04 14:19:49 2019 +0800<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">@@ -35,6 +35,40 @@<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">/* STUB */<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"> <o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">+void<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">+ngx_change_pid_core(ngx_cycle_t *cycle)<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">+{<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">+    ngx_pid_t           setpid;<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">+    ngx_cpuset_t        *setaffinity=NULL;   
<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">+    setpid = ngx_getpid();    <o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">+    {<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">+#if (NGX_HAVE_CPU_AFFINITY)<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">+        ngx_core_conf_t  *ccf;<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">+<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">+        ccf = (ngx_core_conf_t *) ngx_get_conf(cycle->conf_ctx, ngx_core_module);<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">+<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">+        if (ccf->cpu_affinity == NULL) {<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">+            setaffinity = NULL;<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">+        }<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">+<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">+        if (ccf->cpu_affinity_auto) {<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">+           setaffinity = NULL;<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">+        }<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">+        <o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">+        setaffinity = &ccf->cpu_affinity[0];<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">+<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">+#else<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">+<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">+        setaffinity = NULL;<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">+<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">+#endif<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">+    }<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">+<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">+    if (setaffinity)<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">+           // set new mask <o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">+        sched_setaffinity(setpid, sizeof(ngx_cpuset_t), setaffinity);<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">+}<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">+<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">ngx_cycle_t *<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">ngx_init_cycle(ngx_cycle_t *old_cycle)<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">{<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">@@ -278,6 +312,8 @@<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">         return NULL;<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">     }<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">+    ngx_change_pid_core(cycle);<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">+<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">     if (ngx_test_config && !ngx_quiet_mode) {<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">         ngx_log_stderr(0, "the configuration file %s syntax is ok",<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">                        cycle->conf_file.data);<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"><o:p> </o:p></span></p>
<p class="MsoNormal" align="left" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;text-align:left;line-height:17.25pt">
<span style="font-size:12.0pt;font-family:宋体">华为技术有限公司<span lang="EN-US"> Huawei Technologies Co., Ltd.<br>
</span></span><span lang="EN-US" style="font-size:12.0pt;font-family:宋体"><img border="0" width="102" height="32" id="_x0000_i1026" src="file:///C:\Users\z00228467\AppData\Roaming\Microsoft\Signatures\company_logo.jpg" alt="Company_logo"></span><span lang="EN-US" style="font-size:12.0pt;font-family:宋体"><br>
<br>
<o:p></o:p></span></p>
<div class="MsoNormal" align="center" style="text-align:center"><span lang="EN-US" style="font-size:12.0pt;font-family:宋体">
<hr size="2" width="100%" align="center">
</span></div>
<p class="MsoNormal"><span style="font-size:7.5pt;font-family:华文细黑;color:gray">本邮件及其附件含有华为公司的保密信息,仅限于发送给上面地址中列出的个人或群组。禁<span lang="EN-US"><br>
</span>止任何其他人以任何形式使用(包括但不限于全部或部分地泄露、复制、或散发)本邮件中<span lang="EN-US"><br>
</span>的信息。如果您错收了本邮件,请您立即电话或邮件通知发件人并删除本邮件!<span lang="EN-US"><br>
</span></span><span lang="EN-US" style="font-size:7.5pt;font-family:"Arial",sans-serif;color:gray">This e-mail and its attachments contain confidential information from HUAWEI, which
<br>
is intended only for the person or entity whose address is listed above. Any use of the
<br>
information contained herein in any way (including, but not limited to, total or partial
<br>
disclosure, reproduction, or dissemination) by persons other than the intended <br>
recipient(s) is prohibited. If you receive this e-mail in error, please notify the sender by
<br>
phone or email immediately and delete it!</span><span lang="EN-US"><o:p></o:p></span></p>
</div>
</body>
</html>