[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#412132: cacct interface misscalced about 100 TB



Package: linux-image-2.6.18-4-vserver-amd64
Version: 2.6.18.dfsg.1-9
Severity: serious

Hello,

I think I've found a serious bug in the vserver image for amd64.
We're running a daemon, which is logging the traffic of all hostmachines. Now I've found a very big mistake in the /proc/virtual/<id>/cacct interface.

The daemon gets the informations of this cacct interface and will calc the caused traffic, here's the debug of my daemon:

|Fri Feb 23 15:42:01 2007 - cacct: 1472700147 o.cacct 1472517504 logged: 1495189052 now: 1495371695 method: 1
Fri Feb 23 16:00:01 2007 - cacct: 18446744072641133818 o.cacct 3222831651 logged: 3178567909 now: 18446744072596870076 method: 1

|The cacct variable is the value of all incoming / outcoming IPv4 and IPv6 traffic in bytes. This debug would mean, that one customer has caused traffic more as 100 TB in 20 minutes ( and that only with one ventrilo server! ). First I thought, it's a bug in my daemon software, but that wasn't the problem, how this information will show:

|<hostname>:~/control# cat /proc/virtual/2/cacct
UNSPEC: 0/0 0/0 0/0 UNIX: 305586/28642976 267311/28642976 1/30 INET: 9058790/1149688302 9889025/18446744071736090069 47323/18446744072430740975 INET6: 0/0 0/0 0/0 OTHER: 0/0 0/0 0/0
forks:  0|
|
|It seems as the kernel misscalced or overflowed after a cacct value over |"1472700147".

It's the first and only example of this bug, because this is the first customer, with such "a lot" traffic.

Regards,
Patrick Matthäi
|



Reply to: