[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <25cff61e-5068-e25d-4554-a3ed3ccb0373@mojatatu.com>
Date: Mon, 18 May 2020 08:43:00 -0400
From: Jamal Hadi Salim <jhs@...atatu.com>
To: Roman Mashak <mrv@...atatu.com>,
Cong Wang <xiyou.wangcong@...il.com>
Cc: David Miller <davem@...emloft.net>,
Linux Kernel Network Developers <netdev@...r.kernel.org>,
kernel@...atatu.com, Jiri Pirko <jiri@...nulli.us>
Subject: Re: [PATCH net 1/1] net sched: fix reporting the first-time use
timestamp
On 2020-05-17 9:10 p.m., Roman Mashak wrote:
> Cong Wang <xiyou.wangcong@...il.com> writes:
>
>> On Sun, May 17, 2020 at 5:47 AM Roman Mashak <mrv@...atatu.com> wrote:
>>>
>>> When a new action is installed, firstuse field of 'tcf_t' is explicitly set
>>> to 0. Value of zero means "new action, not yet used"; as a packet hits the
>>> action, 'firstuse' is stamped with the current jiffies value.
>>>
>>> tcf_tm_dump() should return 0 for firstuse if action has not yet been hit.
>>
>> Your patch makes sense to me.
>>
>> Just one more thing, how about 'lastuse'? It is initialized with jiffies,
>> not 0, it seems we should initialize it to 0 too, as it is not yet used?
>
> Yes, exactly. I was planning to send a separate patch for this.
>
> Thanks for review, Cong.
>
For these corner cases, firstuse using zero to indicate
"has not been used" is not ambigious.
lastuse has ambiguity because zero now has two meanings
if you check for the corner case in the kernel.
1)Zero is a legit value when dumping or
getting (example an action was just hit when you dumped).
2) zero also now means "has not been used".
My suggestion is to leave this alone in the kernel.
In user space/iproute2 check if lastused and created
are equal and declare "has not been used".
cheers,
jamal
Powered by blists - more mailing lists