--- a/net/xfrm/xfrm_state.c 2005/04/03 16:30:31 1.2 +++ b/net/xfrm/xfrm_state.c 2005/04/03 16:31:27 @@ -251,20 +251,20 @@ { struct xfrm_mgr *km; - read_lock(&xfrm_km_lock); + read_lock_bh(&xfrm_km_lock); list_for_each_entry(km, &xfrm_km_list, list) if (km->notify_policy) km->notify_policy(xp, dir, c); - read_unlock(&xfrm_km_lock); + read_unlock_bh(&xfrm_km_lock); } void km_state_notify(struct xfrm_state *x, struct km_event *c) { struct xfrm_mgr *km; - read_lock(&xfrm_km_lock); + read_lock_bh(&xfrm_km_lock); list_for_each_entry(km, &xfrm_km_list, list) km->notify(x, c); - read_unlock(&xfrm_km_lock); + read_unlock_bh(&xfrm_km_lock); } EXPORT_SYMBOL(km_policy_notify);