Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1309408

Re: [PATCH 09/16] mm/slab: put the freelist at the end of slab page

From Christoph Lameter <cl@linux.com>
Newsgroups linux.kernel
Subject Re: [PATCH 09/16] mm/slab: put the freelist at the end of slab page
Date 2016-01-14 16:40 +0100
Message-ID <qQSad-yO-11@gated-at.bofh.it> (permalink)
References <qQIDU-2oH-3@gated-at.bofh.it> <qQIDV-2oH-27@gated-at.bofh.it>
Organization linux.* mail to news gateway

Show all headers | View raw


On Thu, 14 Jan 2016, Joonsoo Kim wrote:

> Currently, the freelist is at the front of slab page. This requires
> extra space to meet object alignment requirement. If we put the freelist
> at the end of slab page, object could start at page boundary and will
> be at correct alignment. This is possible because freelist has
> no alignment constraint itself.
>
> This gives us two benefits. It removes extra memory space
> for the freelist alignment and remove complex calculation
> at cache initialization step. I can't think notable drawback here.


The third one is that the padding space at the end of the slab could
actually be used for the freelist if it fits.

The drawback may be that the location of the freelist at the beginning of
the page is more cache effective because the cache prefetcher may be able
to get the following cachelines and effectively hit the first object.
However, this is rather dubious speculation.

Back to linux.kernel | Previous | NextPrevious in thread | Next in thread | Find similar | Unroll thread


Thread

[PATCH 00/16] mm/slab: introduce new freed objects management way, OBJFREELIST_SLAB Joonsoo Kim <js1304@gmail.com> - 2016-01-14 06:30 +0100
  [PATCH 01/16] mm/slab: fix stale code comment Joonsoo Kim <js1304@gmail.com> - 2016-01-14 06:30 +0100
    Re: [PATCH 01/16] mm/slab: fix stale code comment Christoph Lameter <cl@linux.com> - 2016-01-14 16:30 +0100
  [PATCH 06/16] mm/slab: clean-up DEBUG_PAGEALLOC processing code Joonsoo Kim <js1304@gmail.com> - 2016-01-14 06:30 +0100
  [PATCH 08/16] mm/slab: remove object status buffer for DEBUG_SLAB_LEAK Joonsoo Kim <js1304@gmail.com> - 2016-01-14 06:30 +0100
  [PATCH 09/16] mm/slab: put the freelist at the end of slab page Joonsoo Kim <js1304@gmail.com> - 2016-01-14 06:30 +0100
    Re: [PATCH 09/16] mm/slab: put the freelist at the end of slab  page Christoph Lameter <cl@linux.com> - 2016-01-14 16:40 +0100
      Re: [PATCH 09/16] mm/slab: put the freelist at the end of slab page Joonsoo Kim <js1304@gmail.com> - 2016-01-14 17:30 +0100
    Re: [PATCH 09/16] mm/slab: put the freelist at the end of slab  page Christoph Lameter <cl@linux.com> - 2016-01-14 18:20 +0100
  [PATCH 12/16] mm/slab: do not change cache size if debug pagealloc isn't possible Joonsoo Kim <js1304@gmail.com> - 2016-01-14 06:30 +0100
  [PATCH 14/16] mm/slab: factor out slab list fixup code Joonsoo Kim <js1304@gmail.com> - 2016-01-14 06:30 +0100

csiph-web