On 03/07/14 17:56, Joe Perches wrote:
On Fri, 2014-03-07 at 17:26 -0800, beh...@converseincode.com wrote:
From: Jan-Simon Möller <dl...@gmx.de>

Replaced the use of a Variable Length Array In Struct (VLAIS) with a C99
compliant equivalent. This is the original VLAIS struct.
[]
diff --git a/net/mac80211/aes_ccm.c b/net/mac80211/aes_ccm.c
[]
@@ -23,12 +23,14 @@ void ieee80211_aes_ccm_encrypt(struct crypto_aead *tfm, u8 
*b_0, u8 *aad,
                               u8 *data, size_t data_len, u8 *mic)
  {
        struct scatterlist assoc, pt, ct[2];
-       struct {
-               struct aead_request     req;
-               u8                      priv[crypto_aead_reqsize(tfm)];
-       } aead_req;
- memset(&aead_req, 0, sizeof(aead_req));
+       char aead_req_data[sizeof(struct aead_request) +
+                               crypto_aead_reqsize(tfm) +
+                               CRYPTO_MINALIGN] CRYPTO_MINALIGN_ATTR;
Can this be a too large amount of stack?

Is crypto_aead_reqsize() limited to < ~1k?

Perhaps it'd be better to use kzalloc for this
or another reserved pool
No more stack being used than with the the original code. The stack memory use is identical.

Behan

--
Behan Webster
beh...@converseincode.com

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to