From: Alexander Shishkin Date: Fri, 4 Mar 2016 14:36:10 +0000 (+0200) Subject: stm class: Do not leak the chrdev in error path X-Git-Tag: firefly_0821_release~176^2~4^2~44^2~39 X-Git-Url: http://demsky.eecs.uci.edu/git/?a=commitdiff_plain;h=7c678b8584505e7005b99b4f09cca4496812d30c;p=firefly-linux-kernel-4.4.55.git stm class: Do not leak the chrdev in error path Currently, the error path of stm_register_device() forgets to unregister the chrdev. Fix this. Reported-by: Alan Cox Signed-off-by: Alexander Shishkin Reviewed-by: Laurent Fert (cherry picked from commit cbe4a61d1ddc4790d950ca8c33ef79ee68ef5e2b) --- diff --git a/drivers/hwtracing/stm/core.c b/drivers/hwtracing/stm/core.c index a6c6b2d6a67b..0ffccfdd1017 100644 --- a/drivers/hwtracing/stm/core.c +++ b/drivers/hwtracing/stm/core.c @@ -688,6 +688,8 @@ int stm_register_device(struct device *parent, struct stm_data *stm_data, return 0; err_device: + unregister_chrdev(stm->major, stm_data->name); + /* matches device_initialize() above */ put_device(&stm->dev); err_free: