Lines Matching refs:rs
258 struct rds_sock *rs; in rds_cong_map_updated() local
261 list_for_each_entry(rs, &rds_cong_monitor, rs_cong_list) { in rds_cong_map_updated()
262 spin_lock(&rs->rs_lock); in rds_cong_map_updated()
263 rs->rs_cong_notify |= (rs->rs_cong_mask & portmask); in rds_cong_map_updated()
264 rs->rs_cong_mask &= ~portmask; in rds_cong_map_updated()
265 spin_unlock(&rs->rs_lock); in rds_cong_map_updated()
266 if (rs->rs_cong_notify) in rds_cong_map_updated()
267 rds_wake_sk_sleep(rs); in rds_cong_map_updated()
330 void rds_cong_add_socket(struct rds_sock *rs) in rds_cong_add_socket() argument
335 if (list_empty(&rs->rs_cong_list)) in rds_cong_add_socket()
336 list_add(&rs->rs_cong_list, &rds_cong_monitor); in rds_cong_add_socket()
340 void rds_cong_remove_socket(struct rds_sock *rs) in rds_cong_remove_socket() argument
346 list_del_init(&rs->rs_cong_list); in rds_cong_remove_socket()
351 map = rds_cong_tree_walk(rs->rs_bound_addr, NULL); in rds_cong_remove_socket()
354 if (map && rds_cong_test_bit(map, rs->rs_bound_port)) { in rds_cong_remove_socket()
355 rds_cong_clear_bit(map, rs->rs_bound_port); in rds_cong_remove_socket()
361 struct rds_sock *rs) in rds_cong_wait() argument
366 if (rs && rs->rs_cong_monitor) { in rds_cong_wait()
371 spin_lock_irqsave(&rs->rs_lock, flags); in rds_cong_wait()
372 rs->rs_cong_mask |= RDS_CONG_MONITOR_MASK(ntohs(port)); in rds_cong_wait()
373 spin_unlock_irqrestore(&rs->rs_lock, flags); in rds_cong_wait()