Skip to contentSkip to conversation

Patch "thunderbolt: Fix double free of drom buffer" has been added to the 4.5-stable tree

PATCH [email protected] 1 participant 1 message May 30, 2016

Subsystems (2)
lore
Share & tools
lore

[email protected]

author maintainer Applied
#0 lore raw

This is a note to let you know that I've just added the patch titled

thunderbolt: Fix double free of drom buffer

to the 4.5-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:
thunderbolt-fix-double-free-of-drom-buffer.patch
and it can be found in the queue-4.5 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 2ffa9a5d76a75abbc1f95c17959fced666095bdd Mon Sep 17 00:00:00 2001

From: Andreas Noever <[email protected]>
Date: Sun, 10 Apr 2016 12:48:27 +0200
Subject: thunderbolt: Fix double free of drom buffer

From: Andreas Noever <[email protected]>

commit 2ffa9a5d76a75abbc1f95c17959fced666095bdd upstream.

If tb_drom_read() fails, sw->drom is freed but not set to NULL. sw->drom is then freed again in the error path of tb_switch_alloc().

The bug can be triggered by unplugging a thunderbolt device shortly after it is detected by the thunderbolt driver.

Clear sw->drom if tb_drom_read() fails.

[bhelgaas: add Fixes:, stable versions of interest]
Fixes 343fcb8c70d7 ("thunderbolt: Fix nontrivial endpoint devices.")
CC Lukas Wunner <[email protected]>
---
 drivers/thunderbolt/eeprom.c |    1 +
 1 file changed, 1 insertion(+)
drivers/thunderbolt/eeprom.c +1 -0
@@ -444,6 +444,7 @@ int tb_drom_read(struct tb_switch *sw)
 	return tb_drom_parse_entries(sw);
 err:
 	kfree(sw->drom);
+	sw->drom = NULL;
 	return -EIO;
 
 }

Patches currently in stable-queue which might be from [email protected] are

queue-4.5/thunderbolt-fix-double-free-of-drom-buffer.patch