summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorWenwen Wang <wang6495@umn.edu>2018-12-26 20:15:13 -0600
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2019-02-12 19:47:18 +0100
commit711b2e7fc02fa2636be8079339bec123b485d106 (patch)
tree456b60e9f5a2f3127abb8d3adf05f2783d45af7d
parentb67e3130a9bab31febae06b0c489cf4b90a3739a (diff)
gdrom: fix a memory leak bug
[ Upstream commit 093c48213ee37c3c3ff1cf5ac1aa2a9d8bc66017 ] In probe_gdrom(), the buffer pointed by 'gd.cd_info' is allocated through kzalloc() and is used to hold the information of the gdrom device. To register and unregister the device, the pointer 'gd.cd_info' is passed to the functions register_cdrom() and unregister_cdrom(), respectively. However, this buffer is not freed after it is used, which can cause a memory leak bug. This patch simply frees the buffer 'gd.cd_info' in exit_gdrom() to fix the above issue. Signed-off-by: Wenwen Wang <wang6495@umn.edu> Signed-off-by: Jens Axboe <axboe@kernel.dk> Signed-off-by: Sasha Levin <sashal@kernel.org>
-rw-r--r--drivers/cdrom/gdrom.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/cdrom/gdrom.c b/drivers/cdrom/gdrom.c
index ae3a7537cf0f..72cd96a8eb19 100644
--- a/drivers/cdrom/gdrom.c
+++ b/drivers/cdrom/gdrom.c
@@ -889,6 +889,7 @@ static void __exit exit_gdrom(void)
platform_device_unregister(pd);
platform_driver_unregister(&gdrom_driver);
kfree(gd.toc);
+ kfree(gd.cd_info);
}
module_init(init_gdrom);