>> On a related note, it seems like some locking is missing from the  
>> update
>> routines.  For instance, mac_unicst_update() currently does a bcopy 
>> () of
>> the new address into mi_addr without holding any locks.  This issue
>> becomes magnified if we add the proposed checks.  (Maybe Thiru has  
>> some
>> thoughts on this?)
> 
> Yep, mi_data_lock should do the job as Seb already pointed out.
> 
There needs some other changes if we decide to use mi_data_lock. Note that 
mi_data_lock is 
hold when MAC's mi_unicst() callback is called, and if the MAC calls 
mac_unicst_update() 
directly as the result of mi_unicst(), it would cause deadlock.

Thanks
- Cathy

Reply via email to