On (03/11/16 16:30), Minchan Kim wrote: > Every zspage in a size_class has same number of max objects so > we could move it to a size_class. > > Signed-off-by: Minchan Kim <minchan@xxxxxxxxxx> > --- > mm/zsmalloc.c | 29 ++++++++++++++--------------- > 1 file changed, 14 insertions(+), 15 deletions(-) > > diff --git a/mm/zsmalloc.c b/mm/zsmalloc.c > index b4fb11831acb..ca663c82c1fc 100644 > --- a/mm/zsmalloc.c > +++ b/mm/zsmalloc.c > @@ -32,8 +32,6 @@ > * page->freelist: points to the first free object in zspage. > * Free objects are linked together using in-place > * metadata. > - * page->objects: maximum number of objects we can store in this > - * zspage (class->zspage_order * PAGE_SIZE / class->size) > * page->lru: links together first pages of various zspages. > * Basically forming list of zspages in a fullness group. > * page->mapping: class index and fullness group of the zspage > @@ -211,6 +209,7 @@ struct size_class { > * of ZS_ALIGN. > */ > int size; > + int objs_per_zspage; > unsigned int index; struct page ->objects "comes for free". now we don't use it, instead every size_class grows by 4 bytes? is there any reason for this? -ss _______________________________________________ Virtualization mailing list Virtualization@xxxxxxxxxxxxxxxxxxxxxxxxxx https://lists.linuxfoundation.org/mailman/listinfo/virtualization