After several kernel recompiles here's what I found out:
size field performence
------------------------------------
short bytes_rcv
short rcvbuf good
short sndbuf
-----------------------------------
int bytes_rcv
short rcvbuf good
short sndbuf
-----------------------------------
int bytes_rcv
int rcvbuf good
short sndbuf
-----------------------------------
int bytes_rcv
short rcvbuf BAD
int sndbuf
-----------------------------------
So it appears that the problem is on the sndbuf field