Lines Matching refs:sfl

69 #define for_each_sk_fl_rcu(np, sfl)				\  argument
70 for (sfl = rcu_dereference_bh(np->ipv6_fl_list); \
71 sfl != NULL; \
72 sfl = rcu_dereference_bh(sfl->next))
243 struct ipv6_fl_socklist *sfl; in fl6_sock_lookup() local
249 for_each_sk_fl_rcu(np, sfl) { in fl6_sock_lookup()
250 struct ip6_flowlabel *fl = sfl->fl; in fl6_sock_lookup()
266 struct ipv6_fl_socklist *sfl; in fl6_free_socklist() local
272 while ((sfl = rcu_dereference_protected(np->ipv6_fl_list, in fl6_free_socklist()
274 np->ipv6_fl_list = sfl->next; in fl6_free_socklist()
277 fl_release(sfl->fl); in fl6_free_socklist()
278 kfree_rcu(sfl, rcu); in fl6_free_socklist()
444 struct ipv6_fl_socklist *sfl; in mem_check() local
452 for_each_sk_fl_rcu(np, sfl) in mem_check()
465 static inline void fl_link(struct ipv6_pinfo *np, struct ipv6_fl_socklist *sfl, in fl_link() argument
469 sfl->fl = fl; in fl_link()
470 sfl->next = np->ipv6_fl_list; in fl_link()
471 rcu_assign_pointer(np->ipv6_fl_list, sfl); in fl_link()
479 struct ipv6_fl_socklist *sfl; in ipv6_flowlabel_opt_get() local
493 for_each_sk_fl_rcu(np, sfl) { in ipv6_flowlabel_opt_get()
494 if (sfl->fl->label == (np->flow_label & IPV6_FLOWLABEL_MASK)) { in ipv6_flowlabel_opt_get()
496 freq->flr_label = sfl->fl->label; in ipv6_flowlabel_opt_get()
497 freq->flr_dst = sfl->fl->dst; in ipv6_flowlabel_opt_get()
498 freq->flr_share = sfl->fl->share; in ipv6_flowlabel_opt_get()
499 freq->flr_expires = (sfl->fl->expires - jiffies) / HZ; in ipv6_flowlabel_opt_get()
500 freq->flr_linger = sfl->fl->linger / HZ; in ipv6_flowlabel_opt_get()
519 struct ipv6_fl_socklist *sfl; in ipv6_flowlabel_opt() local
543 (sfl = rcu_dereference_protected(*sflp, in ipv6_flowlabel_opt()
545 sflp = &sfl->next) { in ipv6_flowlabel_opt()
546 if (sfl->fl->label == freq.flr_label) { in ipv6_flowlabel_opt()
549 *sflp = sfl->next; in ipv6_flowlabel_opt()
551 fl_release(sfl->fl); in ipv6_flowlabel_opt()
552 kfree_rcu(sfl, rcu); in ipv6_flowlabel_opt()
561 for_each_sk_fl_rcu(np, sfl) { in ipv6_flowlabel_opt()
562 if (sfl->fl->label == freq.flr_label) { in ipv6_flowlabel_opt()
563 err = fl6_renew(sfl->fl, freq.flr_linger, freq.flr_expires); in ipv6_flowlabel_opt()
611 for_each_sk_fl_rcu(np, sfl) { in ipv6_flowlabel_opt()
612 if (sfl->fl->label == freq.flr_label) { in ipv6_flowlabel_opt()
617 fl1 = sfl->fl; in ipv6_flowlabel_opt()