Re: [PATCH 00/28] iio: zero init stack with { } instead of memset()

Pavel Machek
2025-06-14T07:13:11Z

[-- Attachment #1: Type: text/plain, Size: 1540 bytes --]

On Thu 2025-06-12 22:10:07, Andy Shevchenko wrote:
> On Thu, Jun 12, 2025 at 08:54:07PM +0200, Pavel Machek wrote:
> > > On Thursday, 12 June 2025 11:17:52 Central European Summer Time Pavel Machek wrote:
> > > >
> > > > > Jonathan mentioned recently that he would like to get away from using
> > > > > memset() to zero-initialize stack memory in the IIO subsystem. And we
> > > > > have it on good authority that initializing a struct or array with = { }
> > > > > is the preferred way to do this in the kernel [1]. So here is a series
> > > > > to take care of that.
> > > >
> > > > 1) Is it worth the churn?
> > > >
> > > > 2) Will this fail to initialize padding with some obscure compiler?
> > >
> > > as of right now, the only two C compilers that are supported are
> > > GCC >= 8.1, and Clang >= 13.0.1. If anyone even manages to get the
> > > kernel
> >
> > Well... I'm pretty sure parts of this would make it into -stable as a
> > dependency, or because AUTOSEL decides it is a bugfix. So..
> >
> > GNU C 4.9 gcc --version
> > Clang/LLVM (optional) 10.0.1 clang --version
>
> Even though, what the kernel versions are you referring to? I am sure there
> plenty of cases with {} there.

5.10, for example. I'm sure they are, uninitialized padding is a
security hole, but rather hard to detect if they are not specifically
looking.

BR,
Pavel
--
I don't work for Nazis and criminals, and neither should you.
Boycott Putin, Trump, and Musk!

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 195 bytes --]