On Sun 20 May 2018 at 06:22, Jiri Pirko wrote:
> Sat, May 19, 2018 at 11:43:27PM CEST, marcelo.leit...@gmail.com wrote:
>>On Mon, May 14, 2018 at 05:27:07PM +0300, Vlad Buslov wrote:
>>...
>>> @@ -1052,6 +1088,36 @@ static int tca_action_flush(struct net *net, struct
>>> nlattr *nla,
>>> ret
Sat, May 19, 2018 at 11:43:27PM CEST, marcelo.leit...@gmail.com wrote:
>On Mon, May 14, 2018 at 05:27:07PM +0300, Vlad Buslov wrote:
>...
>> @@ -1052,6 +1088,36 @@ static int tca_action_flush(struct net *net, struct
>> nlattr *nla,
>> return err;
>> }
>>
>> +static int tcf_action_delete(stru
On Mon, May 14, 2018 at 05:27:07PM +0300, Vlad Buslov wrote:
...
> @@ -1052,6 +1088,36 @@ static int tca_action_flush(struct net *net, struct
> nlattr *nla,
> return err;
> }
>
> +static int tcf_action_delete(struct net *net, struct list_head *actions,
> + struct ne
On Tue 15 May 2018 at 09:03, Jiri Pirko wrote:
> Mon, May 14, 2018 at 09:07:06PM CEST, vla...@mellanox.com wrote:
>>
>>On Mon 14 May 2018 at 16:47, Jiri Pirko wrote:
>>> Mon, May 14, 2018 at 04:27:07PM CEST, vla...@mellanox.com wrote:
>>>
>>> [...]
>>>
>>>
+static int tcf_action_del_1(struct
Mon, May 14, 2018 at 09:07:06PM CEST, vla...@mellanox.com wrote:
>
>On Mon 14 May 2018 at 16:47, Jiri Pirko wrote:
>> Mon, May 14, 2018 at 04:27:07PM CEST, vla...@mellanox.com wrote:
>>
>> [...]
>>
>>
>>>+static int tcf_action_del_1(struct net *net, char *kind, u32 index,
>>>+
On Mon 14 May 2018 at 16:47, Jiri Pirko wrote:
> Mon, May 14, 2018 at 04:27:07PM CEST, vla...@mellanox.com wrote:
>
> [...]
>
>
>>+static int tcf_action_del_1(struct net *net, char *kind, u32 index,
>>+ struct netlink_ext_ack *extack)
>>+{
>>+ const struct tc_action_op
Mon, May 14, 2018 at 04:27:07PM CEST, vla...@mellanox.com wrote:
[...]
>+static int tcf_action_del_1(struct net *net, char *kind, u32 index,
>+ struct netlink_ext_ack *extack)
>+{
>+ const struct tc_action_ops *ops;
>+ int err = -EINVAL;
>+
>+ ops = tc_loo
Mon, May 14, 2018 at 04:27:07PM CEST, vla...@mellanox.com wrote:
>Implement helper function to delete action using new action ops delete
>function implemented by each action for lockless execution.
Reading this sentense for 4 times. I still don't understand what you say :(
>
>Implement action put
Implement helper function to delete action using new action ops delete
function implemented by each action for lockless execution.
Implement action put function that releases reference to action and frees
it if necessary. Refactor action deletion code to use new put function and
not to rely on rtn