Re: [PATCH v3] zsmalloc: zs_page_migrate: schedule free_work if zspage is ZS_EMPTY

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Wed, Aug 16, 2017 at 11:19:41AM +0800, Hui Zhu wrote:
> After commit [1] zs_page_migrate can handle the ZS_EMPTY zspage.
> 
> But I got some false in zs_page_isolate:
> 	if (get_zspage_inuse(zspage) == 0) {
> 		spin_unlock(&class->lock);
> 		return false;
> 	}
> The page of this zspage was migrated in before.
> 
> The reason is commit [1] just handle the "page" but not "newpage"
> then it keep the "newpage" with a empty zspage inside system.
> Root cause is zs_page_isolate remove it from ZS_EMPTY list but not
> call zs_page_putback "schedule_work(&pool->free_work);".  Because
> zs_page_migrate done the job without "schedule_work(&pool->free_work);"
> 
> Make this patch let zs_page_migrate wake up free_work if need.
> 
> [1] zsmalloc-zs_page_migrate-skip-unnecessary-loops-but-not-return-ebusy-if-zspage-is-not-inuse-fix.patch
> 
> Signed-off-by: Hui Zhu <zhuhui@xxxxxxxxxx>
Acked-by: Minchan Kim <minchan@xxxxxxxxxx>

Thanks!

--
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>



[Index of Archives]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Bugtraq]     [Linux OMAP]     [Linux MIPS]     [eCos]     [Asterisk Internet PBX]     [Linux API]
  Powered by Linux