From: boris.brezillon@free-electrons.com (Boris Brezillon)
To: linux-arm-kernel@lists.infradead.org
Subject: crypto: marvell/CESA: Issues with non cache-line aligned buffers
Date: Fri, 3 Jul 2015 16:19:10 +0200 [thread overview]
Message-ID: <20150703161910.5089bcb2@bbrezillon> (raw)
In-Reply-To: <20150703131059.GX7557@n2100.arm.linux.org.uk>
Hi Russel,
On Fri, 3 Jul 2015 14:10:59 +0100
Russell King - ARM Linux <linux@arm.linux.org.uk> wrote:
> BTW, off-topic for this thread... but I notice from Mark Brown's builder
> that mv_cesa is causing build errors in mainline now:
>
> arm-allmodconfig
> ../drivers/crypto/mv_cesa.c:1037:2: error: implicit declaration of function 'of_get_named_gen_pool' [-Werror=implicit-function-declaration]
>
> arm-multi_v5_defconfig
> ../drivers/crypto/mv_cesa.c:1037:2: error: implicit declaration of function 'of_get_named_gen_pool' [-Werror=implicit-function-declaration]
>
> It seems it was fine on July 2nd, but the above was introduced today.
It has been fixed by Stephen in linux-next (see [1]).
>
> A few other things I notice when looking at this code:
>
> /* Not all platforms can gate the clock, so it is not
> an error if the clock does not exists. */
> cp->clk = clk_get(&pdev->dev, NULL);
> if (!IS_ERR(cp->clk))
> clk_prepare_enable(cp->clk);
>
> So, if clk_get() returns PTR_ERR(-EPROBE_DEFER) we treat that clock as
> missing? Is that really the behaviour you want there?
Nope, I'll fix that.
>
> ret = request_irq(irq, crypto_int, 0, dev_name(&pdev->dev),
> cp);
>
> What happens if crypto_int() is called when request_irq() unlocks its
> spinlock, before the clock has been found? Eg, because we're booting
> from a kexec'd kernel.
I don't know, and I agree that we should either request the clock
before registering the irq, or disable the IRQ using the
SEC_ACCEL_INT_MASK before calling request_irq. Ideally we should do
both.
Note that none of my patches changed the clk_get(), request_irq() calls
order, or the clk_get() error path ;-).
Anyway, I'll propose a patch fixing the problem.
Thanks for the feedback,
Boris
[1]https://git.kernel.org/cgit/linux/kernel/git/next/linux-next.git/commit/drivers/crypto/mv_cesa.c?id=7e6ce3db5329a32c83da9753bae162eb3f22dfca
--
Boris Brezillon, Free Electrons
Embedded Linux and Kernel engineering
http://free-electrons.com
next prev parent reply other threads:[~2015-07-03 14:19 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-07-03 9:43 crypto: marvell/CESA: Issues with non cache-line aligned buffers Boris Brezillon
2015-07-03 9:58 ` Russell King - ARM Linux
2015-07-03 14:23 ` Boris Brezillon
2015-07-03 13:10 ` Russell King - ARM Linux
2015-07-03 14:19 ` Boris Brezillon [this message]
2015-07-03 14:41 ` Andrew Lunn
2015-07-04 7:33 ` Herbert Xu
2015-07-04 7:37 ` Herbert Xu
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=20150703161910.5089bcb2@bbrezillon \
--to=boris.brezillon@free-electrons.com \
--cc=linux-arm-kernel@lists.infradead.org \
/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: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).