Use F_GETLK for fcntl when F_OFD_GETLK not defined, such as kernel 3.10. Signed-off-by: Jun Piao <piao...@huawei.com> --- v2: - Use F_OFD_SETLK to replace F_OFD_GETLK in #ifdef.
--- contrib/virtiofsd/passthrough_ll.c | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/contrib/virtiofsd/passthrough_ll.c b/contrib/virtiofsd/passthrough_ll.c index a81c01d..c69f2f3 100644 --- a/contrib/virtiofsd/passthrough_ll.c +++ b/contrib/virtiofsd/passthrough_ll.c @@ -1780,7 +1780,11 @@ static void lo_getlk(fuse_req_t req, fuse_ino_t ino, goto out; } +#ifdef F_OFD_GETLK ret = fcntl(plock->fd, F_OFD_GETLK, lock); +#else + ret = fcntl(plock->fd, F_GETLK, lock); +#endif if (ret == -1) saverr = errno; @@ -1831,7 +1835,11 @@ static void lo_setlk(fuse_req_t req, fuse_ino_t ino, /* TODO: Is it alright to modify flock? */ lock->l_pid = 0; +#ifdef F_OFD_SETLK ret = fcntl(plock->fd, F_OFD_SETLK, lock); +#else + ret = fcntl(plock->fd, F_GETLK, lock); +#endif if (ret == -1) { saverr = errno; } --