Re: [Patch net 0/5] net_sched: tc action fixes and updates
From: Jamal Hadi Salim <jhs@mojatatu.com>
Date: 2016-08-11 16:21:28
On 16-08-10 04:06 PM, Cong Wang wrote:
On Wed, Aug 10, 2016 at 7:34 AM, Jamal Hadi Salim [off-list ref] wrote:quoted
On 16-08-08 04:46 PM, Cong Wang wrote:
quoted
tcf_exts_exec() is the culprit - and conversion to from flexarray to linked list in the fast problem to be specific.Ah, this reminds me that I don't have to use flex_array, initially I thought the tcf_exts could hold as many actions as it wants, but actually there is a upper bound, TCA_ACT_MAX_PRIO. IOW, a regular dynamic array is just enough here.
Yes, a regular array would be enough.
I just replaced the flex_array with a regular one, it works fine for me too, at least no crash with all of my test cases.
Ok, I did a quick look at your patch - I still see you converting from array to list. I mean get tcf_exts_exec() to take an array and walk it. That will restore the perf numbers to the same level.
Please try v2, since you have more test cases that I do. Or it would be great if you can share your test cases with me or us. Be patient, every big change could have regression. :)
No problem Cong - except we have a kernel that crashes right now. BTW: I just thought of another test which uses a different code path # add a policer rule sudo $TC actions add action police rate 1kbit burst 90k drop #dump rules.. sudo $TC -s actions ls action police cheers, jamal