On (22/10/27 11:27), Nhat Pham wrote: [..] > @@ -482,6 +504,7 @@ static struct zpool_driver zs_zpool_driver = { > .malloc_support_movable = true, > .malloc = zs_zpool_malloc, > .free = zs_zpool_free, > + .shrink = zs_zpool_shrink, This should use tabs, just like the rest of fields. > .map = zs_zpool_map, > .unmap = zs_zpool_unmap, > .total_size = zs_zpool_total_size, > @@ -955,6 +978,21 @@ static int trylock_zspage(struct zspage *zspage) > return 0; > } > > +/* > + * Free all the deferred handles whose objects are freed in zs_free. > + */ > +static void free_handles(struct zs_pool *pool, struct zspage *zspage) > +{ > + unsigned long handle = (unsigned long) zspage->deferred_handles; A nit: we don't put a white space in cases like this. IOW (unsigned long)zspage->.... here in everywhere else in this series.