batman-adv 0.2-alpha: possible[tm] regression in packet aggregation
Assume we have 2 "threads":
calls spin_trylock(&packets_timer_lock), acquires the lock, and calls
Workqueue threads, calls
Thread 2 jumps between the spin_trylock() and cancel_delayed_work_sync(). Then Thread 1 holds, Thread 2 tries to acquire it and waits. Thread 1 then waits for Thread 2 to complete within cancel_delayed_work_sync(). This is a deadlock/lifelock.
Its not very likely that it happens, but it might happen, so i'm opening this ticket. ;)