Messages in this thread | | | Date | Mon, 6 Jul 2015 23:01:52 +0900 | From | Minchan Kim <> | Subject | Re: [PATCH v5 5/7] zsmalloc/zram: store compaction stats in zspool |
| |
On Mon, Jul 06, 2015 at 10:56:46PM +0900, Sergey Senozhatsky wrote: > On (07/06/15 22:27), Minchan Kim wrote: > > > `zs_compact_control' accounts the number of migrated objects but > > > it has a limited lifespan -- we lose it as soon as zs_compaction() > > > returns back to zram. It was fine, because (a) zram had it's own > > > counter of migrated objects and (b) only zram could trigger > > > compaction. However, this does not work for automatic pool > > > compaction (not issued by zram). To account objects migrated > > > during auto-compaction (issued by the shrinker) we need to store > > > this number in zs_pool. > > > > > > A new zsmalloc zs_get_num_migrated() symbol exports zs_pool's > > > ->num_migrated counter, so we better start using it, rather than > > > continue keeping zram's own `num_migrated' copy in zram_stats. > > > > If we introduce like this API we should make new another API when > > we want to introduce new stats. So I don't think it's a good idea. > > How about this? > > > > void zsmalloc_stats(struct zsmalloc_stats *stats); > > > > So, we could return any upcoming stats without new API introduce. > > > > Hm, agree. Do you prefer me to fold this into this patch set or to do as > a separate work later?
Let's fold it so your next patch can use it for getting num_compacted.
> > > P.S. > > Sorry. Seems that my git send-email has some problems, so group-reply > in mutt does not work as expected. > > > -ss
-- Kind regards, Minchan Kim
| |