On 1/19/17, 7:21 AM, Nogah Frankel wrote: >> -----Original Message----- >> From: Nogah Frankel >> Sent: Sunday, January 15, 2017 3:55 PM >> To: 'Stephen Hemminger' <[email protected]> >> Cc: [email protected]; [email protected]; [email protected]; >> Jiri >> Pirko <[email protected]>; Ido Schimmel <[email protected]>; Elad Raz >> <[email protected]>; Yotam Gigi <[email protected]>; Or Gerlitz >> <[email protected]> >> Subject: RE: [PATCH iproute2 v4 3/4] ifstat: Add 64 bits based stats to >> extended statistics >> >> >> >>> -----Original Message----- >>> From: Stephen Hemminger [mailto:[email protected]] >>> Sent: Friday, January 13, 2017 3:44 AM >>> To: Nogah Frankel <[email protected]> >>> Cc: [email protected]; [email protected]; [email protected]; >> Jiri >>> Pirko <[email protected]>; Ido Schimmel <[email protected]>; Elad Raz >>> <[email protected]>; Yotam Gigi <[email protected]>; Or Gerlitz >>> <[email protected]> >>> Subject: Re: [PATCH iproute2 v4 3/4] ifstat: Add 64 bits based stats to >>> extended statistics >>> >>> On Thu, 12 Jan 2017 15:49:50 +0200 >>> Nogah Frankel <[email protected]> wrote: >>> >>>> The default stats for ifstat are 32 bits based. >>>> The kernel supports 64 bits based stats. (They are returned in struct >>>> rtnl_link_stats64 which is an exact copy of struct rtnl_link_stats, in >>>> which the "normal" stats are returned, but with fields of u64 instead of >>>> u32). This patch adds them as an extended stats. >>>> >>>> It is read with filter type IFLA_STATS_LINK_64 and no sub type. >>>> >>>> It is under the name 64bits >>>> (or any shorten of it as "64") >>>> >>>> For example: >>>> ifstat -x 64bit >>>> >>>> Signed-off-by: Nogah Frankel <[email protected]> >>>> Reviewed-by: Jiri Pirko <[email protected]> >>> Other commands (like ip link) always use the 64 bit statistics if available >>> from the device. I see no reason that ifstat needs to be different. >>> >> Do you mean to change the default ifstat results to be 64 bits based? >> I tried it in the first version, but Roopa commented that it was not a good >> idea. >> She said they tried it in the past and it caused backward compatibilities >> problems. >> (Or maybe I didn't understand correctly) > So, can I leave the default ifstat results to be 32 bits based, for the time > being? > >From past discussions: Moving the default to 64bit has compat issues with the >old history file. There is a way to make it work by using a new file header (to indicate that it is 64 bit) in a freshly created history file and also check this header before dumping stats into the history file. ie maintain backward compat without introducing a new option. It is doable.
One approach is, you can drop the 64bit option from this series and try updating the default to 64 bit (with compat handling code) in a later series.
