Re: [PATCH] solo6x10: use designated initializers

From: Andrey Utkin
Date: Mon Dec 19 2016 - 14:56:53 EST


On Fri, Dec 16, 2016 at 05:05:36PM -0800, Kees Cook wrote:
> Prepare to mark sensitive kernel structures for randomization by making
> sure they're using designated initializers. These were identified during
> allyesconfig builds of x86, arm, and arm64, with most initializer fixes
> extracted from grsecurity.

Ok I've reviewed all the patchset, googled a bit and now I see what's
going on.

>
> Signed-off-by: Kees Cook <keescook@xxxxxxxxxxxx>
> ---
> drivers/media/pci/solo6x10/solo6x10-g723.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/media/pci/solo6x10/solo6x10-g723.c b/drivers/media/pci/solo6x10/solo6x10-g723.c
> index 6a35107aca25..36e93540bb49 100644
> --- a/drivers/media/pci/solo6x10/solo6x10-g723.c
> +++ b/drivers/media/pci/solo6x10/solo6x10-g723.c
> @@ -350,7 +350,7 @@ static int solo_snd_pcm_init(struct solo_dev *solo_dev)
>
> int solo_g723_init(struct solo_dev *solo_dev)
> {
> - static struct snd_device_ops ops = { NULL };
> + static struct snd_device_ops ops = { };

I'm not that keen on syntax subtleties, but...
* Empty initializer is not quite "designated" as I can judge.
* From brief googling I see that empty initializer is not valid in
some C standards.

Since `ops` is static, what about this?
For the variant given below, you have my signoff.

> --- a/drivers/media/pci/solo6x10/solo6x10-g723.c
> +++ b/drivers/media/pci/solo6x10/solo6x10-g723.c
> @@ -350,7 +350,7 @@ static int solo_snd_pcm_init(struct solo_dev *solo_dev)
>
> int solo_g723_init(struct solo_dev *solo_dev)
> {
> - static struct snd_device_ops ops = { NULL };
> + static struct snd_device_ops ops;