From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1757339AbYCCUG3 (ORCPT ); Mon, 3 Mar 2008 15:06:29 -0500 Received: (majordomo@vger.kernel.org) by vger.kernel.org id S1754356AbYCCUGQ (ORCPT ); Mon, 3 Mar 2008 15:06:16 -0500 Received: from cantor.suse.de ([195.135.220.2]:42463 "EHLO mx1.suse.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1754351AbYCCUGP (ORCPT ); Mon, 3 Mar 2008 15:06:15 -0500 Date: Mon, 3 Mar 2008 21:06:13 +0100 From: Nick Piggin To: Christoph Lameter Cc: netdev@vger.kernel.org, Linux Kernel Mailing List , yanmin_zhang@linux.intel.com, David Miller , Eric Dumazet Subject: Re: [rfc][patch 1/3] slub: fix small HWCACHE_ALIGN alignment Message-ID: <20080303200613.GC8974@wotan.suse.de> References: <20080303093449.GA15091@wotan.suse.de> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.5.9i Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Mon, Mar 03, 2008 at 11:08:44AM -0800, Christoph Lameter wrote: > On Mon, 3 Mar 2008, Nick Piggin wrote: > > > SLUB should pack even small objects nicely into cachelines if that is what > > has been asked for. Use the same algorithm as SLAB for this. > > Why? SLAB does not cacheline align objects smaller than cache_line_size() > /2. It still doesn't after this patch. > If they are already not cache line aligned then we can make them as > dense as possible. That is what SLUB does. Because when you specify HWCACHE_ALIGN, it means that you want the object not to cross cacheline boundaries for at least cache_line_size() bytes. SLAB does this. SLUB does not without this patch.