act_api.c (16af6067392c40e454e49eec834843ab03643d96) | act_api.c (4e8ddd7f1758ca4ddd0c1f7cf3e66fce736241d2) |
---|---|
1/* 2 * net/sched/act_api.c Packet action API. 3 * 4 * This program is free software; you can redistribute it and/or 5 * modify it under the terms of the GNU General Public License 6 * as published by the Free Software Foundation; either version 7 * 2 of the License, or (at your option) any later version. 8 * --- 856 unchanged lines hidden (view full) --- 865 act = tcf_action_init_1(net, tp, tb[i], est, name, ovr, bind, 866 rtnl_held, extack); 867 if (IS_ERR(act)) { 868 err = PTR_ERR(act); 869 goto err; 870 } 871 act->order = i; 872 sz += tcf_action_fill_size(act); | 1/* 2 * net/sched/act_api.c Packet action API. 3 * 4 * This program is free software; you can redistribute it and/or 5 * modify it under the terms of the GNU General Public License 6 * as published by the Free Software Foundation; either version 7 * 2 of the License, or (at your option) any later version. 8 * --- 856 unchanged lines hidden (view full) --- 865 act = tcf_action_init_1(net, tp, tb[i], est, name, ovr, bind, 866 rtnl_held, extack); 867 if (IS_ERR(act)) { 868 err = PTR_ERR(act); 869 goto err; 870 } 871 act->order = i; 872 sz += tcf_action_fill_size(act); |
873 if (ovr) 874 refcount_inc(&act->tcfa_refcnt); | |
875 list_add_tail(&act->list, actions); 876 } 877 878 *attr_size = tcf_action_full_attrs_size(sz); 879 880 /* Remove the temp refcnt which was necessary to protect against 881 * destroying an existing action which was being replaced 882 */ --- 779 unchanged lines hidden --- | 873 list_add_tail(&act->list, actions); 874 } 875 876 *attr_size = tcf_action_full_attrs_size(sz); 877 878 /* Remove the temp refcnt which was necessary to protect against 879 * destroying an existing action which was being replaced 880 */ --- 779 unchanged lines hidden --- |