|
Message-ID: <ba55e62d-d4e6-97ed-614e-98c33a74347b@stressinduktion.org> Date: Wed, 14 Dec 2016 21:27:07 +0100 From: Hannes Frederic Sowa <hannes@...essinduktion.org> To: "Jason A. Donenfeld" <Jason@...c4.com> Cc: David Miller <davem@...emloft.net>, David Laight <David.Laight@...lab.com>, Netdev <netdev@...r.kernel.org>, kernel-hardening@...ts.openwall.com, Andi Kleen <ak@...ux.intel.com>, LKML <linux-kernel@...r.kernel.org>, Linux Crypto Mailing List <linux-crypto@...r.kernel.org> Subject: Re: [PATCH v2 3/4] secure_seq: use siphash24 instead of md5_transform Hey Jason, On 14.12.2016 20:38, Jason A. Donenfeld wrote: > On Wed, Dec 14, 2016 at 8:22 PM, Hannes Frederic Sowa > <hannes@...essinduktion.org> wrote: >> I don't think this helps. Did you test it? I don't see reason why >> padding could be left out between `d' and `end' because of the flexible >> array member? > > Because the type u8 doesn't require any alignment requirements, it can > nestle right up there cozy with the u16: > > zx2c4@...nkpad ~ $ cat a.c > #include <stdint.h> > #include <stdio.h> > #include <stddef.h> > int main() > { > struct { > uint64_t a; > uint32_t b; > uint32_t c; > uint16_t d; > char x[]; > } a; > printf("%zu\n", sizeof(a)); > printf("%zu\n", offsetof(typeof(a), x)); > return 0; > } > zx2c4@...nkpad ~ $ gcc a.c > zx2c4@...nkpad ~ $ ./a.out > 24 > 18 Sorry, I misread the patch. You are using offsetof. In this case remove the char x[] and just use offsetofend because it is misleading otherwise. Should work like that though. What I don't really understand is that the addition of this complexity actually reduces the performance, as you have to take the "if (left)" branch during hashing and causes you to make a load_unaligned_zeropad. Bye, Hannes
Powered by blists - more mailing lists
Confused about mailing lists and their use? Read about mailing lists on Wikipedia and check out these guidelines on proper formatting of your messages.