Hi, Attached in subsequent mails is a patch series for file record locking support, mainly developed by Neal Walfield in 2001. The patch was published by Marcus Brinkmann and later re-diffed by Michael Banck in 2002. Now modified to use libpthread instead of cthreads and some additional fixes.
Links: http://savannah.gnu.org/task/?1022 http://savannah.gnu.org/patch/?332 I've run this patched Hurd on several kvm images since July 2014 without problems. 1/6: hurd_new_RPC.patch: add new RPC: file_record_lock 2/6: libdiskfs_file_record_lock.patch: implement diskfs_S_file_record_lock and modify diskfs_S_* accordingly, initialize and release lock_status. 3/6: libfshelp_rlock.patch: implement fshelp_rlock_* functions 4/6: libfshelp-tests_rlock.patch: implement file_record_lock tests 5/6: libnetfs_file_record_lock.patch: implement netfs_S_file_record_lock 6/6: libtrivfs_file_record_lock.patch: implement trivfs_S_file_record_lock There are two issues left to solve: 1) l_pid of struct flock is not set. According to the manpage (and posix) the PID of the process blocking the lock should be reported. Can maybe be solved by a shared memory solution in glibc or as indicated in task 1022. 2) fork(2) does not create a process without the locks set for the child. According to the fcntl(2) manpage (and posix) record locks are not inherited by a child created via fork(2). The fork functionality is tested in the program libfshelp-tests/fork.c. Proposed solutions are mentioned in task 1022. (This is probably the main cause tdbtorture in tdb does not work well with the current file record locking patches.) Maybe also the copyright text should be updated to a more modern version for new files (and adding copyright year 2015?) Thanks! -- To UNSUBSCRIBE, email to debian-hurd-requ...@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org Archive: https://lists.debian.org/1420716485.2983.117.ca...@g3620.my.own.domain