Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752847AbdCIGma (ORCPT ); Thu, 9 Mar 2017 01:42:30 -0500 Received: from LGEAMRELO12.lge.com ([156.147.23.52]:39074 "EHLO lgeamrelo12.lge.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752414AbdCIGm2 (ORCPT ); Thu, 9 Mar 2017 01:42:28 -0500 X-Original-SENDERIP: 156.147.1.127 X-Original-MAILFROM: minchan@kernel.org X-Original-SENDERIP: 165.244.249.25 X-Original-MAILFROM: minchan@kernel.org X-Original-SENDERIP: 10.177.223.161 X-Original-MAILFROM: minchan@kernel.org Date: Thu, 9 Mar 2017 15:42:24 +0900 From: Minchan Kim To: Vlastimil Babka CC: Anshuman Khandual , Andrew Morton , , , , Michal Hocko , "Kirill A . Shutemov" , Johannes Weiner , Chen Gang Subject: Re: [PATCH] mm: Do not use double negation for testing page flags Message-ID: <20170309064224.GD854@bbox> References: <1488868597-32222-1-git-send-email-minchan@kernel.org> <8b5c4679-484e-fe7f-844b-af5fd41b01e0@linux.vnet.ibm.com> <20170308052555.GB11206@bbox> <6f9274f7-6d2e-60a6-c36a-78f8f79004aa@suse.cz> MIME-Version: 1.0 In-Reply-To: <6f9274f7-6d2e-60a6-c36a-78f8f79004aa@suse.cz> User-Agent: Mutt/1.5.24 (2015-08-30) X-MIMETrack: Itemize by SMTP Server on LGEKRMHUB07/LGE/LG Group(Release 8.5.3FP6|November 21, 2013) at 2017/03/09 15:42:24, Serialize by Router on LGEKRMHUB07/LGE/LG Group(Release 8.5.3FP6|November 21, 2013) at 2017/03/09 15:42:25, Serialize complete at 2017/03/09 15:42:25 Content-Type: text/plain; charset="us-ascii" Content-Disposition: inline Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1693 Lines: 49 Hi Vlastimil, On Wed, Mar 08, 2017 at 08:51:23AM +0100, Vlastimil Babka wrote: > On 03/08/2017 06:25 AM, Minchan Kim wrote: > > Hi Anshuman, > > > > On Tue, Mar 07, 2017 at 09:31:18PM +0530, Anshuman Khandual wrote: > >> On 03/07/2017 12:06 PM, Minchan Kim wrote: > >>> With the discussion[1], I found it seems there are every PageFlags > >>> functions return bool at this moment so we don't need double > >>> negation any more. > >>> Although it's not a problem to keep it, it makes future users > >>> confused to use dobule negation for them, too. > >>> > >>> Remove such possibility. > >> > >> A quick search of '!!Page' in the source tree does not show any other > >> place having this double negation. So I guess this is all which need > >> to be fixed. > > > > Yeb. That's the why my patch includes only khugepagd part but my > > concern is PageFlags returns int type not boolean so user might > > be confused easily and tempted to use dobule negation. > > > > Other side is they who create new custom PageXXX(e.g., PageMovable) > > should keep it in mind that they should return 0 or 1 although > > fucntion prototype's return value is int type. > > > It shouldn't be > > documented nowhere. > > Was this double negation intentional? :P Nice catch! It seems you have a crystal ball. ;-) > > > Although we can add a little description > > somewhere in page-flags.h, I believe changing to boolean is more > > clear/not-error-prone so Chen's work is enough worth, I think. > > Agree, unless some arches benefit from the int by performance > for some reason (no idea if it's possible). > > Anyway, to your original patch: > > Acked-by: Vlastimil Babka Thanks!