Re: [PATCH] cgroup: reorder flexible array members of struct cgroup_root
From: Aleksa Sarai
Date: Sat Oct 21 2017 - 11:59:53 EST
Here, not necessarily but I don't want to move it for a bogus reason.
Why would we disallow embedding structs with flexible members in the
middle when it can be done and is useful? If we want to discuss
whether we want to avoid such usages in the kernel (but why?), sure,
let's have that discussion but we can't decide that on "clang warns on
it by default".
There was a talk a few years ago by the clang folks[1] saying that while
trying to build a kernel with clang, they discovered that several places
in the kernel uses "VLAIS" (variable Length Arrays In Structs") and
argued that this is a violation of the C specification, despite it being
a GNU extension. They also submitted several patches that removed this
code (even working around a user-space visible usage of VLAIS).
[1]:
https://www.linuxplumbersconf.org/2013/ocw/system/presentations/1221/original/VLAIS.pdf
--
Aleksa Sarai
Senior Software Engineer (Containers)
SUSE Linux GmbH
https://www.cyphar.com/