(- Remove Alexey Klimov's ARM id as he has left the company, adding his personal id instead)
On 16/11/17 16:51, Jassi Brar wrote: > On Thu, Nov 16, 2017 at 11:01 AM, Bjorn Andersson > <[email protected]> wrote: >> A client that knows how to drive txdone would temporarily "upgrade" the >> method to TXDONE_BY_ACK. But with the introduction of commit 33cd7123ac0ba >> ("mailbox: reset txdone_method TXDONE_BY_POLL if client knows_txdone") >> there is no longer a distinction between a channel in "upgraded" state >> or a channel for a controller that only supports TXDONE_BY_ACK. So upon >> freeing the channel it will be "downgraded" to TXDONE_BY_POLL. >> >> But a channel that operates with the txdone method of TXDONE_BY_POLL >> requires that the controller implements the last_tx_done callback and >> that the associated hrtimer was initialized when the controller was >> registered. >> >> So the core now relies on the fact that subsequent calls to >> mbox_request_channel() "upgrades" the channel to TXDONE_BY_ACK or it >> will dereference the non-initialized hrtimer. >> > I think we just need avoid the channel not running under POLL > > Does this fix your issue? > Unfortunately only Alexey had fast reproducer of the issue reported with original commit. I will try to run on my setup, but it was hard to reproduce(mainly lack of firmware support for multiple virtual channels). I will try my best to test this. Sorry for not considering temporary "upgrade" use case. -- Regards, Sudeep

