Lines Matching refs:rxnet
347 static void rxrpc_peer_keepalive_dispatch(struct rxrpc_net *rxnet, in rxrpc_peer_keepalive_dispatch() argument
353 const u8 mask = ARRAY_SIZE(rxnet->peer_keepalive) - 1; in rxrpc_peer_keepalive_dispatch()
357 spin_lock_bh(&rxnet->peer_hash_lock); in rxrpc_peer_keepalive_dispatch()
367 spin_unlock_bh(&rxnet->peer_hash_lock); in rxrpc_peer_keepalive_dispatch()
385 spin_lock_bh(&rxnet->peer_hash_lock); in rxrpc_peer_keepalive_dispatch()
387 &rxnet->peer_keepalive[slot & mask]); in rxrpc_peer_keepalive_dispatch()
391 spin_unlock_bh(&rxnet->peer_hash_lock); in rxrpc_peer_keepalive_dispatch()
399 struct rxrpc_net *rxnet = in rxrpc_peer_keepalive_worker() local
401 const u8 mask = ARRAY_SIZE(rxnet->peer_keepalive) - 1; in rxrpc_peer_keepalive_worker()
407 base = rxnet->peer_keepalive_base; in rxrpc_peer_keepalive_worker()
408 cursor = rxnet->peer_keepalive_cursor; in rxrpc_peer_keepalive_worker()
411 if (!rxnet->live) in rxrpc_peer_keepalive_worker()
421 spin_lock_bh(&rxnet->peer_hash_lock); in rxrpc_peer_keepalive_worker()
422 list_splice_init(&rxnet->peer_keepalive_new, &collector); in rxrpc_peer_keepalive_worker()
424 stop = cursor + ARRAY_SIZE(rxnet->peer_keepalive); in rxrpc_peer_keepalive_worker()
426 list_splice_tail_init(&rxnet->peer_keepalive[cursor & mask], in rxrpc_peer_keepalive_worker()
433 spin_unlock_bh(&rxnet->peer_hash_lock); in rxrpc_peer_keepalive_worker()
435 rxnet->peer_keepalive_base = base; in rxrpc_peer_keepalive_worker()
436 rxnet->peer_keepalive_cursor = cursor; in rxrpc_peer_keepalive_worker()
437 rxrpc_peer_keepalive_dispatch(rxnet, &collector, base, cursor); in rxrpc_peer_keepalive_worker()
441 cursor = rxnet->peer_keepalive_cursor; in rxrpc_peer_keepalive_worker()
444 if (!list_empty(&rxnet->peer_keepalive[cursor & mask])) in rxrpc_peer_keepalive_worker()
454 if (rxnet->live) in rxrpc_peer_keepalive_worker()
455 timer_reduce(&rxnet->peer_keepalive_timer, jiffies + delay); in rxrpc_peer_keepalive_worker()