On Thu, 23 Jul 2015 19:05:56 +0200 Nikolay Aleksandrov <nikolay@xxxxxxxxxxxxxxxxxxx> wrote: > On 07/23/2015 06:59 PM, Stephen Hemminger wrote: > > On Thu, 23 Jul 2015 09:07:37 -0700 > > Nikolay Aleksandrov <nikolay@xxxxxxxxxxxxxxxxxxx> wrote: > > > >> + /* Stop hello and hold timer */ > >> + spin_lock_bh(&br->lock); > >> + del_timer(&br->hello_timer); > >> + list_for_each_entry(p, &br->port_list, list) > >> + del_timer(&p->hold_timer); > >> + spin_unlock_bh(&br->lock); > > > > Wouldn't it be easier to use del_timer_sync here? > > > I think it should work. Also I have an error in the commit message > about the kernel BPDU sending which I need to correct. I'll prepare > a v2 with your suggestion and fixed commit message. The one thing to watch out for with del_timer_sync is that the timer routine and the caller can't be using the same lock otherwise timer will be spinning waiting to get lock that is held by caller who is waiting for timer.