Re: [PATCH] fs: dcache: Use bool return value instead of int
From: Al Viro <viro@ZenIV.linux.org.uk>
Date: 2016-01-11 22:51:05
Also in:
lkml
On Tue, Jan 12, 2016 at 05:30:45AM +0800, chengang@emindsoft.com.cn wrote:
From: Chen Gang <redacted> Use bool type for all functions which return boolean value. It will not only let code clearer, but also sometimes let gcc produce better code.
What's the point of this chunk?
static enum d_walk_ret check_mount(void *data, struct dentry *dentry)
{
- int *ret = data;
+ bool *ret = data;
if (d_mountpoint(dentry)) {
- *ret = 1;
+ *ret = true;
return D_WALK_QUIT;
}
return D_WALK_CONTINUE;You are replacing a 1-word store with 1-byte store; if anything, that's more likely to yield _worse_ code, not better one.
-static inline int d_unhashed(const struct dentry *dentry)
+static inline bool d_unhashed(const struct dentry *dentry)
{
return hlist_bl_unhashed(&dentry->d_hash);
}
-static inline int d_unlinked(const struct dentry *dentry)
+static inline bool d_unlinked(const struct dentry *dentry)
{
return d_unhashed(dentry) && !IS_ROOT(dentry);
}-static inline int simple_positive(struct dentry *dentry)
+static inline bool simple_positive(struct dentry *dentry)
{
return d_really_is_positive(dentry) && !d_unhashed(dentry);
}And these three are harmless, but completely pointless...