Re: [PATCH v2] x86/floppy: use designated initializers

From: Ingo Molnar
Date: Sun Dec 18 2016 - 03:09:46 EST



* Kees Cook <keescook@xxxxxxxxxxxx> 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.
>
> Signed-off-by: Kees Cook <keescook@xxxxxxxxxxxx>
> ---
> v2:
> - aligned rhs of initializer, ingo
> ---
> arch/x86/include/asm/floppy.h | 20 ++++++++++----------
> 1 file changed, 10 insertions(+), 10 deletions(-)
>
> diff --git a/arch/x86/include/asm/floppy.h b/arch/x86/include/asm/floppy.h
> index 1c7eefe32502..202fe3e1fae8 100644
> --- a/arch/x86/include/asm/floppy.h
> +++ b/arch/x86/include/asm/floppy.h
> @@ -229,18 +229,18 @@ static struct fd_routine_l {
> int (*_dma_setup)(char *addr, unsigned long size, int mode, int io);
> } fd_routine[] = {
> {
> - request_dma,
> - free_dma,
> - get_dma_residue,
> - dma_mem_alloc,
> - hard_dma_setup
> + ._request_dma = request_dma,
> + ._free_dma = free_dma,
> + ._get_dma_residue = get_dma_residue,
> + ._dma_mem_alloc = dma_mem_alloc,
> + ._dma_setup = hard_dma_setup
> },
> {
> - vdma_request_dma,
> - vdma_nop,
> - vdma_get_dma_residue,
> - vdma_mem_alloc,
> - vdma_dma_setup
> + ._request_dma = vdma_request_dma,
> + ._free_dma = vdma_nop,
> + ._get_dma_residue = vdma_get_dma_residue,
> + ._dma_mem_alloc = vdma_mem_alloc,
> + ._dma_setup = vdma_dma_setup

That's not how we organize named initializers, we do:

._request_dma = vdma_request_dma,
._free_dma = vdma_nop,
._get_dma_residue = vdma_get_dma_residue,
._dma_mem_alloc = vdma_mem_alloc,
._dma_setup = vdma_dma_setup

I have fixed up the patch.

Thanks,

Ingo