Linux linux_fcntl64 with F_GETLK is faulty?

Yuri yuri at rawbw.com
Sun Apr 28 09:08:01 UTC 2013


While running a linux 32-bit program on 9.1 amd64, I see these two lines 
in truss log, and program also eventually fails:
linux_open("/some/file/name",0x40,0644)      = 5 (0x5)
linux_fcntl64(0x5,0x7,0xffff8410,0xffff8410,0x2a988ff4,0x6) ERR#9 'Bad 
file descriptor'

cmd=0x7 is F_GETLK in linux.

Several questions with this:
1. Why EBADF error is returned? fd=5 appears to be a valid descriptor 
based on the presence of the previous open call.
2. Is file locking not implemented in linux emulator? Is this related to 
the issue when acrobat reader requires linux_adobe.ko kernel module and 
also consumes 100% CPU all the time due to some workaround?

Theare are in make.conf of this system, if this matters:
OVERRIDE_LINUX_BASE_PORT=f10
OVERRIDE_LINUX_NONBASE_PORTS=f10

Yuri


More information about the freebsd-emulation mailing list