Skip to contentSkip to conversation

video: of: display_timing: double free on error

PATCH Tomi Valkeinen 1 participant 1 message Aug 26, 2014

Subsystems (2)
lore
Share & tools
lore
#0 lore raw
Quoted 11 lines · Dan Carpenter

The display_timings_release() function frees "disp" and we free it again on the next line.

drivers/video/of_display_timing.c +0 -0
index 987edf1..5c098d5 100644

drivers/video/of_display_timing.c timingfail: · line 242

Quoted 7 lines
drivers/video/of_display_timing.c +1 -0
@@ -236,6 +236,7 @@ timingfail:
 	if (native_mode)
 		of_node_put(native_mode);
 	display_timings_release(disp);
+	disp = NULL;
 entryfail:
 	kfree(disp);
 dispfail:

Thanks, queued for 3.17 fbdev fixes.

The code looks a bit messy to me, though. I'm not fond of "kalloc here, kfree there" style.

Maybe this would be slightly cleaner, if display_timings_release() would accept NULL parameter. Then the code above could just use display_timings_release(), and there'd be no need for kfree.

In any case, that's stuff for an other patch. This one is fine fix for 3.17.

Tomi