On Fri, Apr 10, 2020 at 11:49:18PM +0300, Dmitry Osipenko wrote: > 09.04.2020 20:52, Thierry Reding пишет: > ... > > +int tegra210_clk_emc_attach(struct clk *clk, > > + struct tegra210_clk_emc_provider *provider) > > +{ > > + struct clk_hw *hw = __clk_get_hw(clk); > > + struct tegra210_clk_emc *emc = to_tegra210_clk_emc(hw); > > + struct device *dev = provider->dev; > > + unsigned int i; > > + int err; > > + > > + if (!try_module_get(provider->owner)) > > + return -ENODEV; > > Is the EMC driver module bumping its own refcount by itself? Hm... this doesn't really look useful in retrospect. Yes, the EMC is effectively grabbing a reference to itself. > In the other patch I already suggested that the EMC module should be > disallowed to be unloaded once it has been loaded, seems you're already > doing it. Correct? Interestingly, it all seems to work fine if I unload the module at runtime, not sure why I'm not prevented from unloading the module. Thierry