64-bit fields in struct net_device_stats

Jeff
2003-06-16T01:17:23Z

Hello all,
I was looking for a project that would take some time to finish, and I think
I found it - converting all code in the kernel to use u_int64_t (or similar)
instead of unsigned long in struct net_device_stats.
Now, I have an idea on my mind about how to do this:

I'd move the structure to a new file in linux/include/asm
(linux/include/asm-{arch}/netdevice.h, for example) and implement there
couple of functions that would change the counters in the structure
(something like: static inline void net_stats_txbytes_add(struct
net_device_stats* stats, unsigned long len)). These would lock (if necessary
- - 32-bit architectures), add, unlock (if necessary.) The only thing is, that
all the NIC drivers in the kernel up to date would have to be changed to use
this new interface.

Now, my question: Is there a better way of accomplishing this?

Thanks,
Jeff.

- --
A CRAY is the only computer that runs an endless loop in just 4 hours...
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.2 (GNU/Linux)

iD8DBQE+7R3XwFP0+seVj/4RAolgAJ9QE4eLfKqrVhR9tktoZCHjcfarfgCcDb1A
HELhBfYleUbTSaTymmTsRJM=
=xu4t