[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20150907121907.GA5531@node.dhcp.inet.fi>
Date: Mon, 7 Sep 2015 15:19:07 +0300
From: "Kirill A. Shutemov" <kirill@...temov.name>
To: Alexander Duyck <alexander.duyck@...il.com>
Cc: "Kirill A. Shutemov" <kirill.shutemov@...ux.intel.com>,
Andrew Morton <akpm@...ux-foundation.org>,
Hugh Dickins <hughd@...gle.com>,
Andrea Arcangeli <aarcange@...hat.com>,
Dave Hansen <dave.hansen@...el.com>,
Vlastimil Babka <vbabka@...e.cz>,
Johannes Weiner <hannes@...xchg.org>,
Michal Hocko <mhocko@...e.cz>,
David Rientjes <rientjes@...gle.com>,
"Aneesh Kumar K.V" <aneesh.kumar@...ux.vnet.ibm.com>,
linux-kernel@...r.kernel.org, linux-mm@...ck.org,
Joonsoo Kim <iamjoonsoo.kim@....com>,
Andi Kleen <ak@...ux.intel.com>
Subject: Re: [PATCHv5 1/7] mm: drop page->slab_page
On Sun, Sep 06, 2015 at 10:00:57PM -0700, Alexander Duyck wrote:
> On 09/03/2015 05:35 AM, Kirill A. Shutemov wrote:
> >Since 8456a648cf44 ("slab: use struct page for slab management") nobody
> >uses slab_page field in struct page.
> >
> >Let's drop it.
> >
> >Signed-off-by: Kirill A. Shutemov <kirill.shutemov@...ux.intel.com>
> >Acked-by: Christoph Lameter <cl@...ux.com>
> >Acked-by: David Rientjes <rientjes@...gle.com>
> >Acked-by: Vlastimil Babka <vbabka@...e.cz>
> >Cc: Joonsoo Kim <iamjoonsoo.kim@....com>
> >Cc: Andi Kleen <ak@...ux.intel.com>
> >---
> > include/linux/mm_types.h | 1 -
> > mm/slab.c | 17 +++--------------
> > 2 files changed, 3 insertions(+), 15 deletions(-)
> >
> >diff --git a/include/linux/mm_types.h b/include/linux/mm_types.h
> >index 0038ac7466fd..58620ac7f15c 100644
> >--- a/include/linux/mm_types.h
> >+++ b/include/linux/mm_types.h
> >@@ -140,7 +140,6 @@ struct page {
> > #endif
> > };
> >- struct slab *slab_page; /* slab fields */
> > struct rcu_head rcu_head; /* Used by SLAB
> > * when destroying via RCU
> > */
> >diff --git a/mm/slab.c b/mm/slab.c
> >index 200e22412a16..649044f26e5d 100644
> >--- a/mm/slab.c
> >+++ b/mm/slab.c
> >@@ -1888,21 +1888,10 @@ static void slab_destroy(struct kmem_cache *cachep, struct page *page)
> > freelist = page->freelist;
> > slab_destroy_debugcheck(cachep, page);
> >- if (unlikely(cachep->flags & SLAB_DESTROY_BY_RCU)) {
> >- struct rcu_head *head;
> >-
> >- /*
> >- * RCU free overloads the RCU head over the LRU.
> >- * slab_page has been overloeaded over the LRU,
> >- * however it is not used from now on so that
> >- * we can use it safely.
> >- */
> >- head = (void *)&page->rcu_head;
> >- call_rcu(head, kmem_rcu_free);
> >-
> >- } else {
> >+ if (unlikely(cachep->flags & SLAB_DESTROY_BY_RCU))
> >+ call_rcu(&page->rcu_head, kmem_rcu_free);
> >+ else
> > kmem_freepages(cachep, page);
> >- }
> > /*
> > * From now on, we don't use freelist
>
> This second piece looks like it belongs in patch 2, not patch 1 based on the
> descriptions.
You're right.
Although I don't think I would re-spin the patchset just for this change.
If any other change would be required, I'll fix this too.
--
Kirill A. Shutemov
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists