> @Andrew > > > You could update the stats here, after the interface is down. You then > > know the stats are actually up to date and correct! > > stats are automatically read on __dev_notify_flags(), for example here: > > [ 11.049289] [<80069ce0>] show_stack+0x9c/0x140 > [ 11.053651] [<804eea2c>] ar9331_get_stats64+0x38/0x394 > [ 11.058820] [<80526584>] dev_get_stats+0x58/0xfc > [ 11.063385] [<805428c8>] rtnl_fill_stats+0x6c/0x14c > [ 11.068293] [<8054703c>] rtnl_fill_ifinfo+0x548/0xcec > [ 11.073274] [<8054a4d4>] rtmsg_ifinfo_build_skb+0xbc/0x134 > [ 11.078799] [<8054a5d4>] rtmsg_ifinfo_event+0x4c/0x84 > [ 11.083782] [<8054a6c8>] rtmsg_ifinfo+0x2c/0x38 > [ 11.088378] [<80534380>] __dev_notify_flags+0x50/0xd8 > [ 11.093365] [<80534ca0>] dev_change_flags+0x60/0x80 > [ 11.098273] [<80c13fa4>] ic_close_devs+0xcc/0xdc > [ 11.102810] [<80c15200>] ip_auto_config+0x1144/0x11e4 > [ 11.107847] [<80060f14>] do_one_initcall+0x110/0x2b4 > [ 11.112871] [<80bf31bc>] kernel_init_freeable+0x220/0x258 > [ 11.118248] [<80739a2c>] kernel_init+0x24/0x11c > [ 11.122707] [<8006306c>] ret_from_kernel_thread+0x14/0x1c > > Do we really need an extra read within the ar9331 driver? Ah, did not know that. Nice, Somebody solved this for all drivers at once. Andrew