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


Groups > linux.kernel > #1400516

Re: SHA1-MB algorithm broken on latest kernel

From Ingo Molnar <mingo@kernel.org>
Newsgroups linux.kernel
Subject Re: SHA1-MB algorithm broken on latest kernel
Date 2016-05-13 08:00 +0200
Message-ID <ryeiL-5hs-11@gated-at.bofh.it> (permalink)
References <ry8dk-7SC-3@gated-at.bofh.it> <rybNU-2U0-11@gated-at.bofh.it>
Organization linux.* mail to news gateway

Show all headers | View raw


* Herbert Xu <herbert@gondor.apana.org.au> wrote:

> On Thu, May 12, 2016 at 04:31:06PM -0700, Megha Dey wrote:
> > Hi,
> >  
> > When booting latest kernel with the CONFIG_CRYPTO_SHA1_MB enabled, I
> > observe a panic.
> >  
> > After having a quick look, on reverting the following patches, I am able
> > to complete the booting process.
> > aec4d0e301f17bb143341c82cc44685b8af0b945
> > 8691ccd764f9ecc69a6812dfe76214c86ac9ba06
> > 68874ac3304ade7ed5ebb12af00d6b9bbbca0a16
> >  
> > Of the 3 patches, aec4d0e301f17bb143341c82cc44685b8af0b945 seems wrong.
> > The r10 to r15 registers are used in sha1_x8_avx2.S, which is called
> > from sha1_mb_mgr_flush_avx2.S.
> >
> > I do not think the functionality of the SHA1-MB crypto algorithm has
> > been tested after applying these changes. (I am not sure if any of the
> > other crypto algorithms have been affected by these changes).
> 
> Josh, Ingo:
> 
> Any ideas on this? Should we revert?

Yeah, I think so - although another option would be to standardize sha1_x8_avx2() 
- the problem is that it is a function that clobbers registers without 
saving/restoring them, breaking the C function ABI. I realize it's written in 
assembly, but unless there are strong performance reasons to deviate from the 
regular calling convention it might make sense to fix that.

Do any warnings get generated after the revert, if you enable 
CONFIG_STACK_VALIDATION=y?

Thanks,

	Ingo

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


Thread

SHA1-MB algorithm broken on latest kernel Megha Dey <megha.dey@linux.intel.com> - 2016-05-13 01:30 +0200
  Re: SHA1-MB algorithm broken on latest kernel Herbert Xu <herbert@gondor.apana.org.au> - 2016-05-13 05:20 +0200
    Re: SHA1-MB algorithm broken on latest kernel Ingo Molnar <mingo@kernel.org> - 2016-05-13 08:00 +0200
      Re: SHA1-MB algorithm broken on latest kernel Megha Dey <megha.dey@linux.intel.com> - 2016-05-13 19:30 +0200
        Re: SHA1-MB algorithm broken on latest kernel Josh Poimboeuf <jpoimboe@redhat.com> - 2016-05-16 16:50 +0200
          Re: SHA1-MB algorithm broken on latest kernel Megha Dey <megha.dey@linux.intel.com> - 2016-05-16 20:30 +0200
            [PATCH] crypto/sha1-mb: make sha1_x8_avx2() conform to C function ABI Josh Poimboeuf <jpoimboe@redhat.com> - 2016-05-16 22:20 +0200
              Re: [PATCH] crypto/sha1-mb: make sha1_x8_avx2() conform to C  function ABI Megha Dey <megha.dey@linux.intel.com> - 2016-05-16 23:40 +0200
                Re: [PATCH] crypto/sha1-mb: make sha1_x8_avx2() conform to C  function ABI Josh Poimboeuf <jpoimboe@redhat.com> - 2016-05-16 23:50 +0200
                Re: [PATCH] crypto/sha1-mb: make sha1_x8_avx2() conform to C  function ABI Megha Dey <megha.dey@linux.intel.com> - 2016-05-17 01:10 +0200
                Re: [PATCH] crypto/sha1-mb: make sha1_x8_avx2() conform to C  function ABI Herbert Xu <herbert@gondor.apana.org.au> - 2016-05-17 08:40 +0200

csiph-web