From: Leon Yu Date: Mon, 7 Sep 2015 13:08:37 +0000 (+0000) Subject: tty: don't leak cdev in tty_cdev_add() X-Git-Tag: omap-for-v4.3/fixes-rc5~12^2~7 X-Git-Url: http://git.openpandora.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=c1a752ba2d6b8a52879c7ab637cff38359ea9827;p=pandora-kernel.git tty: don't leak cdev in tty_cdev_add() Commit a3a10ce3429e ("Avoid usb reset crashes by making tty_io cdevs truly dynamic") which mixes using cdev_alloc() and cdev_init() is problematic. Subsequent call to cdev_init() after cdev_alloc() sets kobj release method from cdev_dynamic_release() to cdev_default_release() and thus makes it impossible to free allocated cdev. This patch also consolidates error path of cdev_add() as cdev can also leak here if things went wrong. Signed-off-by: Leon Yu Fixes: a3a10ce3429e ("Avoid usb reset crashes by making tty_io cdevs truly dynamic") Acked-by: Richard Watts Signed-off-by: Greg Kroah-Hartman --- Reading git-diff-tree failed