struct ksock_peer_ni *peer_ni = route->ksnr_peer;
struct ksock_interface *iface;
struct ksock_conn *conn;
- struct list_head *ctmp;
- struct list_head *cnxt;
+ struct ksock_conn *cnxt;
LASSERT(!route->ksnr_deleted);
/* Close associated conns */
- list_for_each_safe(ctmp, cnxt, &peer_ni->ksnp_conns) {
- conn = list_entry(ctmp, struct ksock_conn, ksnc_list);
-
+ list_for_each_entry_safe(conn, cnxt, &peer_ni->ksnp_conns, ksnc_list) {
if (conn->ksnc_route != route)
continue;
ksocknal_del_peer_locked(struct ksock_peer_ni *peer_ni, __u32 ip)
{
struct ksock_conn *conn;
+ struct ksock_conn *cnxt;
struct ksock_route *route;
- struct list_head *tmp;
- struct list_head *nxt;
+ struct ksock_route *rnxt;
int nshared;
LASSERT(!peer_ni->ksnp_closing);
/* Extra ref prevents peer_ni disappearing until I'm done with it */
ksocknal_peer_addref(peer_ni);
- list_for_each_safe(tmp, nxt, &peer_ni->ksnp_routes) {
- route = list_entry(tmp, struct ksock_route, ksnr_list);
-
+ list_for_each_entry_safe(route, rnxt, &peer_ni->ksnp_routes,
+ ksnr_list) {
/* no match */
if (!(ip == 0 || route->ksnr_ipaddr == ip))
continue;
}
nshared = 0;
- list_for_each_safe(tmp, nxt, &peer_ni->ksnp_routes) {
- route = list_entry(tmp, struct ksock_route, ksnr_list);
+ list_for_each_entry(route, &peer_ni->ksnp_routes, ksnr_list)
nshared += route->ksnr_share_count;
- }
if (nshared == 0) {
/* remove everything else if there are no explicit entries
- * left */
-
- list_for_each_safe(tmp, nxt, &peer_ni->ksnp_routes) {
- route = list_entry(tmp, struct ksock_route, ksnr_list);
-
+ * left
+ */
+ list_for_each_entry_safe(route, rnxt, &peer_ni->ksnp_routes,
+ ksnr_list) {
/* we should only be removing auto-entries */
LASSERT(route->ksnr_share_count == 0);
ksocknal_del_route_locked(route);
}
- list_for_each_safe(tmp, nxt, &peer_ni->ksnp_conns) {
- conn = list_entry(tmp, struct ksock_conn, ksnc_list);
-
+ list_for_each_entry_safe(conn, cnxt, &peer_ni->ksnp_conns,
+ ksnc_list)
ksocknal_close_conn_locked(conn, 0);
- }
}
ksocknal_peer_decref(peer_ni);
ksocknal_close_peer_conns_locked(struct ksock_peer_ni *peer_ni, __u32 ipaddr, int why)
{
struct ksock_conn *conn;
- struct list_head *ctmp;
- struct list_head *cnxt;
+ struct ksock_conn *cnxt;
int count = 0;
- list_for_each_safe(ctmp, cnxt, &peer_ni->ksnp_conns) {
- conn = list_entry(ctmp, struct ksock_conn, ksnc_list);
-
+ list_for_each_entry_safe(conn, cnxt, &peer_ni->ksnp_conns, ksnc_list) {
if (ipaddr == 0 ||
conn->ksnc_ipaddr == ipaddr) {
count++;
ksocknal_peer_del_interface_locked(struct ksock_peer_ni *peer_ni,
__u32 ipaddr, int index)
{
- struct list_head *tmp;
- struct list_head *nxt;
struct ksock_route *route;
+ struct ksock_route *rnxt;
struct ksock_conn *conn;
+ struct ksock_conn *cnxt;
int i;
int j;
break;
}
- list_for_each_safe(tmp, nxt, &peer_ni->ksnp_routes) {
- route = list_entry(tmp, struct ksock_route, ksnr_list);
-
+ list_for_each_entry_safe(route, rnxt, &peer_ni->ksnp_routes,
+ ksnr_list) {
if (route->ksnr_myiface != index)
continue;
}
}
- list_for_each_safe(tmp, nxt, &peer_ni->ksnp_conns) {
- conn = list_entry(tmp, struct ksock_conn, ksnc_list);
-
+ list_for_each_entry_safe(conn, cnxt, &peer_ni->ksnp_conns, ksnc_list)
if (conn->ksnc_myipaddr == ipaddr)
ksocknal_close_conn_locked (conn, 0);
- }
}
static int