linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: David Miller <davem@davemloft.net>
To: lethal@linux-sh.org
Cc: penberg@cs.helsinki.fi, mpm@selenic.com,
	herbert@gondor.hengli.com.au, ken@codelabs.ch,
	geert@linux-m68k.org, michael-dev@fami-braun.de,
	linux-kernel@vger.kernel.org, linux-crypto@vger.kernel.org,
	anemo@mba.ocn.ne.jp
Subject: Re: [BUG] SLOB breaks Crypto
Date: Tue, 18 May 2010 15:40:59 -0700 (PDT)	[thread overview]
Message-ID: <20100518.154059.139137292.davem@davemloft.net> (raw)
In-Reply-To: <20100518223507.GB5933@linux-sh.org>

From: Paul Mundt <lethal@linux-sh.org>
Date: Wed, 19 May 2010 07:35:10 +0900

> On Tue, May 18, 2010 at 02:20:21PM -0700, David Miller wrote:
>> So one of two things should happen:
>> 
>> 1) SLOB conforms to SLAB/SLUB in it's test
>> 
>> 2) SLAB/SLUB conforms to SLOB in it's test
>> 
>> And yes this is an either-or, you can't say they are both valid.
> 
> I don't see any reason to punish SLOB for the assumptions that SLAB/SLUB
> arbitrarily took up, presumably on an architecture that should have
> specified its own alignment requirements and simply couldn't be bothered.
> Making SLAB redzoning work with arbitrary alignment is another matter
> entirely, and something that should probably be revisited.
> 
> Anything that assumes more than BYTES_PER_WORD is simply broken and
> should be reverted.

You can't make the default different in each allocator, PERIOD.

If you can't know what the default is, how in the world can you know
if you need to override it?  You can't.  It's a guess, and you can't
say otherwise.

All of the CPP tests like the one used by linux/crypto.h are
ludicrious.  It should absolutely be not necessary for any code to
duplicate this kind of calculation.

Instead, this sequence should be in linux/slab.h, and be used
universally by slab, slub, slob and anything that wants to know the
allocators alignment guarentees.

I don't even know of a 32-bit chip outside of x86 that doesn't
potentially emit alignment requiring 64-bit memory operations for
64-bit objects.  So what SLOB is doing with a different default is
even more strange.  And I bet you that even without the requirement,
x86 runs faster with 64-bit alignment of 64-bit objects.

  parent reply	other threads:[~2010-05-18 22:40 UTC|newest]

Thread overview: 68+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-03-15 13:39 [BUG] SLOB breaks Crypto michael-dev
2010-03-18 16:30 ` Pekka Enberg
2010-03-18 21:24   ` michael-dev
2010-03-19  0:33     ` Herbert Xu
2010-05-14 14:50       ` Adrian-Ken Rueegsegger
2010-05-17 16:17       ` Geert Uytterhoeven
2010-05-17 21:50         ` Adrian-Ken Rueegsegger
2010-05-17 22:37           ` Matt Mackall
2010-05-18  8:17             ` Adrian-Ken Rueegsegger
2010-05-18 10:27               ` Herbert Xu
2010-05-18 14:02                 ` Pekka Enberg
2010-05-18 19:06                 ` Matt Mackall
2010-05-18 19:25                 ` David Miller
2010-05-18 19:33                   ` Matt Mackall
2010-05-18 20:59                     ` David Miller
2010-05-18 21:15                       ` Pekka Enberg
2010-05-18 21:20                         ` David Miller
2010-05-18 22:35                           ` Paul Mundt
2010-05-18 22:37                             ` Paul Mundt
2010-05-19 15:19                               ` Christoph Lameter
2010-05-19 19:56                                 ` David Miller
2010-05-18 22:40                             ` David Miller [this message]
2010-05-18 23:10                               ` Paul Mundt
2010-05-18 23:16                               ` Matt Mackall
2010-05-19  5:53                               ` Pekka Enberg
2010-05-18 23:20                           ` David Woodhouse
2010-05-19  1:05                             ` Herbert Xu
2010-05-19  7:14                               ` David Woodhouse
2010-05-19  7:45                                 ` Herbert Xu
2010-05-19 11:32                                 ` Geert Uytterhoeven
2010-05-19 11:40                                   ` David Woodhouse
2010-05-19 11:50                                     ` Geert Uytterhoeven
2010-05-19 14:11                                       ` Matt Mackall
2010-05-19 19:33                                         ` David Miller
2010-05-20  3:38                                           ` FUJITA Tomonori
2010-05-20  3:46                                             ` David Miller
2010-05-19 12:02                                     ` FUJITA Tomonori
2010-05-19 12:19                                       ` David Woodhouse
2010-05-19 12:26                                         ` FUJITA Tomonori
2010-05-19 12:48                                           ` David Woodhouse
2010-05-19 10:58                               ` David Woodhouse
2010-05-19 11:01                                 ` [PATCH 1/4] mm: Move ARCH_SLAB_MINALIGN and ARCH_KMALLOC_MINALIGN to <linux/slab_def.h> David Woodhouse
2010-05-19 13:30                                   ` Johannes Stezenbach
2010-05-19 18:03                                     ` Manfred Spraul
2010-05-19 18:10                                       ` David Woodhouse
2010-05-20 16:49                                         ` Manfred Spraul
2010-05-19 19:11                                   ` Pekka Enberg
2010-05-19 19:19                                     ` Christoph Lameter
2010-05-19 19:23                                       ` Pekka Enberg
2010-05-19 19:45                                         ` Christoph Lameter
2010-05-19 19:28                                       ` David Woodhouse
2010-05-19 11:01                                 ` [PATCH 2/4] mm: Move ARCH_SLAB_MINALIGN and ARCH_KMALLOC_MINALIGN to <linux/slob_def.h> David Woodhouse
2010-05-19 11:02                                 ` [PATCH 3/4] mm: Move ARCH_SLAB_MINALIGN and ARCH_KMALLOC_MINALIGN to <linux/slub_def.h> David Woodhouse
2010-05-19 11:02                                 ` [PATCH 4/4] crypto: Use ARCH_KMALLOC_MINALIGN for CRYPTO_MINALIGN now that it's exposed David Woodhouse
2010-05-19 11:08                                 ` [BUG] SLOB breaks Crypto Pekka Enberg
2010-05-19 11:16                                   ` David Woodhouse
2010-05-19 11:46                                     ` Herbert Xu
2010-05-19 12:54                                       ` Pekka Enberg
2010-05-19 12:59                                         ` Herbert Xu
2010-05-19 19:51                                           ` David Miller
2010-05-19 19:42                                     ` David Miller
2010-05-19 13:49                                 ` [PATCH 5/4] Provide __dma_aligned macro David Woodhouse
2010-05-19 14:50                                   ` FUJITA Tomonori
2010-05-19  4:09                           ` [BUG] SLOB breaks Crypto Herbert Xu
2010-05-19  5:44                           ` Pekka Enberg
2010-05-18 19:32                 ` Adrian-Ken Rueegsegger
2010-05-18 22:39                   ` Herbert Xu
2010-05-19  1:51                   ` Herbert Xu

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20100518.154059.139137292.davem@davemloft.net \
    --to=davem@davemloft.net \
    --cc=anemo@mba.ocn.ne.jp \
    --cc=geert@linux-m68k.org \
    --cc=herbert@gondor.hengli.com.au \
    --cc=ken@codelabs.ch \
    --cc=lethal@linux-sh.org \
    --cc=linux-crypto@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=michael-dev@fami-braun.de \
    --cc=mpm@selenic.com \
    --cc=penberg@cs.helsinki.fi \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).