This content has been marked as final. Show 3 replies
The question you really need to answer is, "What else is broken?"
Because an open() system call is an open() system call - the kernel doesn't care what application is making it.
Since you mention UFS as being your local file system, that means you're running on Solaris, right? So what kind of server is your NFS server? Linux or Solaris? FWIW, the history of Linux NFS implementations isn't very good, especially in heterogeneous environments.
The local filesystem is actually ext3 on linux, not UFS... my bad. The server is an Isilon storage cluster, which by default returns 64-bit file handles via NFS. Understandably the OS kernel shouldn't care about the app, but when a 64-bit file id is presented back to a 32-bit application such as sunstudio CC, the results lead me to believe it's not supported.
This case is further shown by the fact that when I constrain the NFS share to present 32-bit only file handles, the sunstudio compiler works like a champ.