crypto: tcrypt - don't disable irqs and wait
authorGilad Ben-Yossef <gilad@benyossef.com>
Tue, 25 Apr 2017 08:25:40 +0000 (11:25 +0300)
committerHerbert Xu <herbert@gondor.apana.org.au>
Thu, 18 May 2017 05:19:48 +0000 (13:19 +0800)
The tcrypt AEAD cycles speed tests disables irqs during the test, which is
broken at the very least since commit
'1425d2d17f7309c6 ("crypto: tcrypt - Fix AEAD speed tests")'
adds a wait for completion as part of the test and probably since
switching to the new AEAD API.

While the result of taking a cycle count diff may not mean much on SMP
systems if the task migrates, it's good enough for tcrypt being the quick
& dirty dev tool it is. It's also what all the other (i.e. hash) cycle
speed tests do.

Signed-off-by: Gilad Ben-Yossef <gilad@benyossef.com>
Reported-by: Ofir Drang <ofir.drang@arm.com>
Reviewed-by: Horia Geantă <horia.geanta@nxp.com>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
crypto/tcrypt.c

index 9a11f3c2bf983ebc79b407a7d65d0cb3fb4306d9..0dd6a432d6ca959e5eadc346583bd7275761fd99 100644 (file)
@@ -138,8 +138,6 @@ static int test_aead_cycles(struct aead_request *req, int enc, int blen)
        int ret = 0;
        int i;
 
-       local_irq_disable();
-
        /* Warm-up run. */
        for (i = 0; i < 4; i++) {
                if (enc)
@@ -169,8 +167,6 @@ static int test_aead_cycles(struct aead_request *req, int enc, int blen)
        }
 
 out:
-       local_irq_enable();
-
        if (ret == 0)
                printk("1 operation in %lu cycles (%d bytes)\n",
                       (cycles + 4) / 8, blen);