2017-07-06 0:56 GMT+03:00 Linus Torvalds <torva...@linux-foundation.org>: > On Wed, Jul 5, 2017 at 2:48 PM, Arnd Bergmann <a...@arndb.de> wrote: >> >> This particular example should be handled by >> scripts/gcc-plugins/structleak_plugin.c, right? > > .. probably. But we have a ton of other uses that just pass in > "result" pointers (not structs), which admittedly don't have the > padding issue, but do have the exact same issue otherwise. > > We have those random "initialize to zero by hand", and I wouldn't > actually worry about most of the common cases. KASAN will find them > anyway. >
KASAN doesn't find "use-of-unitialized memory" bugs. It can find only use-after-free and out-of-bounds accesses. MemorySanitizer (aka KMSAN) is supposed to detect uses of unitialized memory. It's still in WIP stage, but have some trophies already (just grep for KMSAN in git log) > It tends to be the random odd ioctl-like things that nobody finds > because it's only uninitialized for some silly error case that never > triggers (or some unusual driver that needs to be loaded). > > Linus