Thread (17 messages) flat view 17 messages, 9 authors, 2014-03-19

Re: [PATCH v2] mac80211: LLVMLinux: Remove VLAIS usage from mac80211

From: Sergei Antonov <hidden>
Date: 2014-03-08 20:30:00
Also in: linux-wireless, lkml

On 8 March 2014 02:26,  [off-list ref] wrote:
quoted hunk ↗ jump to hunk
diff --git a/net/mac80211/aes_ccm.c b/net/mac80211/aes_ccm.c
index 7c7df47..3317578 100644
--- 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;
+
+       struct aead_request *aead_req = (void *) aead_req_data;
Bad trick with regards to alignment.
The alignment requirement for struct aead_request is stronger than
what an array of chars may have.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help