Please, try with this patch too:
diff --git a/fs/locks.c b/fs/locks.c
index c0fe71a..f599508 100644
--- a/fs/locks.c
+++ b/fs/locks.c
@@ -1423,7 +1423,7 @@ int generic_setlease(struct file *filp,
locks_copy_lock(new_fl, lease);
locks_insert_lock(before, new_fl);
- *flp = fl;
+ *flp = new_fl;
return 0;
out:
-