Re: [PATCH 0/4] mm: Use slab_list list_head instead of lru

From: Tobin C. Harding
Date: Mon Mar 11 2019 - 21:06:52 EST


On Tue, Mar 12, 2019 at 12:22:23AM +0000, Roman Gushchin wrote:
> On Mon, Mar 11, 2019 at 04:16:33PM -0700, Matthew Wilcox wrote:
> > On Mon, Mar 11, 2019 at 08:49:23PM +0000, Roman Gushchin wrote:
> > > The patchset looks good to me, however I'd add some clarifications
> > > why switching from lru to slab_list is safe.
> > >
> > > My understanding is that the slab_list fields isn't currently in use,
> > > but it's not that obvious that putting slab_list and next/pages/pobjects
> > > fields into a union is safe (for the slub case).
> >
> > It's already in a union.
> >
> > struct page {
> > union {
> > struct { /* Page cache and anonymous pages */
> > struct list_head lru;
> > ...
> > struct { /* slab, slob and slub */
> > union {
> > struct list_head slab_list; /* uses lru */
> > struct { /* Partial pages */
> > struct page *next;
> >
> > slab_list and lru are in the same bits. Once this patch set is in,
> > we can remove the enigmatic 'uses lru' comment that I added.
>
> Ah, perfect, thanks! Makes total sense then.
>
> Tobin, can you, please, add a note to the commit message?
> With the note:
> Reviewed-by: Roman Gushchin <guro@xxxxxx>

Thanks for the review Roman, will add tag to v2.

Tobin.