Index: linux-2.4.24-2/arch/um/os-Linux/file.c --- linux-2.4.24-2/arch/um/os-Linux/file.c 7 Apr 2004 20:44:49 -0000 1.29 +++ linux-2.4.24-2/arch/um/os-Linux/file.c 17 May 2004 18:35:49 -0000 @@ -688,6 +688,7 @@ int os_lock_file(int fd, int excl) { +#if USE_FCNTL_LOCK int type = excl ? F_WRLCK : F_RDLCK; struct flock lock = ((struct flock) { .l_type = type, .l_whence = SEEK_SET, @@ -710,6 +711,21 @@ err = save; out: return(err); +#else + int type = excl ? LOCK_EX : LOCK_SH; + int err, save; + + err = flock(fd, type | LOCK_NB); + if(!err) + goto out; + + save = -errno; + + printk("file already locked\n"); + err = save; + out: + return(err); +#endif } int os_ftruncate(int fd, __u64 size)