Kees Cook
2016-Dec-17 01:04 UTC
[Nouveau] [PATCH] drm/nouveau: use designated initializers
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 at chromium.org> --- drivers/gpu/drm/nouveau/nouveau_ttm.c | 28 ++++++++++++++-------------- 1 file changed, 14 insertions(+), 14 deletions(-) diff --git a/drivers/gpu/drm/nouveau/nouveau_ttm.c b/drivers/gpu/drm/nouveau/nouveau_ttm.c index a6dbe8258040..ec4668a41e01 100644 --- a/drivers/gpu/drm/nouveau/nouveau_ttm.c +++ b/drivers/gpu/drm/nouveau/nouveau_ttm.c @@ -107,10 +107,10 @@ nouveau_vram_manager_new(struct ttm_mem_type_manager *man, } const struct ttm_mem_type_manager_func nouveau_vram_manager = { - nouveau_vram_manager_init, - nouveau_vram_manager_fini, - nouveau_vram_manager_new, - nouveau_vram_manager_del, + .init = nouveau_vram_manager_init, + .takedown = nouveau_vram_manager_fini, + .get_node = nouveau_vram_manager_new, + .put_node = nouveau_vram_manager_del, }; static int @@ -184,11 +184,11 @@ nouveau_gart_manager_debug(struct ttm_mem_type_manager *man, const char *prefix) } const struct ttm_mem_type_manager_func nouveau_gart_manager = { - nouveau_gart_manager_init, - nouveau_gart_manager_fini, - nouveau_gart_manager_new, - nouveau_gart_manager_del, - nouveau_gart_manager_debug + .init = nouveau_gart_manager_init, + .takedown = nouveau_gart_manager_fini, + .get_node = nouveau_gart_manager_new, + .put_node = nouveau_gart_manager_del, + .debug = nouveau_gart_manager_debug }; /*XXX*/ @@ -257,11 +257,11 @@ nv04_gart_manager_debug(struct ttm_mem_type_manager *man, const char *prefix) } const struct ttm_mem_type_manager_func nv04_gart_manager = { - nv04_gart_manager_init, - nv04_gart_manager_fini, - nv04_gart_manager_new, - nv04_gart_manager_del, - nv04_gart_manager_debug + .init = nv04_gart_manager_init, + .takedown = nv04_gart_manager_fini, + .get_node = nv04_gart_manager_new, + .put_node = nv04_gart_manager_del, + .debug = nv04_gart_manager_debug }; int -- 2.7.4 -- Kees Cook Nexus Security
Daniel Vetter
2016-Dec-18 13:47 UTC
[Nouveau] [PATCH] drm/nouveau: use designated initializers
On Fri, Dec 16, 2016 at 05:04:42PM -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. > > Signed-off-by: Kees Cook <keescook at chromium.org>Merged all drm ones except the amdgpu one (I'll leave that one to Alex) to drm-misc for 4.11 (so will show up in linux-next after xmas or so). -Daniel> --- > drivers/gpu/drm/nouveau/nouveau_ttm.c | 28 ++++++++++++++-------------- > 1 file changed, 14 insertions(+), 14 deletions(-) > > diff --git a/drivers/gpu/drm/nouveau/nouveau_ttm.c b/drivers/gpu/drm/nouveau/nouveau_ttm.c > index a6dbe8258040..ec4668a41e01 100644 > --- a/drivers/gpu/drm/nouveau/nouveau_ttm.c > +++ b/drivers/gpu/drm/nouveau/nouveau_ttm.c > @@ -107,10 +107,10 @@ nouveau_vram_manager_new(struct ttm_mem_type_manager *man, > } > > const struct ttm_mem_type_manager_func nouveau_vram_manager = { > - nouveau_vram_manager_init, > - nouveau_vram_manager_fini, > - nouveau_vram_manager_new, > - nouveau_vram_manager_del, > + .init = nouveau_vram_manager_init, > + .takedown = nouveau_vram_manager_fini, > + .get_node = nouveau_vram_manager_new, > + .put_node = nouveau_vram_manager_del, > }; > > static int > @@ -184,11 +184,11 @@ nouveau_gart_manager_debug(struct ttm_mem_type_manager *man, const char *prefix) > } > > const struct ttm_mem_type_manager_func nouveau_gart_manager = { > - nouveau_gart_manager_init, > - nouveau_gart_manager_fini, > - nouveau_gart_manager_new, > - nouveau_gart_manager_del, > - nouveau_gart_manager_debug > + .init = nouveau_gart_manager_init, > + .takedown = nouveau_gart_manager_fini, > + .get_node = nouveau_gart_manager_new, > + .put_node = nouveau_gart_manager_del, > + .debug = nouveau_gart_manager_debug > }; > > /*XXX*/ > @@ -257,11 +257,11 @@ nv04_gart_manager_debug(struct ttm_mem_type_manager *man, const char *prefix) > } > > const struct ttm_mem_type_manager_func nv04_gart_manager = { > - nv04_gart_manager_init, > - nv04_gart_manager_fini, > - nv04_gart_manager_new, > - nv04_gart_manager_del, > - nv04_gart_manager_debug > + .init = nv04_gart_manager_init, > + .takedown = nv04_gart_manager_fini, > + .get_node = nv04_gart_manager_new, > + .put_node = nv04_gart_manager_del, > + .debug = nv04_gart_manager_debug > }; > > int > -- > 2.7.4 > > > -- > Kees Cook > Nexus Security > _______________________________________________ > dri-devel mailing list > dri-devel at lists.freedesktop.org > https://lists.freedesktop.org/mailman/listinfo/dri-devel-- Daniel Vetter Software Engineer, Intel Corporation http://blog.ffwll.ch
Seemingly Similar Threads
- [PATCH] drm/nouveau: use designated initializers
- [PATCH 05/10] drm/nouveau: quiet some static-related sparse noise
- [PATCH] drm/nouveau: fix crash in vram manager debug callback
- [Bug 102192] New: Dell XPS 15 9560: PU: 1 PID: 58 at drivers/gpu/drm/nouveau/nvkm/subdev/mmu/gf100.c:190 gf100_vm_flush+0x1b3/0x1c0
- [LLVMdev] Designated Initializers work in clang++