Patch "driver core: bus: Fix a potential double free" has been added to the 3.18-stable tree
Subsystems (2)
This is a note to let you know that I've just added the patch titled
driver core: bus: Fix a potential double free
to the 3.18-stable tree which can be found at:
http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary
The filename of the patch is:
driver-core-bus-fix-a-potential-double-free.patch
and it can be found in the queue-3.18 subdirectory.
If you, or anyone else, feels it should not be added to the stable tree, please let <[email protected]> know about it.
Quoted 1 line
From
0f9b011d3321ca1079c7a46c18cb1956fbdb7bcbMon Sep 17 00:00:00 2001
From: Christophe JAILLET <[email protected]>
Date: Tue, 29 Aug 2017 21:23:49 +0200
Subject: driver core: bus: Fix a potential double free
From: Christophe JAILLET <[email protected]>
commit 0f9b011d3321ca1079c7a46c18cb1956fbdb7bcb upstream.
The .release function of driver_ktype is 'driver_release()'. This function frees the container_of this kobject.
So, this memory must not be freed explicitly in the error handling path of 'bus_add_driver()'. Otherwise a double free will occur.
--- drivers/base/bus.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
drivers/base/bus.c +1 -1
@@ -722,7 +722,7 @@ int bus_add_driver(struct device_driver out_unregister:kobject_put (&priv->kobj); -kfree (drv->p); +/* drv->p is freed in driver_release() */ drv->p =NULL ; out_put_bus:bus_put (bus);
Patches currently in stable-queue which might be from [email protected] are
queue-3.18/driver-core-bus-fix-a-potential-double-free.patch