On Tue, Mar 7, 2023 at 11:10 AM Herbert Xu <herbert@xxxxxxxxxxxxxxxxxxx> wrote: > On Mon, Mar 06, 2023 at 11:08:13AM +0100, Linus Walleij wrote: > > > > This partly works (after my folded in fix in patch 5)! > > > > Clean SHA1 and SHA256 works flawlessly. > > HMAC still fails, but not until we start testing random vectors: > > > > [ 7.541954] alg: ahash: stm32-hmac-sha256 digest() failed on test > > vector "random: psize=0 ksize=80"; expected_error=0, > > actual_error=-110, cfg="random: may_sleep" > > [ 7.567212] alg: self-tests for hmac(sha256) using > > stm32-hmac-sha256 failed (rc=-110) > > So it's timing out. I wonder if the timeout in stm32_hash_wait_busy > is long enough. Perhaps try adding a zero so that the timeout becomes > 100,000us and see if it still breaks? Sadly this doesn't work. I tried increasing with one and even two orders of magnitude, but the timeouts still happen, usually two of them, sometimes one sometimes three, depending on randomness, as can be expected. I think you mentioned something about that we need to store the key in the state as well though? Yours, Linus Walleij