Given that everything else in the object cache uses fcntl locking this makes sense. This just leaves my store locking using lockf, which probably also should switch to fcntl locking. In addition some little helpers to isolate the calling code from using struct flock manipulation would be nice.