abrir O_CREAT | O_EXCL en NFS en Linux?
Cuando en el kernel de Linux 2.6 y en NFSv3 hizoopen("fname", O_CREAT|O_EXCL)
se hizo válido? El canonico actualopen(2)
documentación de llamada del sistema (http://www.kernel.org/doc/man-pages/online/pages/man2/open.2.html) dice que todo está bien:
- O_EXCL
- ...
On NFS, O_EXCL is only supported when using NFSv3 or later on kernel
2.6 or later. In NFS environments where O_EXCL support is not
provided, programs that rely on it for performing locking tasks will
contain a race condition. Portable programs that want to perform
atomic file locking using a lockfile, and need to avoid reliance on NFS
support for O_EXCL, can ...
Esto se lee como si todos los núcleos 2.6 estuvieran bien, pero la página del manualregistro de cambios (ca late kernel 2.6.23) comienza a indicar validezcuatro años después de que se lanzó 2.6.0, y la web está plagada de usuarios de juntas censurando este uso en el último año o dos. Me gustaría usar esta configuración en los sistemas RHEL 5 (2.6.18), pero no pude precisar cuándo realmente se volvió seguro. ¿Alguien tiene una respuesta definitiva?