From: Romain Perier <romain.perier@free-electrons.com> To: Herbert Xu <herbert@gondor.apana.org.au> Cc: thomas.petazzoni@free-electrons.com, boris.brezillon@free-electrons.com, linux@arm.linux.org.uk, arno@natisbad.org, linux-crypto@vger.kernel.org, gregory.clement@free-electrons.com, davem@davemloft.net, linux-arm-kernel@lists.infradead.org Subject: Re: [PATCH v3 02/10] crypto: marvell: Check engine is not already running when enabling a req Date: Wed, 22 Jun 2016 13:23:39 +0200 [thread overview] Message-ID: <576A753B.7070507@free-electrons.com> (raw) In-Reply-To: <20160622103324.GA30918@gondor.apana.org.au> Hello, Le 22/06/2016 12:33, Herbert Xu a écrit : > Romain Perier <romain.perier@free-electrons.com> wrote: >> Add a BUG_ON() call when the driver tries to launch a crypto request >> while the engine is still processing the previous one. This replaces >> a silent system hang by a verbose kernel panic with the associated >> backtrace to let the user know that something went wrong in the CESA >> driver. > > Hmm, so how can this happen? If it is triggerable then we better > try to recover from it more gracefully. If it is not triggerable > then why bother? > Well, It does not happen with the current driver (in mainline). This is bug I had when I added support to chain requests. Take a look at the patch 008/010, it changes the way the requests are "prepared". If you really enable a request while the engine is running, that's very hard to debug. This is more useful to have a backtrace to let the user know that something is wrong instead of having a silent system hang. That's easier to debug and you can detect regressions. Regards, Romain -- Romain Perier, Free Electrons Embedded Linux, Kernel and Android engineering http://free-electrons.com
WARNING: multiple messages have this Message-ID (diff)
From: romain.perier@free-electrons.com (Romain Perier) To: linux-arm-kernel@lists.infradead.org Subject: [PATCH v3 02/10] crypto: marvell: Check engine is not already running when enabling a req Date: Wed, 22 Jun 2016 13:23:39 +0200 [thread overview] Message-ID: <576A753B.7070507@free-electrons.com> (raw) In-Reply-To: <20160622103324.GA30918@gondor.apana.org.au> Hello, Le 22/06/2016 12:33, Herbert Xu a ?crit : > Romain Perier <romain.perier@free-electrons.com> wrote: >> Add a BUG_ON() call when the driver tries to launch a crypto request >> while the engine is still processing the previous one. This replaces >> a silent system hang by a verbose kernel panic with the associated >> backtrace to let the user know that something went wrong in the CESA >> driver. > > Hmm, so how can this happen? If it is triggerable then we better > try to recover from it more gracefully. If it is not triggerable > then why bother? > Well, It does not happen with the current driver (in mainline). This is bug I had when I added support to chain requests. Take a look at the patch 008/010, it changes the way the requests are "prepared". If you really enable a request while the engine is running, that's very hard to debug. This is more useful to have a backtrace to let the user know that something is wrong instead of having a silent system hang. That's easier to debug and you can detect regressions. Regards, Romain -- Romain Perier, Free Electrons Embedded Linux, Kernel and Android engineering http://free-electrons.com
next prev parent reply other threads:[~2016-06-22 11:23 UTC|newest] Thread overview: 32+ messages / expand[flat|nested] mbox.gz Atom feed top 2016-06-21 8:08 [PATCH v3 00/10] Chain crypto requests together at the DMA level Romain Perier 2016-06-21 8:08 ` Romain Perier 2016-06-21 8:08 ` [PATCH v3 01/10] crypto: marvell: Add a macro constant for the size of the crypto queue Romain Perier 2016-06-21 8:08 ` Romain Perier 2016-06-21 8:08 ` [PATCH v3 02/10] crypto: marvell: Check engine is not already running when enabling a req Romain Perier 2016-06-21 8:08 ` Romain Perier 2016-06-22 10:33 ` Herbert Xu 2016-06-22 10:33 ` Herbert Xu 2016-06-22 11:23 ` Romain Perier [this message] 2016-06-22 11:23 ` Romain Perier 2016-06-23 10:44 ` Herbert Xu 2016-06-23 10:44 ` Herbert Xu 2016-06-21 8:08 ` [PATCH v3 03/10] crypto: marvell: Fix wrong type check in dma functions Romain Perier 2016-06-21 8:08 ` Romain Perier 2016-06-21 8:08 ` [PATCH v3 04/10] crypto: marvell: Copy IV vectors by DMA transfers for acipher requests Romain Perier 2016-06-21 8:08 ` Romain Perier 2016-06-21 8:08 ` [PATCH v3 05/10] crypto: marvell: Move tdma chain out of mv_cesa_tdma_req and remove it Romain Perier 2016-06-21 8:08 ` Romain Perier 2016-06-21 8:08 ` [PATCH v3 06/10] crypto: marvell: Add a complete operation for async requests Romain Perier 2016-06-21 8:08 ` Romain Perier 2016-06-21 8:08 ` [PATCH v3 07/10] crypto: marvell: Move SRAM I/O operations to step functions Romain Perier 2016-06-21 8:08 ` Romain Perier 2016-06-21 8:08 ` [PATCH v3 08/10] crypto: marvell: Add load balancing between engines Romain Perier 2016-06-21 8:08 ` Romain Perier 2016-06-21 12:33 ` Boris Brezillon 2016-06-21 12:33 ` Boris Brezillon 2016-06-21 8:08 ` [PATCH v3 09/10] crypto: marvell: Add support for chaining crypto requests in TDMA mode Romain Perier 2016-06-21 8:08 ` Romain Perier 2016-06-21 12:37 ` Boris Brezillon 2016-06-21 12:37 ` Boris Brezillon 2016-06-21 8:08 ` [PATCH v3 10/10] crypto: marvell: Increase the size of the crypto queue Romain Perier 2016-06-21 8:08 ` Romain Perier
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=576A753B.7070507@free-electrons.com \ --to=romain.perier@free-electrons.com \ --cc=arno@natisbad.org \ --cc=boris.brezillon@free-electrons.com \ --cc=davem@davemloft.net \ --cc=gregory.clement@free-electrons.com \ --cc=herbert@gondor.apana.org.au \ --cc=linux-arm-kernel@lists.infradead.org \ --cc=linux-crypto@vger.kernel.org \ --cc=linux@arm.linux.org.uk \ --cc=thomas.petazzoni@free-electrons.com \ /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: linkBe sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.