lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <56AA3293.4010601@emindsoft.com.cn>
Date:	Thu, 28 Jan 2016 23:24:03 +0800
From:	Chen Gang <chengang@...ndsoft.com.cn>
To:	Heiko Carstens <heiko.carstens@...ibm.com>
CC:	akpm@...ux-foundation.org, dhowells@...hat.com,
	viro@...iv.linux.org.uk, linux-kernel@...r.kernel.org,
	paulmck@...ux.vnet.ibm.com, josh@...htriplett.org,
	Chen Gang <gang.chen.5i5j@...il.com>
Subject: Re: [PATCH] include/linux/list_bl.h: Use bool instead of int for
 boolean functions


On 1/28/16 15:22, Heiko Carstens wrote:
> On Mon, Jan 25, 2016 at 04:58:18AM +0800, chengang@...ndsoft.com.cn wrote:
>> From: Chen Gang <chengang@...ndsoft.com.cn>
>>
>> hlist_bl_unhashed() and hlist_bl_empty() are all boolean functions, so
>> return bool instead of int.
>>
>> Signed-off-by: Chen Gang <gang.chen.5i5j@...il.com>
>> ---
>>  include/linux/list_bl.h | 4 ++--
>>  1 file changed, 2 insertions(+), 2 deletions(-)
>>
>> diff --git a/include/linux/list_bl.h b/include/linux/list_bl.h
>> index ee7229a..cb48330 100644
>> --- a/include/linux/list_bl.h
>> +++ b/include/linux/list_bl.h
>> @@ -48,7 +48,7 @@ static inline void INIT_HLIST_BL_NODE(struct hlist_bl_node *h)
>>  
>>  #define hlist_bl_entry(ptr, type, member) container_of(ptr,type,member)
>>  
>> -static inline int hlist_bl_unhashed(const struct hlist_bl_node *h)
>> +static inline bool  hlist_bl_unhashed(const struct hlist_bl_node *h)
>>  {
>>  	return !h->pprev;
>>  }
>> @@ -68,7 +68,7 @@ static inline void hlist_bl_set_first(struct hlist_bl_head *h,
>>  	h->first = (struct hlist_bl_node *)((unsigned long)n | LIST_BL_LOCKMASK);
>>  }
>>  
>> -static inline int hlist_bl_empty(const struct hlist_bl_head *h)
>> +static inline bool hlist_bl_empty(const struct hlist_bl_head *h)
>>  {
>>  	return !((unsigned long)READ_ONCE(h->first) & ~LIST_BL_LOCKMASK);
> 
> Sorry for my ignorance, but what's the point of doing conversions like
> this? It has zero impact on code generation.
> 

For me, in our case, the 2 functions really generate boolean value, and
they are really used as boolean functions, so returning boolean value
will let the code a little simpler and a little clearer.


Thanks.
-- 
Chen Gang (陈刚)

Open, share, and attitude like air, water, and life which God blessed

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ