Hi Stephen,

> -----Original Message-----
> From: Po Liu
> Sent: 2020年5月7日 10:53
> To: Stephen Hemminger <[email protected]>
> Cc: [email protected]; [email protected];
> [email protected]; [email protected];
> [email protected]; [email protected]; Claudiu Manoil
> <[email protected]>; Vladimir Oltean <[email protected]>;
> Alexandru Marginean <[email protected]>
> Subject: RE: Re: [v4,iproute2-next 1/2] iproute2-next:tc:action: add a gate
> control action
> 
> Hi Stephen,
> 
> 
> > -----Original Message-----
> > From: Stephen Hemminger <[email protected]>
> > Sent: 2020年5月6日 23:22
> > To: Po Liu <[email protected]>
> > Cc: [email protected]; [email protected];
> > [email protected]; [email protected];
> [email protected];
> > [email protected]; Claudiu Manoil <[email protected]>; Vladimir
> > Oltean <[email protected]>; Alexandru Marginean
> > <[email protected]>
> > Subject: Re: [v4,iproute2-next 1/2] iproute2-next:tc:action: add a
> > gate control action On Wed,  6 May 2020 16:40:19 +0800 Po Liu
> > <[email protected]> wrote:
> >
> > >               } else if (matches(*argv, "base-time") == 0) {
> > > +                     NEXT_ARG();
> > > +                     if (get_u64(&base_time, *argv, 10)) {
> > > +                             invalidarg = "base-time";
> > > +                             goto err_arg;
> > > +                     }
> > > +             } else if (matches(*argv, "cycle-time") == 0) {
> > > +                     NEXT_ARG();
> > > +                     if (get_u64(&cycle_time, *argv, 10)) {
> > > +                             invalidarg = "cycle-time";
> > > +                             goto err_arg;
> > > +                     }
> > > +             } else if (matches(*argv, "cycle-time-ext") == 0) {
> > > +                     NEXT_ARG();
> > > +                     if (get_u64(&cycle_time_ext, *argv, 10)) {
> > > +                             invalidarg = "cycle-time-ext";
> > > +                             goto err_arg;
> > > +                     }
> >
> > Could all these time values use existing TC helper routines?
> 
> I agree to keep the tc routines input.
> The names of timer input and type is more reference the taprio input.
> 

Shall I support both input method. The default decimal input like 120000 
default to nano-second and formal time routines like 120us.
Then the tc show command shows formal time routines like 120us whatever in 
non-json format. Json format shows a decimal number only which is always done 
by other tc command.

So this would compatible with kernel commit commands examples. But I would 
mention in the man pages supporting the timer routines input.

> > See get_time().  The way you have it makes sense for hardware but
> > stands out versus the rest of tc.
> >
> > It maybe that the kernel UAPI is wrong, and should be using same time
> > units as rest of tc. Forgot to review that part of the patch.
> 
> I would also sync with kernel UAPI if needed.

I checked the gate UAPI file, there is nothing need to changed for time format.

> 
> 
> Br,
> Po Liu



Br,
Po Liu

Reply via email to