On Mon, Feb 22, 2016 at 11:01:13AM +0900, Sergey Senozhatsky wrote: > On (02/22/16 10:34), Minchan Kim wrote: > [..] > > > > I tempted it several times with same reason you pointed out. > > > > But my worry was that if we increase ZS_MAX_ZSPAGE_ORDER, zram can > > > > consume more memory because we need several pages chain to populate > > > > just a object. Even, at that time, we didn't have compaction scheme > > > > so fragmentation of object in zspage is huge pain to waste memory. > > > > > > well, the thing is -- we end up requesting less pages after all, so > > > zsmalloc has better chances to survive. for example, gcc5 compilation test > > > > Indeed. I saw your test result. > > > [..] > > > Total 129 489 1627756 1618193 850147 > > > > > > > > > that's 891703 - 850147 = 41556 less pages. or 162MB less memory used. > > > 41556 less pages means that zsmalloc had 41556 less chances to fail. > > > > > > Let's think swap-case which is more important for zram now. As you know, > > most of usecase are swap in embedded world. > > Do we really need 16 pages allocator for just less PAGE_SIZE objet > > at the moment which is really heavy memory pressure? > > I'll take a look at dynamic class page addition. Thanks, Sergey. Just a note: I am preparing zsmalloc migration now and almost done so I hope I can send it within two weeks. In there, I changed a lot of things in zsmalloc, page chaining, struct page fields usecases and locking scheme and so on. The zsmalloc fragment/migration is really painful now so we should solve it first so I hope you help to review that and let's go further dynamic chaining after that, please. :) -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@xxxxxxxxx. For more info on Linux MM, see: http://www.linux-mm.org/ . Don't email: <a href=mailto:"dont@xxxxxxxxx"> email@xxxxxxxxx </a>