Hi Am 14.05.26 um 10:24 schrieb Abdun Nihaal:
Since commit 73ce73c30ba9 ("fbdev: Transfer video= option strings to caller; clarify ownership") the string returned from fb_get_options() is expected to be freed by the caller, but the string is not freed in efifb_probe(). Fix that by freeing the option string after setup.Fixes: 73ce73c30ba9 ("fbdev: Transfer video= option strings to caller; clarify ownership")
Right, the commit message even mentions the (pre-existing) leak. There might be other drivers with a similar issue.
Cc: [email protected] Signed-off-by: Abdun Nihaal <[email protected]>
Reviewed-by: Thomas Zimmermann <[email protected]>
--- drivers/video/fbdev/efifb.c | 1 + 1 file changed, 1 insertion(+) diff --git a/drivers/video/fbdev/efifb.c b/drivers/video/fbdev/efifb.c index 47ebc0107209..ad8dec7807c3 100644 --- a/drivers/video/fbdev/efifb.c +++ b/drivers/video/fbdev/efifb.c @@ -377,6 +377,7 @@ static int efifb_probe(struct platform_device *dev) if (fb_get_options("efifb", &option)) return -ENODEV; efifb_setup(si, option); + kfree(option);/* We don't get linelength from UGA Draw Protocol, only from* EFI Graphics Protocol. So if it's not in DMI, and it's not
-- -- Thomas Zimmermann Graphics Driver Developer SUSE Software Solutions Germany GmbH Frankenstr. 146, 90461 Nürnberg, Germany, www.suse.com GF: Jochen Jaser, Andrew McDonald, Werner Knoblich, (HRB 36809, AG Nürnberg)
