Raghu,
1) I don't think that this is a Linux-specific problem, at least the link you provided above clearly mentioned 32-bit Solaris supporting 64Gb RAM.
2) Your patch does work and will work for a while, simply because instead of memory size in bytes you use memory size in pages. Which is not what you want. I'd just use min(GU_AVPHYS_SIZE, size_t(-1))
Raghu,
1) I don't think that this is a Linux-specific problem, at least the link you provided above clearly mentioned 32-bit Solaris supporting 64Gb RAM.
2) Your patch does work and will work for a while, simply because instead of memory size in bytes you use memory size in pages. Which is not what you want. I'd just use min(GU_AVPHYS_SIZE, size_t(-1))