summaryrefslogtreecommitdiff
path: root/crypto/async_tx/raid6test.c
diff options
context:
space:
mode:
authorKyle Spiers <ksspiers@google.com>2018-06-01 13:20:16 -0700
committerVinod Koul <vkoul@kernel.org>2018-06-18 20:17:38 +0530
commitb7b70223732189f017cfac01474115ef9f0139e9 (patch)
tree87fbfe3eb897bebd34dafb90668cad206be24e91 /crypto/async_tx/raid6test.c
parent74166d72810cbba7a17154caee1a182e361247b1 (diff)
downloadlinux-crypto-b7b70223732189f017cfac01474115ef9f0139e9.tar.gz
linux-crypto-b7b70223732189f017cfac01474115ef9f0139e9.zip
async_pq: Remove VLA usage
In the quest to remove VLAs from the kernel[1], this adjusts the allocation of coefs and blocks to use the existing maximum values (with one new define, MAX_DISKS for coefs, and a reuse of the existing NDISKS for blocks). [1] https://lkml.org/lkml/2018/3/7/621 Signed-off-by: Kyle Spiers <ksspiers@google.com> Reviewed-by: Kees Cook <keescook@chromium.org> Reviewed-by: Dan Williams <dan.j.williams@intel.com> Signed-off-by: Vinod Koul <vkoul@kernel.org>
Diffstat (limited to 'crypto/async_tx/raid6test.c')
-rw-r--r--crypto/async_tx/raid6test.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/crypto/async_tx/raid6test.c b/crypto/async_tx/raid6test.c
index dad95f45..a5edaaba 100644
--- a/crypto/async_tx/raid6test.c
+++ b/crypto/async_tx/raid6test.c
@@ -81,11 +81,13 @@ static void raid6_dual_recov(int disks, size_t bytes, int faila, int failb, stru
init_async_submit(&submit, 0, NULL, NULL, NULL, addr_conv);
tx = async_gen_syndrome(ptrs, 0, disks, bytes, &submit);
} else {
- struct page *blocks[disks];
+ struct page *blocks[NDISKS];
struct page *dest;
int count = 0;
int i;
+ BUG_ON(disks > NDISKS);
+
/* data+Q failure. Reconstruct data from P,
* then rebuild syndrome
*/