sfa               792 fs/btrfs/sysfs.c 		struct btrfs_feature_attr *sfa;
sfa               795 fs/btrfs/sysfs.c 		sfa = attr_to_btrfs_feature_attr(a);
sfa               796 fs/btrfs/sysfs.c 		bit = ilog2(sfa->feature_bit);
sfa               797 fs/btrfs/sysfs.c 		fa = &btrfs_feature_attrs[sfa->feature_set][bit];
sfa               799 fs/btrfs/sysfs.c 		fa->kobj_attr.attr.name = sfa->kobj_attr.attr.name;
sfa              1650 net/openvswitch/conntrack.c 		       struct sw_flow_actions **sfa,  bool log)
sfa              1697 net/openvswitch/conntrack.c 	err = ovs_nla_add_action(sfa, OVS_ACTION_ATTR_CT, &ct_info,
sfa              2257 net/openvswitch/flow_netlink.c 	struct sw_flow_actions *sfa;
sfa              2261 net/openvswitch/flow_netlink.c 	sfa = kmalloc(sizeof(*sfa) + size, GFP_KERNEL);
sfa              2262 net/openvswitch/flow_netlink.c 	if (!sfa)
sfa              2265 net/openvswitch/flow_netlink.c 	sfa->actions_len = 0;
sfa              2266 net/openvswitch/flow_netlink.c 	return sfa;
sfa              2316 net/openvswitch/flow_netlink.c static struct nlattr *reserve_sfa_size(struct sw_flow_actions **sfa,
sfa              2324 net/openvswitch/flow_netlink.c 					(*sfa)->actions_len;
sfa              2326 net/openvswitch/flow_netlink.c 	if (req_size <= (ksize(*sfa) - next_offset))
sfa              2329 net/openvswitch/flow_netlink.c 	new_acts_size = max(next_offset + req_size, ksize(*sfa) * 2);
sfa              2344 net/openvswitch/flow_netlink.c 	memcpy(acts->actions, (*sfa)->actions, (*sfa)->actions_len);
sfa              2345 net/openvswitch/flow_netlink.c 	acts->actions_len = (*sfa)->actions_len;
sfa              2346 net/openvswitch/flow_netlink.c 	acts->orig_len = (*sfa)->orig_len;
sfa              2347 net/openvswitch/flow_netlink.c 	kfree(*sfa);
sfa              2348 net/openvswitch/flow_netlink.c 	*sfa = acts;
sfa              2351 net/openvswitch/flow_netlink.c 	(*sfa)->actions_len += req_size;
sfa              2352 net/openvswitch/flow_netlink.c 	return  (struct nlattr *) ((unsigned char *)(*sfa) + next_offset);
sfa              2355 net/openvswitch/flow_netlink.c static struct nlattr *__add_action(struct sw_flow_actions **sfa,
sfa              2360 net/openvswitch/flow_netlink.c 	a = reserve_sfa_size(sfa, nla_attr_size(len), log);
sfa              2374 net/openvswitch/flow_netlink.c int ovs_nla_add_action(struct sw_flow_actions **sfa, int attrtype, void *data,
sfa              2379 net/openvswitch/flow_netlink.c 	a = __add_action(sfa, attrtype, data, len, log);
sfa              2384 net/openvswitch/flow_netlink.c static inline int add_nested_action_start(struct sw_flow_actions **sfa,
sfa              2387 net/openvswitch/flow_netlink.c 	int used = (*sfa)->actions_len;
sfa              2390 net/openvswitch/flow_netlink.c 	err = ovs_nla_add_action(sfa, attrtype, NULL, 0, log);
sfa              2397 net/openvswitch/flow_netlink.c static inline void add_nested_action_end(struct sw_flow_actions *sfa,
sfa              2400 net/openvswitch/flow_netlink.c 	struct nlattr *a = (struct nlattr *) ((unsigned char *)sfa->actions +
sfa              2403 net/openvswitch/flow_netlink.c 	a->nla_len = sfa->actions_len - st_offset;
sfa              2408 net/openvswitch/flow_netlink.c 				  struct sw_flow_actions **sfa,
sfa              2413 net/openvswitch/flow_netlink.c 				    struct sw_flow_actions **sfa,
sfa              2442 net/openvswitch/flow_netlink.c 	start = add_nested_action_start(sfa, OVS_ACTION_ATTR_SAMPLE, log);
sfa              2460 net/openvswitch/flow_netlink.c 	err = ovs_nla_add_action(sfa, OVS_SAMPLE_ATTR_ARG, &arg, sizeof(arg),
sfa              2465 net/openvswitch/flow_netlink.c 	err = __ovs_nla_copy_actions(net, actions, key, sfa,
sfa              2471 net/openvswitch/flow_netlink.c 	add_nested_action_end(*sfa, start);
sfa              2479 net/openvswitch/flow_netlink.c 				   struct sw_flow_actions **sfa,
sfa              2489 net/openvswitch/flow_netlink.c 	start = add_nested_action_start(sfa, OVS_ACTION_ATTR_CLONE, log);
sfa              2495 net/openvswitch/flow_netlink.c 	err = ovs_nla_add_action(sfa, OVS_CLONE_ATTR_EXEC, &exec,
sfa              2500 net/openvswitch/flow_netlink.c 	err = __ovs_nla_copy_actions(net, attr, key, sfa,
sfa              2505 net/openvswitch/flow_netlink.c 	add_nested_action_end(*sfa, start);
sfa              2557 net/openvswitch/flow_netlink.c 				     struct sw_flow_actions **sfa, bool log)
sfa              2591 net/openvswitch/flow_netlink.c 	start = add_nested_action_start(sfa, OVS_ACTION_ATTR_SET, log);
sfa              2607 net/openvswitch/flow_netlink.c 	a = __add_action(sfa, OVS_KEY_ATTR_TUNNEL_INFO, NULL,
sfa              2632 net/openvswitch/flow_netlink.c 	add_nested_action_end(*sfa, start);
sfa              2666 net/openvswitch/flow_netlink.c 			struct sw_flow_actions **sfa, bool *skip_copy,
sfa              2709 net/openvswitch/flow_netlink.c 		err = validate_and_copy_set_tun(a, sfa, log);
sfa              2810 net/openvswitch/flow_netlink.c 		start = add_nested_action_start(sfa,
sfa              2816 net/openvswitch/flow_netlink.c 		at = __add_action(sfa, key_type, NULL, len, log);
sfa              2828 net/openvswitch/flow_netlink.c 		add_nested_action_end(*sfa, start);
sfa              2865 net/openvswitch/flow_netlink.c 					   struct sw_flow_actions **sfa,
sfa              2893 net/openvswitch/flow_netlink.c 	start = add_nested_action_start(sfa, OVS_ACTION_ATTR_CHECK_PKT_LEN,
sfa              2904 net/openvswitch/flow_netlink.c 	err = ovs_nla_add_action(sfa, OVS_CHECK_PKT_LEN_ATTR_ARG, &arg,
sfa              2909 net/openvswitch/flow_netlink.c 	nested_acts_start = add_nested_action_start(sfa,
sfa              2914 net/openvswitch/flow_netlink.c 	err = __ovs_nla_copy_actions(net, acts_if_lesser_eq, key, sfa,
sfa              2920 net/openvswitch/flow_netlink.c 	add_nested_action_end(*sfa, nested_acts_start);
sfa              2922 net/openvswitch/flow_netlink.c 	nested_acts_start = add_nested_action_start(sfa,
sfa              2927 net/openvswitch/flow_netlink.c 	err = __ovs_nla_copy_actions(net, acts_if_greater, key, sfa,
sfa              2933 net/openvswitch/flow_netlink.c 	add_nested_action_end(*sfa, nested_acts_start);
sfa              2934 net/openvswitch/flow_netlink.c 	add_nested_action_end(*sfa, start);
sfa              2939 net/openvswitch/flow_netlink.c 		       struct sw_flow_actions **sfa, bool log)
sfa              2944 net/openvswitch/flow_netlink.c 	to = reserve_sfa_size(sfa, from->nla_len, log);
sfa              2954 net/openvswitch/flow_netlink.c 				  struct sw_flow_actions **sfa,
sfa              3089 net/openvswitch/flow_netlink.c 			err = validate_set(a, key, sfa,
sfa              3097 net/openvswitch/flow_netlink.c 			err = validate_set(a, key, sfa,
sfa              3107 net/openvswitch/flow_netlink.c 			err = validate_and_copy_sample(net, a, key, sfa,
sfa              3117 net/openvswitch/flow_netlink.c 			err = ovs_ct_copy_action(net, a, key, sfa, log);
sfa              3177 net/openvswitch/flow_netlink.c 			err = validate_and_copy_clone(net, a, key, sfa,
sfa              3189 net/openvswitch/flow_netlink.c 			err = validate_and_copy_check_pkt_len(net, a, key, sfa,
sfa              3204 net/openvswitch/flow_netlink.c 			err = copy_action(a, sfa, log);
sfa              3219 net/openvswitch/flow_netlink.c 			 struct sw_flow_actions **sfa, bool log)
sfa              3223 net/openvswitch/flow_netlink.c 	*sfa = nla_alloc_flow_actions(min(nla_len(attr), MAX_ACTIONS_BUFSIZE));
sfa              3224 net/openvswitch/flow_netlink.c 	if (IS_ERR(*sfa))
sfa              3225 net/openvswitch/flow_netlink.c 		return PTR_ERR(*sfa);
sfa              3227 net/openvswitch/flow_netlink.c 	(*sfa)->orig_len = nla_len(attr);
sfa              3228 net/openvswitch/flow_netlink.c 	err = __ovs_nla_copy_actions(net, attr, key, sfa, key->eth.type,
sfa              3231 net/openvswitch/flow_netlink.c 		ovs_nla_free_flow_actions(*sfa);
sfa                59 net/openvswitch/flow_netlink.h 			 struct sw_flow_actions **sfa, bool log);
sfa                60 net/openvswitch/flow_netlink.h int ovs_nla_add_action(struct sw_flow_actions **sfa, int attrtype,