Bluetooth: LLVMLinux: Remove VLAIS from bluetooth/amp.c
authorBehan Webster <behanw@converseincode.com>
Fri, 5 Sep 2014 23:03:34 +0000 (16:03 -0700)
committerMarcel Holtmann <marcel@holtmann.org>
Mon, 8 Sep 2014 17:07:56 +0000 (19:07 +0200)
commit9f06a8d623b2c3aea09292b844e329fbfb401231
treee70c1d741f2d74426bd56fb26903e25a3b40042b
parentb28b4943660f4e36f118b751ec606c103ba6b1cc
Bluetooth: LLVMLinux: Remove VLAIS from bluetooth/amp.c

Replaced the use of a Variable Length Array In Struct (VLAIS) with a C99
compliant equivalent. This patch allocates the appropriate amount of memory
using an char array.

The new code can be compiled with both gcc and clang.

struct shash_desc contains a flexible array member member ctx declared with
CRYPTO_MINALIGN_ATTR, so sizeof(struct shash_desc) aligns the beginning
of the array declared after struct shash_desc with long long.

No trailing padding is required because it is not a struct type that can
be used in an array.

The CRYPTO_MINALIGN_ATTR is required so that desc is aligned with long long
as would be the case for a struct containing a member with
CRYPTO_MINALIGN_ATTR.

Signed-off-by: Behan Webster <behanw@converseincode.com>
Signed-off-by: Mark Charlebois <charlebm@gmail.com>
Signed-off-by: Jan-Simon Möller <dl9pf@gmx.de>
Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
net/bluetooth/amp.c