On Wed, Jan 19, 2022 at 03:35:38PM +0100, Uladzislau Rezki (Sony) wrote: > +static void drain_vmap_area(struct work_struct *work) Nit, but I prefer to have a _work postix for workers just to keep it easy to ready. > /* After this point, we may free va at any time */ > if (unlikely(nr_lazy > lazy_max_pages())) > - try_purge_vmap_area_lazy(); > + if (!atomic_xchg(&drain_vmap_area_work_in_progress, 1)) > + schedule_work(&drain_vmap_area_work); Work items are defined to be single threaded, so I don't think we need the drain_vmap_area_work_in_progress hack. > > /* > -- > 2.30.2 > > ---end quoted text---