Re: [PATCH] mm/zpool: use workqueue for zpool_destroy

From: Andrew Morton
Date: Mon Apr 25 2016 - 17:46:28 EST


On Mon, 25 Apr 2016 17:20:10 -0400 Dan Streetman <ddstreet@xxxxxxxx> wrote:

> Add a work_struct to struct zpool, and change zpool_destroy_pool to
> defer calling the pool implementation destroy.
>
> The zsmalloc pool destroy function, which is one of the zpool
> implementations, may sleep during destruction of the pool. However
> zswap, which uses zpool, may call zpool_destroy_pool from atomic
> context. So we need to defer the call to the zpool implementation
> to destroy the pool.
>
> This is essentially the same as Yu Zhao's proposed patch to zsmalloc,
> but moved to zpool.

OK, but the refrain remains the same: what are the runtime effects of
the change? Are real people in real worlds seeing scary kernel
warnings? Deadlocks?

This info is needed so that I and others can decide which kernel
version(s) should be patched.

Thanks.