On 2023/10/24 00:22, Matthew Wilcox wrote: > On Mon, Oct 23, 2023 at 01:32:27PM +0100, Matthew Wilcox wrote: >> _Assuming_ that it's safe to use the non-atomic flag setting, I'd >> rather see this done as ... >> >> static inline void slab_set_node_partial(struct slab *slab) >> { >> __folio_set_workingset(slab_folio(slab)); > > Ugh, I meant to delete this line. I meant to just write the next line. > >> __set_bit(PG_workingset, folio_flags(slab_folio(slab), 0)); >> } Yes, it's safe to use the non-atomic version here, since it's protected by the slub per-node list_lock and we want better performance here. Ok, will change to directly use __set_bit() and __clear_bit() instead of polluting the "workingset" interfaces there. Thanks.