From: "Levin, Alexander (Sasha Levin)" <alexander.levin@verizon.com>
To: "linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
"stable@vger.kernel.org" <stable@vger.kernel.org>
Cc: Li Zhong <zhong@linux.vnet.ibm.com>,
Herbert Xu <herbert@gondor.apana.org.au>,
"Levin, Alexander (Sasha Levin)" <alexander.levin@verizon.com>
Subject: [PATCH AUTOSEL for 4.4 12/25] crypto: vmx - disable preemption to enable vsx in aes_ctr.c
Date: Wed, 25 Oct 2017 01:56:16 +0000 [thread overview]
Message-ID: <20171025015607.24625-12-alexander.levin@verizon.com> (raw)
In-Reply-To: <20171025015607.24625-1-alexander.levin@verizon.com>
From: Li Zhong <zhong@linux.vnet.ibm.com>
[ Upstream commit 7dede913fc2ab9c0d3bff3a49e26fa9e858b0c13 ]
Some preemptible check warnings were reported from enable_kernel_vsx(). This
patch disables preemption in aes_ctr.c before enabling vsx, and they are now
consistent with other files in the same directory.
Signed-off-by: Li Zhong <zhong@linux.vnet.ibm.com>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Signed-off-by: Sasha Levin <alexander.levin@verizon.com>
---
drivers/crypto/vmx/aes_ctr.c | 6 ++++++
1 file changed, 6 insertions(+)
diff --git a/drivers/crypto/vmx/aes_ctr.c b/drivers/crypto/vmx/aes_ctr.c
index 72f138985e18..d83ab4bac8b1 100644
--- a/drivers/crypto/vmx/aes_ctr.c
+++ b/drivers/crypto/vmx/aes_ctr.c
@@ -80,11 +80,13 @@ static int p8_aes_ctr_setkey(struct crypto_tfm *tfm, const u8 *key,
int ret;
struct p8_aes_ctr_ctx *ctx = crypto_tfm_ctx(tfm);
+ preempt_disable();
pagefault_disable();
enable_kernel_altivec();
enable_kernel_vsx();
ret = aes_p8_set_encrypt_key(key, keylen * 8, &ctx->enc_key);
pagefault_enable();
+ preempt_enable();
ret += crypto_blkcipher_setkey(ctx->fallback, key, keylen);
return ret;
@@ -99,11 +101,13 @@ static void p8_aes_ctr_final(struct p8_aes_ctr_ctx *ctx,
u8 *dst = walk->dst.virt.addr;
unsigned int nbytes = walk->nbytes;
+ preempt_disable();
pagefault_disable();
enable_kernel_altivec();
enable_kernel_vsx();
aes_p8_encrypt(ctrblk, keystream, &ctx->enc_key);
pagefault_enable();
+ preempt_enable();
crypto_xor(keystream, src, nbytes);
memcpy(dst, keystream, nbytes);
@@ -132,6 +136,7 @@ static int p8_aes_ctr_crypt(struct blkcipher_desc *desc,
blkcipher_walk_init(&walk, dst, src, nbytes);
ret = blkcipher_walk_virt_block(desc, &walk, AES_BLOCK_SIZE);
while ((nbytes = walk.nbytes) >= AES_BLOCK_SIZE) {
+ preempt_disable();
pagefault_disable();
enable_kernel_altivec();
enable_kernel_vsx();
@@ -143,6 +148,7 @@ static int p8_aes_ctr_crypt(struct blkcipher_desc *desc,
&ctx->enc_key,
walk.iv);
pagefault_enable();
+ preempt_enable();
/* We need to update IV mostly for last bytes/round */
inc = (nbytes & AES_BLOCK_MASK) / AES_BLOCK_SIZE;
--
2.11.0
next prev parent reply other threads:[~2017-10-25 2:05 UTC|newest]
Thread overview: 25+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-10-25 1:56 [PATCH AUTOSEL for 4.4 01/25] [media] adv7604: Initialize drive strength to default when using DT Levin, Alexander (Sasha Levin)
2017-10-25 1:56 ` [PATCH AUTOSEL for 4.4 02/25] video: fbdev: pmag-ba-fb: Remove bad `__init' annotation Levin, Alexander (Sasha Levin)
2017-10-25 1:56 ` [PATCH AUTOSEL for 4.4 03/25] PCI: mvebu: Handle changes to the bridge windows while enabled Levin, Alexander (Sasha Levin)
2017-10-25 1:56 ` [PATCH AUTOSEL for 4.4 06/25] dt-bindings: clockgen: Add compatible string for LS1012A Levin, Alexander (Sasha Levin)
2017-10-25 1:56 ` [PATCH AUTOSEL for 4.4 07/25] drm: drm_minor_register(): Clean up debugfs on failure Levin, Alexander (Sasha Levin)
2017-10-25 1:56 ` [PATCH AUTOSEL for 4.4 05/25] ARM: dts: imx53-qsb-common: fix FEC pinmux config Levin, Alexander (Sasha Levin)
2017-10-25 1:56 ` [PATCH AUTOSEL for 4.4 04/25] xen/netback: set default upper limit of tx/rx queues to 8 Levin, Alexander (Sasha Levin)
2017-10-25 1:56 ` [PATCH AUTOSEL for 4.4 10/25] powerpc/corenet: explicitly disable the SDHC controller on kmcoge4 Levin, Alexander (Sasha Levin)
2017-10-25 1:56 ` [PATCH AUTOSEL for 4.4 11/25] ARM: omap2plus_defconfig: Fix probe errors on UARTs 5 and 6 Levin, Alexander (Sasha Levin)
2017-10-25 1:56 ` [PATCH AUTOSEL for 4.4 09/25] iommu/arm-smmu-v3: Clear prior settings when updating STEs Levin, Alexander (Sasha Levin)
2017-10-25 1:56 ` [PATCH AUTOSEL for 4.4 08/25] KVM: PPC: Book 3S: XICS: correct the real mode ICP rejecting counter Levin, Alexander (Sasha Levin)
2017-10-25 1:56 ` Levin, Alexander (Sasha Levin) [this message]
2017-10-25 1:56 ` [PATCH AUTOSEL for 4.4 13/25] iio: trigger: free trigger resource correctly Levin, Alexander (Sasha Levin)
2017-10-25 1:56 ` [PATCH AUTOSEL for 4.4 14/25] dt-bindings: Add LEGO MINDSTORMS EV3 compatible specification Levin, Alexander (Sasha Levin)
2017-10-25 1:56 ` [PATCH AUTOSEL for 4.4 15/25] dt-bindings: Add vendor prefix for LEGO Levin, Alexander (Sasha Levin)
2017-10-25 1:56 ` [PATCH AUTOSEL for 4.4 16/25] phy: increase size of MII_BUS_ID_SIZE and bus_id Levin, Alexander (Sasha Levin)
2017-10-25 1:56 ` [PATCH AUTOSEL for 4.4 18/25] usb: hcd: initialize hcd->flags to 0 when rm hcd Levin, Alexander (Sasha Levin)
2017-10-25 1:56 ` [PATCH AUTOSEL for 4.4 20/25] IPsec: do not ignore crypto err in ah4 input Levin, Alexander (Sasha Levin)
2017-10-25 1:56 ` [PATCH AUTOSEL for 4.4 17/25] serial: sh-sci: Fix register offsets for the IRDA serial port Levin, Alexander (Sasha Levin)
2017-10-25 1:56 ` [PATCH AUTOSEL for 4.4 19/25] netfilter: nft_meta: deal with PACKET_LOOPBACK in netdev family Levin, Alexander (Sasha Levin)
2017-10-25 1:56 ` [PATCH AUTOSEL for 4.4 21/25] Input: mpr121 - handle multiple bits change of status register Levin, Alexander (Sasha Levin)
2017-10-25 1:56 ` [PATCH AUTOSEL for 4.4 24/25] s390/qeth: issue STARTLAN as first IPA command Levin, Alexander (Sasha Levin)
2017-10-25 1:56 ` [PATCH AUTOSEL for 4.4 22/25] Input: mpr121 - set missing event capability Levin, Alexander (Sasha Levin)
2017-10-25 1:56 ` [PATCH AUTOSEL for 4.4 23/25] IB/ipoib: Change list_del to list_del_init in the tx object Levin, Alexander (Sasha Levin)
2017-10-25 1:56 ` [PATCH AUTOSEL for 4.4 25/25] net: dsa: select NET_SWITCHDEV Levin, Alexander (Sasha Levin)
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=20171025015607.24625-12-alexander.levin@verizon.com \
--to=alexander.levin@verizon.com \
--cc=herbert@gondor.apana.org.au \
--cc=linux-kernel@vger.kernel.org \
--cc=stable@vger.kernel.org \
--cc=zhong@linux.vnet.ibm.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: 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
all inboxes | Powered by JetHome®