From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S938697AbcIWApS (ORCPT ); Thu, 22 Sep 2016 20:45:18 -0400 Received: from mail-co1nam03on0138.outbound.protection.outlook.com ([104.47.40.138]:27168 "EHLO NAM03-CO1-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S934620AbcIWApQ (ORCPT ); Thu, 22 Sep 2016 20:45:16 -0400 X-Greylist: delayed 89562 seconds by postgrey-1.27 at vger.kernel.org; Thu, 22 Sep 2016 20:45:15 EDT Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=waiman.long@hpe.com; Message-ID: <57E47B12.5070509@hpe.com> Date: Thu, 22 Sep 2016 20:45:06 -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: Thomas Gleixner CC: Ingo Molnar , Peter Zijlstra , Jonathan Corbet , , , Davidlohr Bueso , Jason Low , Scott J Norton , Douglas Hatch Subject: Re: [RFC PATCH v2 1/5] futex: Add futex_set_timer() helper function References: <1474378963-15496-1-git-send-email-Waiman.Long@hpe.com> <1474378963-15496-2-git-send-email-Waiman.Long@hpe.com> In-Reply-To: Content-Type: text/plain; charset="ISO-8859-1"; format=flowed Content-Transfer-Encoding: 7bit X-Originating-IP: [72.71.243.90] X-ClientProxiedBy: BLUPR01CA059.prod.exchangelabs.com (10.160.23.49) To AT5PR84MB0306.NAMPRD84.PROD.OUTLOOK.COM (10.162.138.28) X-MS-Office365-Filtering-Correlation-Id: 1457745d-15f2-4dbb-335b-08d3e34ae103 X-Microsoft-Exchange-Diagnostics: 1;AT5PR84MB0306;2:K3EQZWkY/TSKHYJ0CKb19Q/Fxe1MKtuqRlKPbuw5RJ7NZ9UPaFLIY7GSof5BUj78UUVSGaJgjJSkBfBa9jPh/zsaH+7HhcnIq4SrB3BQOBmWoFg5utlKga+TrGCSn+5Vm12P23tl+b6F/zSHUluc2HrTUKCam+ZGj5ujX2TUpjR02d5seEBIW49yssQ0mQuc;3:iz3U+Ag2uv3HfHkU0W2KiVxC2kr9sVyuHQgN8+EVMqnMI3MZ7AY5G0QQQSOxAiAxSqBTrWEd2sxvC5yJ83M6XQoPqQCePAosSseNiT/z21a9YEXugYSxmUFR3jhHYrmK X-Microsoft-Antispam: UriScan:;BCL:0;PCL:0;RULEID:;SRVR:AT5PR84MB0306; X-Microsoft-Exchange-Diagnostics: 1;AT5PR84MB0306;25:iF5EMyrskN0HLYvLogtqBNUVltJt0b7HORRpWZwyJOGnHF4MUoZqIobgm2012G8Hzdi4vmOPHiUJQ3AclE24GbVPoMKqp6/q3di5WUkJ2n+bidEtBtyKZ+W/TiDf+Jcepuyo9rz17hy+TWbpta1Hr08olJBzNminW1HEq0oZYZJH6WMQ6FC2CIOl1zW0jsCoDK5CvzgIcW1u6BFPcBlJbWX2KsoiBEw7cK2GRayCI8WrnR4MxAPfyX/73uI1oys5o0G3r4fhLIpwUa9HOf0IFEGlztcOl9Fb4g9q7AhRQ4z/BfJRjollti70zr6b1TAfNa2dEJbaTwRLSFrYhXdgxXizUt58nGmxG0QQYtFhjCPHYwpjURXt0RWNxbHUaS9+nmP5rLhzfhN/YCMBeYaRh+rXzarmd09IpM9Rzw1JeEakd66OvzEslRQUvViCa6B40a3QzvdmpqiSJvebUeaBC9np9+tVZxHqkfKasJQQG8CJIrDrvKX9uCatzhcdkbP8MFXMOhglnZXcpvPUB0KOX90T+3H8ollz+u+5fOzyeJNPM0aXFTElebHfosqMKiE8//HWmG5tCxZjK6yamSq7R8TYKl46zIeMbLjufRdB9oXqgUPEudJjnVQ435ZfbFKOEhc3WD/Wyfm2p3EkBu7q4Iv3pFzN9O/9Lb54Mic+qdW5hnmMW9/s2KRJtBVFKsYoCi8hkyYf73oQdGMwCS8hiA==;31:wSuEFXyMU/q81edXmBp8XTN/JahDjUKGWYv5ydbIHjcFILfUHYvJVkGTbbI50WthohPY8dyQzFRaTfheJs/biFd2NmhLkiqNNcXvWGA/f8gE/A9E/sgF+fGz46fc9Dg5+t9kZTerEcvz+iKZzTVWXKP0kOvS8ppEtzU3QDeyWBIEIxtUu+Gax31hpnPs7uMys2hleXY9DEfFoarU+kFYnWK90+Hj7ODFnGaWpLtnpIY= X-Microsoft-Exchange-Diagnostics: 1;AT5PR84MB0306;20:TMGCVFDV7v0ygoG206qccQMxmycJZxS6uVdliqcPVZB2jdps+3bGx3CaBDh+6Mk+Vi9swGhrubg4+hBK96Z4gjaUoLb+WHVx8SVfy3JyeZhpUqL9ZwqUm5PNdQZLprax3bKGPpStOsG9AfG9HtYL2h+6yloJCYgkv925i08Xyr72HJqlHVoDNF7LSRNz7u3vmDVMigIPhlx+qL9ywgd775nxGCQEru3g1fD5z9GSh5j35sXps3urL4o/+EPDFxzzhNA68NIuLRUec7k7e2Pie22AyhJkWz9e4Nq1K4av8GhQst+52TNJfKnvjL/bSaoEZf4cLe9f+7wwCaWUtYi6RbPgYn2dR6gMtnj0YCidzXxjqXf2x4mrGn7IXDx1CKkg0YJXHumkvlvuHSVugW8U2xrfZAU2YlsFyJxXbbJ9yQQvgmmYKT31medGjhp/CqzjEoyxmfkuC76JWXLY34hHO8LWd7uSrE6MV/tNpa4ygHD/SfDJt3d4yoM6b7Mw4/31;4:tz4LOMEwKbh7qWaHzRtr998N/qEVWe2FTURL5LzjTiwprSyvNrBV+eFuQnnpQwzBmgdLDyTaPiVKtJLkRQhS5F4k1lYvxGIsflKj4BHzOjWev67v6M9w2ZqV5KKuQ22uFz1ubruDzkRxzQ+2SI6+npERfNKxS6F3Q1NZTtr0UDhYUIdEsaoqGS6tkPyuCbtBzM8ZqYBortAX6rnsqVrcHJwK38OGQJRq0VsHRmYO9Tkmnrmbc74CDfSV5FZEIwRAFIqTnZub4VDdgkKkSgEPyJ4VeIwprv16dIWmkiyqrvHaSwWmo2zyEULu2gHSLR73E6vR9ooSb6Y0MYRfG3v77O6L240VmbbkG0v/EsbWJU8yuxiCcgqSKHFzorl2bNGv1SfAEyo18DIoCQRyzGJ7nOyVgeDMQ0uBDl0IQrBYb0Q= X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:; X-Exchange-Antispam-Report-CFA-Test: BCL:0;PCL:0;RULEID:(6040176)(601004)(2401047)(8121501046)(5005006)(10201501046)(3002001)(6055026);SRVR:AT5PR84MB0306;BCL:0;PCL:0;RULEID:;SRVR:AT5PR84MB0306; X-Forefront-PRVS: 0074BBE012 X-Forefront-Antispam-Report: SFV:NSPM;SFS:(10019020)(4630300001)(6049001)(6009001)(7916002)(24454002)(51914003)(377454003)(189002)(199003)(7736002)(50466002)(81166006)(4001350100001)(586003)(6116002)(110136003)(97736004)(3846002)(59896002)(68736007)(2906002)(47776003)(7846002)(77096005)(117156001)(80316001)(305945005)(86362001)(230700001)(2950100001)(83506001)(92566002)(8676002)(106356001)(42186005)(50986999)(189998001)(65816999)(76176999)(87266999)(105586002)(81156014)(66066001)(4326007)(5660300001)(64126003)(33656002)(23756003)(65956001)(36756003)(65806001)(54356999)(101416001)(217873001);DIR:OUT;SFP:1102;SCL:1;SRVR:AT5PR84MB0306;H:[192.168.142.128];FPR:;SPF:None;PTR:InfoNoRecords;MX:1;A:1;LANG:en; X-Microsoft-Exchange-Diagnostics: =?iso-8859-1?Q?1;AT5PR84MB0306;23:PDy+XsPGgBe/inaeqItrEM6RB+FN/7HzfeqtqoU?= =?iso-8859-1?Q?84wvkrnhHZeJRMGwpeOQTtMiF69oKIK3Tt+Q/azlmoQoQ9Tk+JcioHnJXe?= =?iso-8859-1?Q?JX3qLrs8C80i3owxKOzPDvkUNtkbJEEXv5QY5n7aFQfrkRVtMyPl4zcZWk?= =?iso-8859-1?Q?Z9iiTPWgmqQ7cP+BpXb2/WNQEW0PRN7lmCGv4oKfcQQrAkaYwQcxW+NoYH?= =?iso-8859-1?Q?52hHlbOK+5d6Dc1ZkzMRhVzrx6l3QSUO3/O10GPmDh2TELKk9iHz70TV6u?= =?iso-8859-1?Q?ecpudrwGkFgsKwSGqylE0gZwvqvzoT6htMra3Uen//0CzaAyL9iUFl+Lqx?= =?iso-8859-1?Q?X1O3nd1i1LZ+aVPFhb+xKofegvR6maZnQCgGx5SgCacATPGbgBwN1mImGv?= =?iso-8859-1?Q?PMhaoHRsq08Ti4XfTab6qjYB3B1i1zIMQRNCQ4zjftL9Ms5J9Rb4iqZlLX?= =?iso-8859-1?Q?7zCmPRh75a1Er5LqoB6kNH1N0Wvv5XOvUOOZJ629WJm8FmHCK5jn4Ypdr3?= =?iso-8859-1?Q?dBktXidxj4NmKVlQEMzy/NWXb9V7+TCE3xAzSn4gxcytTabzrc9aW1Us/Y?= =?iso-8859-1?Q?MLcJhTVd2xk7cLRHt+JUH93VLkrlgi1gn+zlydlDKFLh+YWhYhaaRABhqo?= =?iso-8859-1?Q?3PmPQIgCzk4lr8+WoYgozNoU/7JQmt1e1iijkScE4rDfFEZ9vzpajrpin0?= =?iso-8859-1?Q?N902X4wyvgjBSAnh21K4u++0Dg8d7apliiUiFOyL63SYHCBH6000TQWnly?= =?iso-8859-1?Q?hLAjIxWeSGiA6spi+z3zEykyP9cPudAqfAscoyjo+zOpIJN2ZM8ZvNIc7+?= =?iso-8859-1?Q?XSK0oqXE997LqkFdP5uO5qj01hxU0QPo+lMR9tzbNcPOfL9irFB7+6LXdh?= =?iso-8859-1?Q?JWsQ9bomoZt7aGf0Fy/R32iGcqFASnZmAVCeHt5LSbhehREqQgSswNqJAP?= =?iso-8859-1?Q?OXIvQcty1NunMYLgSjAnJQzuz2zCEeQOUcoiTBn2WDzhSswbxgKnRbUEtr?= =?iso-8859-1?Q?rt04o5F6pJ5rKOQmmJ3a407HjVcaeKw+JYMHQ6w5GgI5TyX84ygmajoQ5p?= =?iso-8859-1?Q?N7xI44NfKXtpKqiBJSOpcFDh4LI/gOhc/WlugVYaXLi7HXM+BdoQ/ym6Vc?= =?iso-8859-1?Q?zyBGZRW+eXY3YJSyyJENREyZXO9oxRSg5fE1+rNp4tNEuY94AYr8919FOx?= =?iso-8859-1?Q?jqxBikoesZ173BlmhcWOG4YcVpFhYaK1++Ybm8sCL90QaOE1jgTmBER1vX?= =?iso-8859-1?Q?3FQSUrid9yCAPT+JJ6BJI+is25cFwlllPVeMUxHKpP8XxK7CpcCXvDeydC?= =?iso-8859-1?Q?MTq8CkQRVFqo4nV6ORI6Ig4E8mOQTzSkixEoeWfEcrGrEJvol9LZkd4Rcp?= =?iso-8859-1?Q?tbHXsIrgFgUXMrfl8Re33NpxVWs8o?= X-Microsoft-Exchange-Diagnostics: 1;AT5PR84MB0306;6:gZSyXDRZbYWYEvC8NHE+1rKzvpmiSTbifYmW79L9JY+RVVRrosRFYvn+teZzZ9t/ioevPe2Z2bLXN7SSavSjrLHl8yMq5iKtcf40cGDKDX7IWiDsZzVQOmnfzIOEl9As0XlSX1OKQL4hfKRFTk52wZ5pW0DRGbDO8OydEuSaIEQh9T/brt1MWn0lW0UKCiUga0l0GCupOgVZfRN34TUbrZHhNpCD/tpWQhPir6h36+WZYf8Rmppwj5TdrYYid9YvObGxZbyULw3XKAF2w0gzqt7Ua4y4rD4nz2Ruw/oTBw21e0bylrZoPotfDbLD1KenZGGn6tUdB/SviOR+KgKrqg==;5:k+UnplPCHaZ6xQbCU2ZHaP+hq1qydSVHOjN1wi2Eaf1VIvEYqABvV+lUfcuDph2Ozx8MIm0k9gnDXL3XPX4ja0aqU4/jZAOR6i7nZrJTpGilKDprDmfnjHL1TqgcMga/rSWsUmQfMy9DoTTy6jEqFQ==;24:n5Utbfl6gtAcaPtt2iXabtgBM1F/I3G678KOsDYx2XTvAPKc9VIxIlKtlSwUcDFSG0uLscGx5te1np0yGiEcY9phRdXRsBvYrUhvHJyw37o=;7:ZGifIW4hccX8gwSk1JQy4Eh+EGvmG95hMILUJuKW8rKHd0mfbp9uV3OAiVDw1DIg0Ix5bQPPaVD/ZWTU+XwKE039LNszhNyLZRD/YLBVUco6S7HagU9jOrWP3+IO23Bxt3j2o8SXY1XQEN3oMfnnveI7qA+9/ls7/uAp2jCjWmNkpgVUUlF2xY3KSChcCCbLmAaVBXQ8AJTs2GMaMysNTjA3FIYc7dnMw0Ov+1jenx1nuKIDXR0V5SL/KJwpIX1UFctLNI8l24fRAwm8TJL/q8DlzwaAISJyB+oYPO7Ac72XrzIOTvX/FDTxb7+ZJXQK SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-OriginatorOrg: hpe.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 23 Sep 2016 00:45:12.0861 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-Transport-CrossTenantHeadersStamped: AT5PR84MB0306 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 09/22/2016 05:31 PM, Thomas Gleixner wrote: > On Tue, 20 Sep 2016, Waiman Long wrote: > > Please be more careful of your subject lines. First thing I thought was > that you add a helper which is used in later patches to find out that you > actualy consolidate duplicated code. Something like: > > futex: Consolidate duplicated timer setup code > > would have told me right away what this is about. > >> This patch adds a new futex_set_timer() function to consolidate all > Please do not use: "This patch ...". We already know that this is a patch, > otherwise it would not be tagged [PATCH n/m] in the subject line. > > See Documentation/SubmittingPatches .... > >> the sleeping hrtime setup code. > Let me give you a hint: > > 1: The code has three identical code copies to set up the futex timeout. > > 2: Add a helper function and consolidate the call sites. > > #1 tells precisely what the problem is > #2 tells precisely how it is solved > > Can you see the difference? > >> +/* >> + * Helper function to set the sleeping hrtimer. >> + */ >> +static inline void futex_set_timer(ktime_t *time, struct hrtimer_sleeper **pto, >> + struct hrtimer_sleeper *timeout, int flags, u64 range_ns) > Please use futex_setup_timer() as the function name. I was confused when I > read the other patch that you wanted to "set" the timer before entering > into the place which would actually need it. > >> +{ >> + if (!time) >> + return; >> + *pto = timeout; > Please don't do that. That's a horrible coding style. > > What's wrong with returning NULL or the timeout pointer and assign it to > "to" at the call site? > > Thanks, > > tglx > Thanks for the suggestions. I will fix this patch in the next revision. Cheers, Longman