Re: [PATCH] mm/z3fold.c: Fix z3fold_destroy_pool() race condition

2019-07-29 Thread Henry Burns
The constraint from the zpool use of z3fold_destroy_pool() is there are no outstanding handles to memory (so no active allocations), but it is possible for there to be outstanding work on either of the two wqs in the pool. Calling z3fold_deregister_migration() before the workqueues are drained

Re: [PATCH] mm/z3fold.c: Fix z3fold_destroy_pool() race condition

2019-07-26 Thread Jonathan Adams
On Fri, Jul 26, 2019 at 3:48 PM Henry Burns wrote: > > The constraint from the zpool use of z3fold_destroy_pool() is there are no > outstanding handles to memory (so no active allocations), but it is possible > for there to be outstanding work on either of the two wqs in the pool. > > Calling

Re: [PATCH] mm/z3fold.c: Fix z3fold_destroy_pool() race condition

2019-07-26 Thread Shakeel Butt
On Fri, Jul 26, 2019 at 3:48 PM Henry Burns wrote: > > The constraint from the zpool use of z3fold_destroy_pool() is there are no > outstanding handles to memory (so no active allocations), but it is possible > for there to be outstanding work on either of the two wqs in the pool. > > Calling

[PATCH] mm/z3fold.c: Fix z3fold_destroy_pool() race condition

2019-07-26 Thread Henry Burns
The constraint from the zpool use of z3fold_destroy_pool() is there are no outstanding handles to memory (so no active allocations), but it is possible for there to be outstanding work on either of the two wqs in the pool. Calling z3fold_deregister_migration() before the workqueues are drained