Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752058AbdCHJEA (ORCPT ); Wed, 8 Mar 2017 04:04:00 -0500 Received: from mx2.suse.de ([195.135.220.15]:45495 "EHLO mx2.suse.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751603AbdCHJDo (ORCPT ); Wed, 8 Mar 2017 04:03:44 -0500 Subject: Re: [PATCH] mm: Do not use double negation for testing page flags To: Minchan Kim , Anshuman Khandual References: <1488868597-32222-1-git-send-email-minchan@kernel.org> <8b5c4679-484e-fe7f-844b-af5fd41b01e0@linux.vnet.ibm.com> <20170308052555.GB11206@bbox> Cc: Andrew Morton , linux-mm@kvack.org, linux-kernel@vger.kernel.org, kernel-team@lge.com, Michal Hocko , "Kirill A . Shutemov" , Johannes Weiner , Chen Gang From: Vlastimil Babka Message-ID: <6f9274f7-6d2e-60a6-c36a-78f8f79004aa@suse.cz> Date: Wed, 8 Mar 2017 08:51:23 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Thunderbird/45.7.1 MIME-Version: 1.0 In-Reply-To: <20170308052555.GB11206@bbox> Content-Type: text/plain; charset=windows-1252 Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1472 Lines: 40 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 > 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