Messages in this thread | | | Date | Sat, 08 Mar 2014 12:42:45 -0800 | From | Behan Webster <> | Subject | Re: [PATCH v2] mac80211: LLVMLinux: Remove VLAIS usage from mac80211 |
| |
On 03/08/14 12:29, Sergei Antonov wrote: > On 8 March 2014 02:26, <behanw@converseincode.com> wrote: >> 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. Damn it. I should have seen that too. We had to do that in our related netfilter patch.
Good catch. Will fix.
Thanks,
Behan
-- Behan Webster behanw@converseincode.com
| |