Hi Pantelis,

On Thu, 15 Jan 2015 18:25:22 +0200, Pantelis Antoniou wrote:
> The remove method of the mux gets called and on it’s remove method 
> i2c_del_mux_adapter is called,
> which in turn calls i2c_del_adapter() which hangs.
> 
> Anyway, finally figured out what the problem was, a reference was held, and 
> not released properly in
> the i2c notifier pathc.
> 
> I’ll send out an updated patch later today.
> 
> > Having that call "wait" for the other release call to happen is really
> > old, as Jean points out, from 2003.  We have "fixed" sysfs since then to
> > detach the files from the devices easier, we used to have some nasy
> > reference count issues in that area.  Perhaps this isn't needed anymore,
> 
> It’s awfully easy to get a hang with this blocking wait. Turns a memory leak 
> into a hard hang.

Turns an invisible memory leak into a visible bug, giving you the
opportunity to fix it. You should be grateful ;-)

That being said, if this completion serves no other purpose then it
can go away, I don't mind.

-- 
Jean Delvare
SUSE L3 Support
--
To unsubscribe from this list: send the line "unsubscribe linux-i2c" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to