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))
261 struct ipv6_fl_socklist *sfl; in __fl6_sock_lookup() local
267 for_each_sk_fl_rcu(np, sfl) { in __fl6_sock_lookup()
268 struct ip6_flowlabel *fl = sfl->fl; in __fl6_sock_lookup()
284 struct ipv6_fl_socklist *sfl; in fl6_free_socklist() local
290 while ((sfl = rcu_dereference_protected(np->ipv6_fl_list, in fl6_free_socklist()
292 np->ipv6_fl_list = sfl->next; in fl6_free_socklist()
295 fl_release(sfl->fl); in fl6_free_socklist()
296 kfree_rcu(sfl, rcu); in fl6_free_socklist()
469 struct ipv6_fl_socklist *sfl; in mem_check() local
477 for_each_sk_fl_rcu(np, sfl) in mem_check()
490 static inline void fl_link(struct ipv6_pinfo *np, struct ipv6_fl_socklist *sfl, in fl_link() argument
494 sfl->fl = fl; in fl_link()
495 sfl->next = np->ipv6_fl_list; in fl_link()
496 rcu_assign_pointer(np->ipv6_fl_list, sfl); in fl_link()
504 struct ipv6_fl_socklist *sfl; in ipv6_flowlabel_opt_get() local
518 for_each_sk_fl_rcu(np, sfl) { in ipv6_flowlabel_opt_get()
519 if (sfl->fl->label == (np->flow_label & IPV6_FLOWLABEL_MASK)) { in ipv6_flowlabel_opt_get()
521 freq->flr_label = sfl->fl->label; in ipv6_flowlabel_opt_get()
522 freq->flr_dst = sfl->fl->dst; in ipv6_flowlabel_opt_get()
523 freq->flr_share = sfl->fl->share; in ipv6_flowlabel_opt_get()
524 freq->flr_expires = (sfl->fl->expires - jiffies) / HZ; in ipv6_flowlabel_opt_get()
525 freq->flr_linger = sfl->fl->linger / HZ; in ipv6_flowlabel_opt_get()
544 struct ipv6_fl_socklist *sfl; in ipv6_flowlabel_put() local
558 (sfl = socklist_dereference(*sflp)) != NULL; in ipv6_flowlabel_put()
559 sflp = &sfl->next) { in ipv6_flowlabel_put()
560 if (sfl->fl->label == freq->flr_label) in ipv6_flowlabel_put()
568 *sflp = sfl->next; in ipv6_flowlabel_put()
570 fl_release(sfl->fl); in ipv6_flowlabel_put()
571 kfree_rcu(sfl, rcu); in ipv6_flowlabel_put()
579 struct ipv6_fl_socklist *sfl; in ipv6_flowlabel_renew() local
583 for_each_sk_fl_rcu(np, sfl) { in ipv6_flowlabel_renew()
584 if (sfl->fl->label == freq->flr_label) { in ipv6_flowlabel_renew()
585 err = fl6_renew(sfl->fl, freq->flr_linger, in ipv6_flowlabel_renew()
610 struct ipv6_fl_socklist *sfl, *sfl1 = NULL; in ipv6_flowlabel_get() local
643 for_each_sk_fl_rcu(np, sfl) { in ipv6_flowlabel_get()
644 if (sfl->fl->label == freq->flr_label) { in ipv6_flowlabel_get()
649 fl1 = sfl->fl; in ipv6_flowlabel_get()