On Mon, Sep 23, 2013 at 12:30 PM, Felipe Balbi <balbi@xxxxxx> wrote:We can certainly do that instead.I remember there was a discussion of not dropping variable length arrayWe should definitely drop it. The feature is an abomination. I thought
support, wasn't there ?
gcc only allowed them at the end of structs, in the middle of a struct
it's just f*cking insane beyond belief.
That said, for *this* particular case, that USB widget driver already
does a ton of small kmalloc's and then remembers the addresses
independently. People may not care about performance, but it *might*
be a good idea to just do one kmalloc()/kfree(), and then still have
those pointer variables, but just be offsets within that one
allocation.
That's what gcc has to basically do for that thing internally
*anyway*, just hidden behind a horrible construct that should never
have existed.