On 2023/12/5 05:41, Christoph Lameter (Ampere) wrote: > On Thu, 2 Nov 2023, chengming.zhou@xxxxxxxxx wrote: > >> From: Chengming Zhou <zhouchengming@xxxxxxxxxxxxx> >> >> The current updated scheme (which this series implemented) is: >> - node partial slabs: PG_Workingset && !frozen >> - cpu partial slabs: !PG_Workingset && !frozen >> - cpu slabs: !PG_Workingset && frozen >> - full slabs: !PG_Workingset && !frozen > > The above would be good to include in the comments. > > Acked-by: Christoph Lameter (Ampere) <cl@xxxxxxxxx> > Thanks for your review and suggestion! Maybe something like this: diff --git a/mm/slub.c b/mm/slub.c index 623c17a4cdd6..21f88bd9c16b 100644 --- a/mm/slub.c +++ b/mm/slub.c @@ -93,6 +93,12 @@ * by clearing the PG_workingset flag when moving out of the node * partial list. Please see __slab_free() for more details. * + * To sum up, the current scheme is: + * - node partial slab: PG_Workingset && !frozen + * - cpu partial slab: !PG_Workingset && !frozen + * - cpu slab: !PG_Workingset && frozen + * - full slab: !PG_Workingset && !frozen + * * list_lock * * The list_lock protects the partial and full list on each node and