>> 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
