* [PATCH v2] mm: zsmalloc: Replace return type int with bool
@ 2018-02-20 17:58 Souptick Joarder
2018-02-21 10:22 ` Michal Hocko
0 siblings, 1 reply; 4+ messages in thread
From: Souptick Joarder @ 2018-02-20 17:58 UTC (permalink / raw)
To: minchan, ngupta, sergey.senozhatsky.work; +Cc: linux-mm
zs_register_migration() returns either 0 or 1.
So the return type int should be replaced with bool.
Signed-off-by: Souptick Joarder <jrdr.linux@gmail.com>
---
v2: Returning false in zs_register_migration() as return
type is bool
mm/zsmalloc.c | 10 +++++-----
1 file changed, 5 insertions(+), 5 deletions(-)
diff --git a/mm/zsmalloc.c b/mm/zsmalloc.c
index c301350..5fa2dfe 100644
--- a/mm/zsmalloc.c
+++ b/mm/zsmalloc.c
@@ -295,7 +295,7 @@ struct mapping_area {
};
#ifdef CONFIG_COMPACTION
-static int zs_register_migration(struct zs_pool *pool);
+static bool zs_register_migration(struct zs_pool *pool);
static void zs_unregister_migration(struct zs_pool *pool);
static void migrate_lock_init(struct zspage *zspage);
static void migrate_read_lock(struct zspage *zspage);
@@ -306,7 +306,7 @@ struct mapping_area {
#else
static int zsmalloc_mount(void) { return 0; }
static void zsmalloc_unmount(void) {}
-static int zs_register_migration(struct zs_pool *pool) { return 0; }
+static bool zs_register_migration(struct zs_pool *pool) { return false; }
static void zs_unregister_migration(struct zs_pool *pool) {}
static void migrate_lock_init(struct zspage *zspage) {}
static void migrate_read_lock(struct zspage *zspage) {}
@@ -2101,17 +2101,17 @@ void zs_page_putback(struct page *page)
.putback_page = zs_page_putback,
};
-static int zs_register_migration(struct zs_pool *pool)
+static bool zs_register_migration(struct zs_pool *pool)
{
pool->inode = alloc_anon_inode(zsmalloc_mnt->mnt_sb);
if (IS_ERR(pool->inode)) {
pool->inode = NULL;
- return 1;
+ return true;
}
pool->inode->i_mapping->private_data = pool;
pool->inode->i_mapping->a_ops = &zsmalloc_aops;
- return 0;
+ return false;
}
static void zs_unregister_migration(struct zs_pool *pool)
--
1.9.1
--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@kvack.org. For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a>
^ permalink raw reply related [flat|nested] 4+ messages in thread
* Re: [PATCH v2] mm: zsmalloc: Replace return type int with bool
2018-02-20 17:58 [PATCH v2] mm: zsmalloc: Replace return type int with bool Souptick Joarder
@ 2018-02-21 10:22 ` Michal Hocko
2018-02-21 11:18 ` Souptick Joarder
0 siblings, 1 reply; 4+ messages in thread
From: Michal Hocko @ 2018-02-21 10:22 UTC (permalink / raw)
To: Souptick Joarder; +Cc: minchan, ngupta, sergey.senozhatsky.work, linux-mm
On Tue 20-02-18 23:28:11, Souptick Joarder wrote:
[...]
> -static int zs_register_migration(struct zs_pool *pool)
> +static bool zs_register_migration(struct zs_pool *pool)
> {
> pool->inode = alloc_anon_inode(zsmalloc_mnt->mnt_sb);
> if (IS_ERR(pool->inode)) {
> pool->inode = NULL;
> - return 1;
> + return true;
> }
>
> pool->inode->i_mapping->private_data = pool;
> pool->inode->i_mapping->a_ops = &zsmalloc_aops;
> - return 0;
> + return false;
> }
Don't you find it a bit strange that the function returns false on
success?
--
Michal Hocko
SUSE Labs
--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@kvack.org. For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a>
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [PATCH v2] mm: zsmalloc: Replace return type int with bool
2018-02-21 10:22 ` Michal Hocko
@ 2018-02-21 11:18 ` Souptick Joarder
2018-02-21 12:04 ` Michal Hocko
0 siblings, 1 reply; 4+ messages in thread
From: Souptick Joarder @ 2018-02-21 11:18 UTC (permalink / raw)
To: Michal Hocko; +Cc: Minchan Kim, Nitin Gupta, sergey.senozhatsky.work, Linux-MM
On Wed, Feb 21, 2018 at 3:52 PM, Michal Hocko <mhocko@kernel.org> wrote:
> On Tue 20-02-18 23:28:11, Souptick Joarder wrote:
> [...]
>> -static int zs_register_migration(struct zs_pool *pool)
>> +static bool zs_register_migration(struct zs_pool *pool)
>> {
>> pool->inode = alloc_anon_inode(zsmalloc_mnt->mnt_sb);
>> if (IS_ERR(pool->inode)) {
>> pool->inode = NULL;
>> - return 1;
>> + return true;
>> }
>>
>> pool->inode->i_mapping->private_data = pool;
>> pool->inode->i_mapping->a_ops = &zsmalloc_aops;
>> - return 0;
>> + return false;
>> }
>
> Don't you find it a bit strange that the function returns false on
> success?
The original code was returning 0 on success and return value was handled
accordingly in zs_create_pool(). So returning false on success.
Shall I change it ?
> --
> Michal Hocko
> SUSE Labs
-Souptick
--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@kvack.org. For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a>
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [PATCH v2] mm: zsmalloc: Replace return type int with bool
2018-02-21 11:18 ` Souptick Joarder
@ 2018-02-21 12:04 ` Michal Hocko
0 siblings, 0 replies; 4+ messages in thread
From: Michal Hocko @ 2018-02-21 12:04 UTC (permalink / raw)
To: Souptick Joarder
Cc: Minchan Kim, Nitin Gupta, sergey.senozhatsky.work, Linux-MM
On Wed 21-02-18 16:48:50, Souptick Joarder wrote:
> On Wed, Feb 21, 2018 at 3:52 PM, Michal Hocko <mhocko@kernel.org> wrote:
> > On Tue 20-02-18 23:28:11, Souptick Joarder wrote:
> > [...]
> >> -static int zs_register_migration(struct zs_pool *pool)
> >> +static bool zs_register_migration(struct zs_pool *pool)
> >> {
> >> pool->inode = alloc_anon_inode(zsmalloc_mnt->mnt_sb);
> >> if (IS_ERR(pool->inode)) {
> >> pool->inode = NULL;
> >> - return 1;
> >> + return true;
> >> }
> >>
> >> pool->inode->i_mapping->private_data = pool;
> >> pool->inode->i_mapping->a_ops = &zsmalloc_aops;
> >> - return 0;
> >> + return false;
> >> }
> >
> > Don't you find it a bit strange that the function returns false on
> > success?
>
> The original code was returning 0 on success and return value was handled
> accordingly in zs_create_pool(). So returning false on success.
Returning 0 on success and an error code on failure is a standard
convention. Returning false is just weird. zs_register_migration is
somewhere in the middle because it doesn't really return an error code
on failure. Whether this is worth bothering and fixing is a question for
the maintainer but returning false on success is just not an improvement
IMHO.
--
Michal Hocko
SUSE Labs
--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@kvack.org. For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a>
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2018-02-21 12:04 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2018-02-20 17:58 [PATCH v2] mm: zsmalloc: Replace return type int with bool Souptick Joarder
2018-02-21 10:22 ` Michal Hocko
2018-02-21 11:18 ` Souptick Joarder
2018-02-21 12:04 ` Michal Hocko
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).