On Thu, Jun 4, 2020 at 3:51 PM Alexander Popov <alex.popov@xxxxxxxxx> wrote: > Some time ago Variable Length Arrays (VLA) were removed from the kernel. > The kernel is built with '-Wvla'. Let's exclude alloca() from the > instrumentation logic and make it simpler. The build-time assertion > against alloca() is added instead. [...] > + /* Variable Length Arrays are forbidden in the kernel */ > + gcc_assert(!is_alloca(stmt)); There is a patch series from Elena and Kees on the kernel-hardening list that deliberately uses __builtin_alloca() in the syscall entry path to randomize the stack pointer per-syscall - see <https://lore.kernel.org/kernel-hardening/20200406231606.37619-4-keescook@xxxxxxxxxxxx/>.