"Alice Ryhl" <aliceryhl@xxxxxxxxxx> writes: > Adds an MmWithUserAsync type that uses mmput_async when dropped but is > otherwise identical to MmWithUser. This has to be done using a separate > type because the thing we are changing is the destructor. > > Rust Binder needs this to avoid a certain deadlock. See commit > 9a9ab0d96362 ("binder: fix race between mmput() and do_exit()") for > details. It's also needed in the shrinker to avoid cleaning up the mm in > the shrinker's context. > > Acked-by: Lorenzo Stoakes <lorenzo.stoakes@xxxxxxxxxx> (for mm bits) > Signed-off-by: Alice Ryhl <aliceryhl@xxxxxxxxxx> Reviewed-by: Andreas Hindborg <a.hindborg@xxxxxxxxxx> Best regards, Andreas Hindborg