Thread (5 messages) 5 messages, 3 authors, 2021-08-31

Re: [PATCH 2/2] usb: bdc: Fix a resource leak in the error handling path of 'bdc_probe()'

From: Florian Fainelli <f.fainelli@gmail.com>
Date: 2021-08-20 20:03:21
Also in: linux-usb, lkml


On 8/18/2021 9:32 PM, Christophe JAILLET wrote:
If an error occurs after a successful 'clk_prepare_enable()' call, it must
be undone by a corresponding 'clk_disable_unprepare()' call.
This call is already present in the remove function.

Add this call in the error handling path and reorder the code so that the
'clk_prepare_enable()' call happens later in the function.
The goal is to have as much managed resources functions as possible
before the 'clk_prepare_enable()' call in order to keep the error handling
path simple.

While at it, remove the now unneeded 'clk' variable.

Fixes: c87dca047849 ("usb: bdc: Add clock enable for new chips with a separate BDC clock")
Signed-off-by: Christophe JAILLET <redacted>
Acked-by: Florian Fainelli <f.fainelli@gmail.com>
---
Review with care.
I don't like shuffling code like that because of possible side effect.
Moving the code related to this clk looks fine to me, but who knows...
There are no register accesses until bdc_phy_init() gets called, so this 
looks fine to me. Al knows this code better than I do though, so it 
would be better to wait for his Acked-by tag.
-- 
Florian
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help