I think the problem is ttm uses an unsigned long to store the offsets which is only 32 bits on 32 bit kernels, but the GPU's address space is 64 bit so it gets cut off.