MacMusic  |  PcMusic  |  440 Software  |  440 Forums  |  440TV  |  Zicos
kernel
Recherche

The Linux Kernel Is Now VLA-Free: A Win For Security, Less Overhead and Better For Clang

lundi 29 octobre 2018, 21:45 , par Slashdot
With the in-development Linux 4.20 kernel, it is now effectively VLA-free. From a report: The variable-length arrays (VLAs) that can be convenient and part of the C99 standard but can have unintended consequences. VLAs allow for array lengths to be determined at run-time rather than compile time. The Linux kernel has long relied upon VLAs in different parts of the kernel -- including within structures -- but going on for months now (and years if counting the kernel Clang'ing efforts) has been to remove the usage of variable-length arrays within the kernel. The problems with them are: 1. Using variable-length arrays can add some minor run-time overhead to the code due to needing to determine the size of the array at run-time. 2. VLAs within structures is not supported by the LLVM Clang compiler and thus an issue for those wanting to build the kernel outside of GCC, Clang only supports the C99-style VLAs. 3. Arguably most importantly is there can be security implications from VLAs around the kernel's stack usage.

Read more of this story at Slashdot.
rss.slashdot.org/~r/Slashdot/slashdot/~3/Y0TiCl4855s/the-linux-kernel-is-now-vla-free-a-win-for-secu...
News copyright owned by their original publishers | Copyright © 2004 - 2024 Zicos / 440Network
Date Actuelle
ven. 29 mars - 08:35 CET