Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit ccabbf1d authored by Arnd Bergmann's avatar Arnd Bergmann Committed by Greg Kroah-Hartman
Browse files

nouveau: fix function cast warning



[ Upstream commit 185fdb4697cc9684a02f2fab0530ecdd0c2f15d4 ]

Calling a function through an incompatible pointer type causes breaks
kcfi, so clang warns about the assignment:

drivers/gpu/drm/nouveau/nvkm/subdev/bios/shadowof.c:73:10: error: cast from 'void (*)(const void *)' to 'void (*)(void *)' converts to incompatible function type [-Werror,-Wcast-function-type-strict]
   73 |         .fini = (void(*)(void *))kfree,

Avoid this with a trivial wrapper.

Fixes: c39f472e ("drm/nouveau: remove symlinks, move core/ to nvkm/ (no code changes)")
Signed-off-by: default avatarArnd Bergmann <arnd@arndb.de>
Signed-off-by: default avatarDanilo Krummrich <dakr@redhat.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20240404160234.2923554-1-arnd@kernel.org


Signed-off-by: default avatarSasha Levin <sashal@kernel.org>
parent 4beab84f
Loading
Loading
Loading
Loading
+6 −1
Original line number Diff line number Diff line
@@ -66,11 +66,16 @@ of_init(struct nvkm_bios *bios, const char *name)
	return ERR_PTR(-EINVAL);
}

static void of_fini(void *p)
{
	kfree(p);
}

const struct nvbios_source
nvbios_of = {
	.name = "OpenFirmware",
	.init = of_init,
	.fini = (void(*)(void *))kfree,
	.fini = of_fini,
	.read = of_read,
	.size = of_size,
	.rw = false,