The definition of the field was always 64bit and when userspace fails to properly set the upper 32bits than userspace needs to get fixed, not the kernel.
Userspace fails to properly set the upper 32bits and a 32 bit kernel don't check the upper 32 bits :-)
Can you try to figure out where the random bits in the upper 32bits come from?
I don't think so. I use android-x86 4.0-r1 image taken from http://www.android-x86.org Thank's a lot.