From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1034796AbcIZVz3 (ORCPT ); Mon, 26 Sep 2016 17:55:29 -0400 Received: from mail-by2nam03on0108.outbound.protection.outlook.com ([104.47.42.108]:7125 "EHLO NAM03-BY2-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S966157AbcIZVzZ (ORCPT ); Mon, 26 Sep 2016 17:55:25 -0400 Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=waiman.long@hpe.com; Message-ID: <57E9915B.5000307@hpe.com> Date: Mon, 26 Sep 2016 17:21:31 -0400 From: Waiman Long User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:10.0.12) Gecko/20130109 Thunderbird/10.0.12 MIME-Version: 1.0 To: Oleg Nesterov CC: Andrew Morton , Ingo Molnar , Thomas Gleixner , Stas Sergeev , , Scott J Norton , Douglas Hatch Subject: Re: [PATCH] signals: Avoid unnecessary taking of sighand->siglock References: <1474568705-40114-1-git-send-email-Waiman.Long@hpe.com> <20160923093241.GA13792@redhat.com> In-Reply-To: <20160923093241.GA13792@redhat.com> Content-Type: text/plain; charset="ISO-8859-1"; format=flowed Content-Transfer-Encoding: 7bit X-Originating-IP: [71.168.64.185] X-ClientProxiedBy: BY2PR1001CA0001.namprd10.prod.outlook.com (10.164.163.139) To AT5PR84MB0305.NAMPRD84.PROD.OUTLOOK.COM (10.162.138.27) X-MS-Office365-Filtering-Correlation-Id: c2fac278-4176-464a-b60b-08d3e65319e8 X-Microsoft-Exchange-Diagnostics: 1;AT5PR84MB0305;2:AnKjxgFxfJhvq7H1ypRK7CrZXY0uPfpEjIm/2p0MpDUkG5PIVQwXsxOITUKyHPZkbhvRr6oCV6IrqcdWbwv9IGPyObx4DaWsbN37oq4DApTj8Pc8R0YaRICB31O6j81I7ngXvbFTJ3SjwGYTIvDJvmprN4wCTEsMq48bQuLgzbWq6MzeUmaJZ+P2ioqrtG/R;3:hmNt13ZePA84IUAoZMewb7GkXqAz5t22AUooNHTZ8S+5Aa/uRSR1MqCeUFJfqPNeyYoLHCRHlCibujmsX38ZEQjFQX/X78YwIats9SdMpPbkxnzzT+0JY9HjYOCF3MhF X-Microsoft-Antispam: UriScan:;BCL:0;PCL:0;RULEID:;SRVR:AT5PR84MB0305; X-Microsoft-Exchange-Diagnostics: 1;AT5PR84MB0305;25:WhEr8mbbLu7gnX94quvCyFGsT1XGyclfSLL+gqL2OHyMdL3JZ8qOcN6ktqQDm8qmoDLG2GnUfHI0hL6PkA0sMadZhIcK5FHXsF2EyXuKM2kKx7278TT3X+0d3HJi5G2+1eIm2c7Hqhq2/XE2uMv72hL6nNFmWDy7tyBGp2iIi6qka6aGzVDzd7J5deP7FSyHDiphXqxAhlXOGL4PAUbsKM88jk6TfTXLHKMfT5OXY1lM4IKuWs6hZzbpTq+zF7IWcZkULVlvIOivuG8c8uvWAU3XPT5vh1L2JjcSA245iwxuPKGc1MQ83zA83lQaoFDCQ/jakZQcoBVNsqqMTxMe85Qh47W/iC41Q9SpSr8gM6ICDe8kfSpVfCzSlJSRRd5dPdfniPh26V2NXRIN4mY3nH36z0o3D1eETUvgkoQQb44NqEtWQw6eW4G+vF7kKpoQuVD8bhy3OHkQxmw9c4dfwncIoAvhTmE9qOWTArFpsO2UPvXZsXiKQ6jwCV5y/3eMe/oSgcKuole1ysuTLMwE9+m4axnBVgIGt0t0i2LzNLlXrFpyfBPMmpihE3qCIAIfCm9fLwOgfbaFuP2oY4z5kz8dkLPVtEYQqlcXweyIIbdFg3JEsf146/5pXuaC/i4d/J38z1324/fXlWAOb2lai/26HfKvvDt8FGSWj3v5x5ZqJTDU+fSOVTMV8m0i1stAHBV+gK29Ugh/3i5BlJaMDQx9m3a6KIbA2RyGf+SAAqE= X-Microsoft-Exchange-Diagnostics: 1;AT5PR84MB0305;31:m6ccaRZjQmvh9wvYCuppDPjmUfVLMT26io1l3WU6Go5OjGEPGQeaUXryzJmkaUpDvDIK97SqQ2vu0zwCrWFfTodJYkUxM+drjDKwkNSVAl1uyojtkQGhW2TLgpYY2xUYwWkx0NmyoYd5ax7LgkmikoAMo97lwzP1w4Kb7QrTpJi9OlxCziJYW4FRoOarfqz+TkyjgjBxRwLlWCTdWRUYVq0Kk7gc+U2FL0PNK83X0ZQ=;20:nNLXGOmKGJvMxU9GjwclokUO1AZDgW8F7cL7Gww6N2jwtpKUYWXHaG3r9q4+RoLRjDoX4KWh+efRSDjXXKF3Qz6/oIbnfOOwIZ7cTdGUOa8FRy4qwzZHC15mUYbNxrSIwr8x7wOzM9Vj5LdSMMcAgJj8YzCCiVlImviq28/l/hA4UVpE7CKd8Gy4gXDoMC58oeaCrrgN0kpmGMKflDdVex8agtj6sMxTrHLXnFtEy0gZiHysf21rIugsLSEnkg71hXaX24yqNvnwQvqUG2Ca870LkZY4AQOFMQykREeYfDV8WB5jrbz6zGTeHNRU/z94mx5Sp8fO0kHaGgyoXuWePTW4ai48fDUbmdiHjOcWi3/aX8UA7t3JpPCg+UWumD0owHZR6N6ZPFsr0UoETicyeDusroEeubtyOJcN0zBuI93NXlRLBB/UBvPC17+Lfars2XfkjJ3QnnID4Akk8YFl5EcdJNwZb3Kh9GeJCFYM3QhfAN7qsHN4QtOPaqbsZpyy X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:; X-Exchange-Antispam-Report-CFA-Test: BCL:0;PCL:0;RULEID:(6040176)(601004)(2401047)(5005006)(8121501046)(10201501046)(3002001)(6055026);SRVR:AT5PR84MB0305;BCL:0;PCL:0;RULEID:;SRVR:AT5PR84MB0305; X-Microsoft-Exchange-Diagnostics: 1;AT5PR84MB0305;4:akkb+yCUp4YZELYRA+WvuNeWJeRW40uJoWhTnEMxnTBsOAe50YWQ5W77drpkpK4iK3jwBl4iP0G203E4g6ZNIqMG3lJnjgVylKBiFMQ3Jut0B1wR0FLUhTldIjlEeZIBYTvRc4YSCZfSE6IaRX7xosBvjwtZDMChw048cvW95J1o/mbNIwIxnSQjlQ/HQiMKCjL9O71ZQ1Y/upP6755Zy8lvuAD3rzPt1Uszxhra0vQl1nCzRJ132y/hmOuK14PjMjCBfjzUQWwSQnRu2TJ63Bq62Z7GBZe9anBnfYjdjRjCq+4rwFF0hgL0VDGvsYsUFluVGuvR7wyjWvM2MHL+srUzBNTUDuqOCKqQTkV8cQOIe6djFmR734Fo8WhPBFV/DQ3RfJZ0uNlfz4gk6lpbQw== X-Forefront-PRVS: 00770C4423 X-Forefront-Antispam-Report: SFV:NSPM;SFS:(10019020)(4630300001)(979002)(6049001)(6009001)(7916002)(24454002)(189002)(377454003)(199003)(51914003)(8676002)(6916009)(97736004)(2950100002)(19580395003)(7736002)(7846002)(2906002)(50466002)(4326007)(81166006)(81156014)(5660300001)(305945005)(92566002)(110136003)(4001350100001)(77096005)(83506001)(80316001)(86362001)(586003)(50986999)(54356999)(76176999)(65816999)(87266999)(105586002)(68736007)(3846002)(117156001)(65806001)(36756003)(101416001)(65956001)(66066001)(47776003)(230700001)(59896002)(189998001)(6116002)(33656002)(64126003)(106356001)(42186005)(23756003)(969003)(989001)(999001)(1009001)(1019001);DIR:OUT;SFP:1102;SCL:1;SRVR:AT5PR84MB0305;H:[192.168.142.133];FPR:;SPF:None;PTR:InfoNoRecords;MX:1;A:1;LANG:en; X-Microsoft-Exchange-Diagnostics: =?iso-8859-1?Q?1;AT5PR84MB0305;23:xKlGqFoGjzvvV1PTpZ1yfvAvv5pWapfv+n0QDVL?= =?iso-8859-1?Q?yFx2JU1886LTplAy04Gz1W0X20CcuLE6BV259orM/lj8IDfDkjRfv74uPO?= =?iso-8859-1?Q?CbfQucnnxdtQVrL9elbZcyTtWMjplruFpJt1WMa4GCXdaIGCdLLSDLUQAs?= =?iso-8859-1?Q?nBOo/BIG1mmeJfHm1AjMcQSCDZgRd+qZNDnGEhzmj8B6Q3E18/vDM6dRlY?= =?iso-8859-1?Q?j0ftqv5VHOemytHeR13MtcNf1LaRmZZcNd+d2OxugUG0wsXudASgAwxDZ+?= =?iso-8859-1?Q?JYnLF/iSMjBW/nWI0sNur9aV+5YM2YPnQsHSj3o7rSReOBECbJwpeLrJDE?= =?iso-8859-1?Q?zAeB4R3UxBhTu8zZgDjI3arEmJ+uMq2V5tQAIeCa4XO+XeWtOKtXGIX9gk?= =?iso-8859-1?Q?N82uF6NyBHOaf/PumAcxMOyuQmqHYM2uQZKQt7qI/IHojPQ8WsjMs+Febd?= =?iso-8859-1?Q?xZdP8hIbazsVc2ainmcS0moNExuQtc/Kt7JdqhcYfXoMD3ESXkMPLejTQ7?= =?iso-8859-1?Q?ZE9JGgpXoGWedYXJ2GfZlyT57PpC4A8jlglko/8eJehrc7THoaSCqMoaGC?= =?iso-8859-1?Q?CP+yFVcsqZGB2gidYZnVJe6vGReTinYSt9ilScMMCma7IKgZDELXKjXw4w?= =?iso-8859-1?Q?B1jcKBzSIL3ZrsFoyp4tI/9kfDOQ2q++RcrgKWtOHO7Ni4J2ULb35ovnxx?= =?iso-8859-1?Q?t2xIBdPdGoKhHj6lk561B7lvzZRtJNZ01w0jAYdodXyujJnX/5luRH3y9J?= =?iso-8859-1?Q?LI78CU/Zh4RUTB9X3wQP6tyMidDaGGEjBVKcJsqLS0glShyAsfD+8tmZNt?= =?iso-8859-1?Q?6utkukNWsYrdHYcKSk1FrQS+ALYRP5ksNmD9zaEoIhpM512HmzlU8bAQUT?= =?iso-8859-1?Q?fzBexK1EZGC3AZOzRw5JoPqSgWsNpb08apg+pBRHcR2R+KEziBAR0YAMKv?= =?iso-8859-1?Q?rhx1OeRZ7uMf0uonOJnn0fC+Pu/bFwwvBqANLJ13VTGAkPCaJ7/WgeIPc1?= =?iso-8859-1?Q?5JuJUTBa6pGosvwZAnGC/xj9JkWuxhVCG7KbZzgaHTSFs2Wy1/H5a4J6SR?= =?iso-8859-1?Q?KZ9lZ+HyLwqZct4SnBY0ko5KtUZdHWC7A6L2QCGSiQibbKvqxIQllNqOCv?= =?iso-8859-1?Q?HCyNtOAa6hIk8VUg1t/f8Rszfeb294hl2Pqw1aPrfcqAnDU1dwhsUWcRn4?= =?iso-8859-1?Q?gGsWpVi/HIbNmSAP60mApU5dfz7wxQBCg912KOKmBmr6c3OAC/arXYYm6+?= =?iso-8859-1?Q?HDWX+/onLyNl3bjfhoXDA35dJuoNRe5xiGESArS41Uiy2jreQS5g/T3H4u?= =?iso-8859-1?Q?ranu3MohBnjcg2m4OL+UU+jFqChgGXbFwuVlOyk3BUAwAY6m4rouWydAvc?= =?iso-8859-1?Q?+z62HWNXPaBwB3Tczbo0Xxr6JbHrnsVHvjhm4lQrUgZm9YZ6BamP8oj7zJ?= =?iso-8859-1?Q?skpI+y/GcOls9rEwPHTlR+r5b5lbgOrfIsbqbNWUHSwyOFro6SpAbsT22L?= =?iso-8859-1?Q?UWq+DoBzNFC5sUvOpk4o=3D?= X-Microsoft-Exchange-Diagnostics: 1;AT5PR84MB0305;6:poPVa0i6ZkKc0qw4aEtnBb/fjQlI9A8I7gNBbTHixcQoMQccW2TAND6nGsTsCrIPhRUx7PtQmNNiwBidqc+HLC10qZjTs8DAPdElxcU3tVoJTc+vPoabC7RJfnVagkZCF7HHepMxwWafqlt5/X0a6HCD9en2mCfuspnDCJQI0idRQ7YoILnV3YtFxgmxC5To4kFlTTI8DY4qvI4QjFBuHG9GFjtsmHTguxyhlfZgLNeEcVAHaJ4tJuXF0XvGbs6gqAS9TgA5ofORvpK0ug9UijBftc3O8HcJJao7k/yojZ1/JQWx5uFzc+liuKVTZM8bO3I1Nrx7rquqMgaryCVafQ==;5:xBHQkdSazYr7HzFulPUR7gvn7dQ9Z10apB1IyjuPENHS0SdBb+kkJukMkSLFzvXLT2E82oerzxkLU7jPB7HErHszdIvXMUPuK43+N2mF+fwIZ3SuophbSWcLDx+Q1BEheeOK67ymSuVbpVajoRE9Vg==;24:J4qZOArauo4qEwZ3V5OfpGend3PO50ikp8LupNsX1IXxSI9bx3CUX2L3j04oWCjULXHLJnqG9LLNdWdpjv28wNyshF9DrRuY8bvBaVdaCQg=;7:eNWfnLUzrp6JyYtxJ1xieszsNm706VpukVYHZDiALx888A+9gFsrXmyKKiKTv8zc5B5lBt008pPvh6Ai2k6G+oPkPk21UaLdFtpMp1prm54oZSdtwYv3JVCDNUYZ3ZWn4sOAY6sLkJv9ToO2C+/+qrRV1q+VtcDm5m1knrn6u5JQB3cgVDNjIhmg3PWYeZtarjae9AtNRRp6LAnYk8tAcCjMS30hIOOok1y1j+M6K0N57iTv6sTH8/dHE1qvAGlJ8jLD+30mgyO2YlTLlVb3aD1LqcETCO08HeDtoEcNlqheznwiEBEtc6nH6tgsWYvf SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-OriginatorOrg: hpe.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 26 Sep 2016 21:21:36.5173 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-Transport-CrossTenantHeadersStamped: AT5PR84MB0305 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 09/23/2016 05:32 AM, Oleg Nesterov wrote: > On 09/22, Waiman Long wrote: >> This patch is currently only active for 64-bit architectures. > Why? > >> --- a/kernel/signal.c >> +++ b/kernel/signal.c >> @@ -2485,6 +2485,16 @@ void __set_current_blocked(const sigset_t *newset) >> { >> struct task_struct *tsk = current; >> >> + /* >> + * In case the signal mask hasn't changed, we won't need to take >> + * the lock. As the current blocked mask can be modified by other >> + * CPUs, > No, nobody else should modify current->blocked. Thanks for the clarification. I am just not 100% sure about that. I will modify the comment. > > Yes, we need to cleanup the usage of force_sig_info(), and probably remove > the "struct task_struct *t" argument. > >> we need to do an atomic read without lock. In other words, >> + * this check will only be done on 64-bit systems. >> + */ >> +#if _NSIG_WORDS == 1 >> + if (READ_ONCE(tsk->blocked.sig[0]) == newset->sig[0]) >> + return; >> +#endif > OK, agreed, but this should not depend on _NSIG_WORDS == 1 and > READ_ONCE() looks confusing. It seems you need to add the new helper > into include/linux/signal.h. Yes, I will add a helper into signal.h and call it instead. Cheers, Longman