Mailing List Archive

[PATCH] libnetfilter_conntrack: Packet/byte counters are 64 bit
Re: [PATCH] libnetfilter_conntrack: Packet/byte counters are 64 bit [ In reply to ]
Philip Craig wrote:
> The counters in struct nf_conntrack are 64 bit, so the getter/setter
> have to access them as such.

Still my kernel has 32 bit counters although I know that there was a
patch on the table to recover 64 bits counters. I'm still getting in
sync with the development again, did that patch finally hit mainline?

--
"Será preciso viajar por los ojos de los idiotas" -- Poeta en Nueva York
-- Federico García Lorca.
Re: [PATCH] libnetfilter_conntrack: Packet/byte counters are 64 bit [ In reply to ]
Pablo Neira Ayuso wrote:
> Philip Craig wrote:
>> The counters in struct nf_conntrack are 64 bit, so the getter/setter
>> have to access them as such.
>
> Still my kernel has 32 bit counters although I know that there was a
> patch on the table to recover 64 bits counters. I'm still getting in
> sync with the development again, did that patch finally hit mainline?

The kernel still sends 32 bit from what I can see, but this is problem
independent of what the kernel sends. The library handles receiving both
32 and 64 bit counters from the kernel, and stores them in a 64 bit
field in a structure. The getter/setter then access that field, but that
doesn't work if they access only 32 bits of it, at least for big endian.

An alternative fix is to change the nf_conntrack field to 32 bit,
but I would only do that if you never intend for the kernel to send
64 bit counters.