Lines Matching defs:sfl
69 #define for_each_sk_fl_rcu(np, sfl) \
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;
267 for_each_sk_fl_rcu(np, sfl) {
268 struct ip6_flowlabel *fl = sfl->fl;
284 struct ipv6_fl_socklist *sfl;
290 while ((sfl = rcu_dereference_protected(np->ipv6_fl_list,
292 np->ipv6_fl_list = sfl->next;
295 fl_release(sfl->fl);
296 kfree_rcu(sfl, rcu);
471 struct ipv6_fl_socklist *sfl;
479 for_each_sk_fl_rcu(np, sfl)
492 static inline void fl_link(struct ipv6_pinfo *np, struct ipv6_fl_socklist *sfl,
496 sfl->fl = fl;
497 sfl->next = np->ipv6_fl_list;
498 rcu_assign_pointer(np->ipv6_fl_list, sfl);
506 struct ipv6_fl_socklist *sfl;
520 for_each_sk_fl_rcu(np, sfl) {
521 if (sfl->fl->label == (np->flow_label & IPV6_FLOWLABEL_MASK)) {
523 freq->flr_label = sfl->fl->label;
524 freq->flr_dst = sfl->fl->dst;
525 freq->flr_share = sfl->fl->share;
526 freq->flr_expires = (sfl->fl->expires - jiffies) / HZ;
527 freq->flr_linger = sfl->fl->linger / HZ;
546 struct ipv6_fl_socklist *sfl;
560 (sfl = socklist_dereference(*sflp)) != NULL;
561 sflp = &sfl->next) {
562 if (sfl->fl->label == freq->flr_label)
570 *sflp = sfl->next;
572 fl_release(sfl->fl);
573 kfree_rcu(sfl, rcu);
581 struct ipv6_fl_socklist *sfl;
585 for_each_sk_fl_rcu(np, sfl) {
586 if (sfl->fl->label == freq->flr_label) {
587 err = fl6_renew(sfl->fl, freq->flr_linger,
612 struct ipv6_fl_socklist *sfl, *sfl1 = NULL;
645 for_each_sk_fl_rcu(np, sfl) {
646 if (sfl->fl->label == freq->flr_label) {
651 fl1 = sfl->fl;