Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751979AbcDRUOl (ORCPT ); Mon, 18 Apr 2016 16:14:41 -0400 Received: from mail-bn1bon0135.outbound.protection.outlook.com ([157.56.111.135]:51712 "EHLO na01-bn1-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1751626AbcDRUOh (ORCPT ); Mon, 18 Apr 2016 16:14:37 -0400 X-Greylist: delayed 2065 seconds by postgrey-1.27 at vger.kernel.org; Mon, 18 Apr 2016 16:14:37 EDT Authentication-Results: stgolabs.net; dkim=none (message not signed) header.d=none;stgolabs.net; dmarc=none action=none header.from=hpe.com; Message-ID: <5715380C.5050608@hpe.com> Date: Mon, 18 Apr 2016 15:39:56 -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: Davidlohr Bueso CC: , , , Davidlohr Bueso Subject: Re: [PATCH -tip 2/3] locking/pvqspinlock: Avoid double resetting of stats References: <1460961103-24953-1-git-send-email-dave@stgolabs.net> <1460961103-24953-2-git-send-email-dave@stgolabs.net> In-Reply-To: <1460961103-24953-2-git-send-email-dave@stgolabs.net> Content-Type: text/plain; charset="ISO-8859-1"; format=flowed Content-Transfer-Encoding: 7bit X-Originating-IP: [72.71.243.35] X-ClientProxiedBy: CY1PR19CA0040.namprd19.prod.outlook.com (10.162.38.178) To AT5PR84MB0308.NAMPRD84.PROD.OUTLOOK.COM (10.162.138.30) X-MS-Office365-Filtering-Correlation-Id: 6ff689a9-a34f-4a37-d549-08d367c13d4a X-Microsoft-Exchange-Diagnostics: 1;AT5PR84MB0308;2:yB6In+J9Vf7VU0AWk9nslxriWKwfVhAsenr1wDBcqfESJiV3Qb7cg0LWLA4mOokF0isdgZktva4JXgIc2gMrwmmDyK6Pita9iNkQRmfsx/QM/J6f/IHXJC1/dDsGa8BS1DTlhxAlFc3iBIoR57kGN4invu6CAacC0McRHtCXNLAHagHFNoR1Y9zkzdJgzc74;3:fxK1Kgjh7wWNIjh9h64gET1AojFCZzRDQrA8zaGCK7arh27t/DK8fp++1ejdaGI1XLFpJa1RbAe1NB6uzWUFgy7YZREuqvH+Y4xyt8KPNptcl6gF1AJGart0CzQWfgXl;25:zOCxuCc0M+opGzDDDF5BD42noGFTKM95J5HoQWQl5PVlcAuPwCSwngifrE+we27cEUlKAdQ5YFlAyiH2EDvbe8QORIbQCgwkHSiW4ygiR8AejC9GfXqzUZjkXJubl8tlihViSNlUdfNDxOYNiB1p79FcNnnDYJszYegjTff5EmlHi2qlvkSEWOLPF/ww5qxqdvebIFldEzPdvmNOBK5CUmh/GxYSztjJkcfGmQ9GnN+NI07euvuRTYEaEgDoTHn9O9AefsIJMx1K3FB1g5wMcrd5PBsr1s/libLzyRQMf8mxI0ACkFpIXzE6tDKpfFoTJ8jwef8MaK4uswuw0g5HZ+DsD8CB5n3hcy+7EtW7BGhBJkBeBlyUjSuBQvcyotW2YCsQSSrSEZWkXwIsjgGl3kHrTY38FSNeqLOPtNn7m8FGg7bjB7SXY+iypiVNnW1tkDzzBhAeQfMG/Eoper9M5ci6/o9IOQUY8251f2SHPVC0Vo668+mpRBcnCq9FaS7XAH3RCfJYW8rNGn07sAa1y49N4C7006u+8YEcMlKPt8JsCQOZm1VRCnqZdrp4U3vGmfQwq+YhE7b2hV+sGA7A9LpbjpZd0v18AvgY9vqcE/+a8D1jG8YFdo9oX67iCHKC X-Microsoft-Antispam: UriScan:;BCL:0;PCL:0;RULEID:;SRVR:AT5PR84MB0308; X-Microsoft-Exchange-Diagnostics: 1;AT5PR84MB0308;20:NoGaP0O737Suf7m+8i65XUIeG8A4D/AVzbTXkiVOhgctPIrC54HCUHN1OoYtaYcg1TB9sk5Slb6wA1t09TXZFx92XMrXWjXxfCzZbbA+nR9unJ7ReH1sRsgQsBa8MoiH77hWBHg0LlFYHlEc1TNSADOhgMzzlX5dk+wxFx40a4XZ65UyveNZdG9Pe4sUsgSz4zf4UNEYHP9U7fyRBmybgbRagoseTHELN0X2hLSnmQlD9/lrsldH5iF+PSTkajml3BrcZ5Eu93x/PC5ItPhLD/gjzF8mgGBg82nsiUhrGtkOjYqrCjpnETM9fe6zs5x0LGm0ynqPsVaTglvuGe9iKQ==;4:CzqsRSTZDAipifzGJeWEL3mqR5qRDfylMgOR68rbnjUU33JRPVDxXRPUiGk1Wq4szO1RJANp1sQIVtg1ZdgoagTKAyeWMpECBITSqsCrRhymNC3eA70XfNczry8di6uiMecsD5XICCw9dGDtx9xJO5ewBzCkMBfb1I7ckffrZYP63zI2yxhhsdi1F3IbyNWp2WPh2Ts/L768OE83quiKMz3hNaEk0ZsdFOhz1pKGkeg1XMFQ/m8eM1CUQOnW+Uy06Md2bFUxTctiPMq8szWNFSj2lfhNigDZNyGVkO1AxODKoZZQ18v4fRMCulCgOejbiltrMREzamkMSsEd5mS+IWpCqtLWci3aaGQy6d95JFHcX+rYQNMrN0Fzfr8s+2SC3cNp+u1S9a+b1IwM4zribdQDYUy6TMmp5zIES0fAHwY= X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:; X-Exchange-Antispam-Report-CFA-Test: BCL:0;PCL:0;RULEID:(9101521026)(601004)(2401047)(5005006)(8121501046)(3002001)(10201501046)(6055026);SRVR:AT5PR84MB0308;BCL:0;PCL:0;RULEID:;SRVR:AT5PR84MB0308; X-Forefront-PRVS: 0916FC3A18 X-Forefront-Antispam-Report: SFV:NSPM;SFS:(10019020)(6009001)(6049001)(377454003)(24454002)(117156001)(50986999)(59896002)(33656002)(2906002)(4001350100001)(76176999)(80316001)(551934003)(83506001)(1096002)(4326007)(81166005)(77096005)(87266999)(19580405001)(42186005)(65816999)(54356999)(230700001)(86362001)(19580395003)(2950100001)(23756003)(36756003)(92566002)(3846002)(5008740100001)(6116002)(65806001)(586003)(65956001)(189998001)(47776003)(110136002)(5004730100002)(66066001)(99136001)(50466002)(64126003);DIR:OUT;SFP:1102;SCL:1;SRVR:AT5PR84MB0308;H:[192.168.142.159];FPR:;SPF:None;MLV:sfv;LANG:en; X-Microsoft-Exchange-Diagnostics: =?iso-8859-1?Q?1;AT5PR84MB0308;23:MR74ayvQTthaYKsQYMhLpnv1VZUHwSqrV3SKYLv?= =?iso-8859-1?Q?YcV+7l0WehnyD9i0m6Z1KvR8nsY43ky9NVedLW/GURXaMPja4i0T1dyOC/?= =?iso-8859-1?Q?nh/F/Nana0sLmrzfh1UTySjkF49SQE3b9Bg+Ab0ZcRkiPcVr9glw6brCzd?= =?iso-8859-1?Q?tdzMB/TbEA0EnfGvGlxacQ369aLlRF4xzJ0Y7AOBMAmNpzuWrr4Jm52sCo?= =?iso-8859-1?Q?IRPDgYFMdKdZM7dDoAjM5SrmbWj55nCLHF3vLmgvtxb9O4/O4OY33Cf4lm?= =?iso-8859-1?Q?HMpCSbLtZefFtFBJ//XN1CBTsmemc3X8516oA6oiBZCHlTvJFsUsizJ1AJ?= =?iso-8859-1?Q?HFzST0Gp/L1mz1f0+T4avz8iCjO0Nt9DXI57OEDvkpm03lrn0wM/kqlttH?= =?iso-8859-1?Q?EHo5jYnzxs3jdnJPhy8930ZzWiKhPR3Avcns4lPoUL3aLRwSuTAkCjIzJV?= =?iso-8859-1?Q?CS/VWAV1Dh4INjWgxyP8EJaP0QaQQHw5R5EIhPrPpCwzngAgiW0C4ItqJT?= =?iso-8859-1?Q?TKsj36iS5xgkeiZpeysUEHTMZDaJQUrNZ+BbDDJZJv1tY2CBBNUk3YknoQ?= =?iso-8859-1?Q?gyIJNQlnemwrTboKcKfBDtUkQ0RheQ6n8zSLqN//2l2eR2M8K4wGKN+Lde?= =?iso-8859-1?Q?frYfnSw9jpHEP9N3AfWroyoRT8dCcHNJdqBFvIPEFmwbzqQs52yvFBPIEy?= =?iso-8859-1?Q?0tnzYCyAg2nfqq4pLw6B+1Vc2IlJffvupwc4s/Red80efPeMDnEp1Cw/8S?= =?iso-8859-1?Q?rbZbIO7tiEwb/14OiKDa9QkXnV9lpaaZjwXdrEHukFIwFxmpTStoltW3K7?= =?iso-8859-1?Q?/k19xt3HtS2R2WiI/nFt5AD3r9dnVb9Q+3qF+poYq6a+EsGcPbE/m2TAfG?= =?iso-8859-1?Q?HbdF/ohJT8bnVuQPZ+BV/Ddrwc3h1roolQNUF5Nv/O+6/Vl5aPaqOMcpqC?= =?iso-8859-1?Q?tw11HI5b/tnnQ1iywqisCZjSo2/ZaCQzT8Noy3ucRDFUpM85Edj57t3s58?= =?iso-8859-1?Q?TkRPmx6zGxz5CPRwugC5yTE9deijIUSAk+IHTEZ1XGRZDpCPjnkFIc6IoL?= =?iso-8859-1?Q?Oz3CUiHk/f4eQef3DyEZSaoi2w54SQaV+b+IWynRLOnSavPjQwXKgMblTV?= =?iso-8859-1?Q?DtybXlu1b+Mbm4ZnPhXwfAYxyCVfYH5XdJWvbuDQuT4TfbEK6vtJSiJAar?= =?iso-8859-1?Q?Ji8RIHRXKmD?= X-Microsoft-Exchange-Diagnostics: 1;AT5PR84MB0308;5:0lp7RyFH/OvBVqlgCJnWWvPo78xIyb38/nx9RUvioqRd2AU6RiHHX2OHIsjPvByt0q1HFKhTohQqezIDba0m2kKgENELGRUDDt4QLQL7U3czKdsbWxRKFmzS32Ae3OAHZVhl5jBqN99/As1o/tWfB49T4XYKBRS416lok3oyuesz9WR0EzTh3DIs9T1fGWzp;24:cSwtWQQPIMFlxxu9ufyG+DCmnjZT0V4xaZ8bQZsRpXrew6O/U/Jr35e0I/346MzSCV4hdj6JXoYh7mjfu69pRwhzJaYHq/zlWZrifqBECNs=;7:UDIgeXYRaHQG5i4DTiifCj8D5JK/Mkv8tXadDagmG63fYOoikg80B3Jhd2hWGy7ssRzuqKPfyuRU3SQycQva+vQ1w7K/yAhyXBAfdSFLy8lyDBe1gRPaV9KUi0WbEannSOpNNieIe3ePwoH+Hlue+85xsyk17+Bp/eetvuOBC0PtTCKg966KS3FBOx/HKW26uXggkkQ3LUtCkTtF4ropd23teTFljMxXLpcUCJUDqCk= SpamDiagnosticOutput: 1:23 SpamDiagnosticMetadata: NSPM X-OriginatorOrg: hpe.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 18 Apr 2016 19:40:03.1846 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-Transport-CrossTenantHeadersStamped: AT5PR84MB0308 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1235 Lines: 35 On 04/18/2016 02:31 AM, Davidlohr Bueso wrote: > ... remove the redundant second iteration, this is most > likely a copy/past buglet. > > Signed-off-by: Davidlohr Bueso > --- > kernel/locking/qspinlock_stat.h | 2 -- > 1 file changed, 2 deletions(-) > > diff --git a/kernel/locking/qspinlock_stat.h b/kernel/locking/qspinlock_stat.h > index d734b7502001..72722334237a 100644 > --- a/kernel/locking/qspinlock_stat.h > +++ b/kernel/locking/qspinlock_stat.h > @@ -191,8 +191,6 @@ static ssize_t qstat_write(struct file *file, const char __user *user_buf, > > for (i = 0 ; i< qstat_num; i++) > WRITE_ONCE(ptr[i], 0); > - for (i = 0 ; i< qstat_num; i++) > - WRITE_ONCE(ptr[i], 0); > } > return count; > } The double write is done on purpose. As the statistics count update isn't atomic, there is a very small chance (p) that clearing the count may happen in the middle of read-modify-write bus transaction. Doing a double write will reduce the chance further to p^2. This isn't failsafe, but I think is good enough. However, I don't mind eliminate the double write either as we can always view the statistics count after a reset to make sure that they are properly cleared. Cheers, Longman