Re: [PATCH v2] zbud: allow up to PAGE_SIZE allocations

From: Sergey Senozhatsky
Date: Fri Sep 25 2015 - 04:04:48 EST


On (09/25/15 11:13), Minchan Kim wrote:
> > Ok, I can see that having the allocator backends for zpool
> > have the same set of constraints is nice.
>
> Sorry for delay. I'm on vacation until next week.
> It seems Seth was missed in previous discusstion which was not the end.
>
> I already said questions, opinion and concerns but anything is not clear
> until now. Only clear thing I could hear is just "compaction stats are
> better" which is not enough for me. Sorry.

Agree.

There weren't lots of answers, really.

Vitaly,

Have you seen those symptoms before? How did you come up to a conclusion
that zram->zbud will do the trick?

If those symptoms are some sort of a recent addition, then does it help
when you disable zsmalloc compaction?

---

diff --git a/mm/zsmalloc.c b/mm/zsmalloc.c
index f59e8eb..b6c6a19 100644
--- a/mm/zsmalloc.c
+++ b/mm/zsmalloc.c
@@ -1944,8 +1944,8 @@ struct zs_pool *zs_create_pool(const char *name, gfp_t flags)
* Not critical, we still can use the pool
* and user can trigger compaction manually.
*/
- if (zs_register_shrinker(pool) == 0)
- pool->shrinker_enabled = true;
+/* if (zs_register_shrinker(pool) == 0)
+ pool->shrinker_enabled = true;*/
return pool;

err:

---


p.s. I'll be on vacation next week, so most likely will be quite slow
to answer.

-ss

>
> 1) https://lkml.org/lkml/2015/9/15/33
> 2) https://lkml.org/lkml/2015/9/21/2
>
> Vitally, Please say what's the root cause of your problem and if it
> is external fragmentation, what's the problem of my approach?
>
> 1) make non-LRU page migrate
> 2) provide zsmalloc's migratpage
>
> We should provide it for CMA as well as external fragmentation.
> I think we could solve your issue with above approach and
> it fundamentally makes zsmalloc/zbud happy in future.
>
> Also, please keep it in mind that zram has been in linux kernel for
> memory efficiency for a long time and later zswap/zbud was born
> for *determinism* at the cost of memory efficiency.
>
> Thanks.
>
> --
> To unsubscribe, send a message with 'unsubscribe linux-mm' in
> the body to majordomo@xxxxxxxxxx For more info on Linux MM,
> see: http://www.linux-mm.org/ .
> Don't email: <a href=mailto:"dont@xxxxxxxxx";> email@xxxxxxxxx </a>
>
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/