From mboxrd@z Thu Jan 1 00:00:00 1970 From: "Steve French" Subject: [RFC] patch to add support for leases to cifs Date: Tue, 21 Oct 2008 17:03:58 -0500 Message-ID: <524f69650810211503y67ed9418t2076e9e0ed5601e9@mail.gmail.com> Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="----=_Part_15018_7238602.1224626638885" Cc: "linux-cifs-client@lists.samba.org" To: linux-fsdevel Return-path: Received: from wf-out-1314.google.com ([209.85.200.173]:16572 "EHLO wf-out-1314.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1750951AbYJUWD7 (ORCPT ); Tue, 21 Oct 2008 18:03:59 -0400 Received: by wf-out-1314.google.com with SMTP id 27so2699395wfd.4 for ; Tue, 21 Oct 2008 15:03:58 -0700 (PDT) Sender: linux-fsdevel-owner@vger.kernel.org List-ID: ------=_Part_15018_7238602.1224626638885 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit Content-Disposition: inline fcntl(F_SETLEASE) currently is not exported by cifs (nor by local file systems) so cifs grants leases based on how other local processes have opened the file not by whether the file is cacheable (oplocked). This adds the check to make sure that the file is cacheable on the client before checking whether we can grant the lease locally (generic_setlease). -- Thanks, Steve ------=_Part_15018_7238602.1224626638885 Content-Type: text/x-patch; name=cifs-setlease.patch Content-Transfer-Encoding: base64 X-Attachment-Id: f_fml31jbw0 Content-Disposition: attachment; filename=cifs-setlease.patch ZGlmZiAtLWdpdCBhL2ZzL2NpZnMvY2lmc2ZzLmMgYi9mcy9jaWZzL2NpZnNmcy5jCmluZGV4IGM2 YWFkNzcuLmFhYTZmMzcgMTAwNjQ0Ci0tLSBhL2ZzL2NpZnMvY2lmc2ZzLmMKKysrIGIvZnMvY2lm cy9jaWZzZnMuYwpAQCAtNjE4LDYgKzYxOCwyNiBAQCBzdGF0aWMgbG9mZl90IGNpZnNfbGxzZWVr KHN0cnVjdCBmaWxlICpmaWxlLCBsb2ZmX3Qgb2Zmc2V0LCBpbnQgb3JpZ2luKQogCXJldHVybiBn ZW5lcmljX2ZpbGVfbGxzZWVrX3VubG9ja2VkKGZpbGUsIG9mZnNldCwgb3JpZ2luKTsKIH0KIAor I2lmZGVmIENPTkZJR19DSUZTX0VYUEVSSU1FTlRBTAorc3RhdGljIGludCBjaWZzX3NldGxlYXNl KHN0cnVjdCBmaWxlICpmaWxlLCBsb25nIGFyZywgc3RydWN0IGZpbGVfbG9jayAqKmxlYXNlKQor eworCS8qIG5vdGUgdGhhdCB0aGlzIGlzIGNhbGxlZCBieSB2ZnMgc2V0bGVhc2Ugd2l0aCB0aGUg QktMIGhlbGQKKwkgICBhbHRob3VnaCBJIGRvdWJ0IHRoYXQgQktMIGlzIG5lZWRlZCBoZXJlIGlu IGNpZnMgKi8KKworCWlmICghKFNfSVNSRUcoaW5vZGUtPmlfbW9kZSkpCisJCXJldHVybiAtRUlO VkFMOworCisJLyogY2hlY2sgaWYgZmlsZSBpcyBvcGxvY2tlZCAqLworCWlmICgoKGFyZyA9PSBG X1JETENLKSAmJgorCQkoQ0lGU19JKGZpbGUtPmZfcGF0aC5kZW50cnktPmRfaW5vZGUpLT5jbGll bnRDYW5DYWNoZVJlYWQpKSB8fAorCSAgICAoKGFyZyA9PSBGX1dSTENLKSAmJgorCQkoQ0lGU19J KGZpbGUtPmZfcGF0aC5kZW50cnktPmRfaW5vZGUpLT5jbGllbnRDYW5DYWNoZUFsbCkpKQorCQly ZXR1cm4gZ2VuZXJpY19zZXRsZWFzZShmaWxlLCBhcmcsIGxlYXNlKTsKKwllbHNlCisJCXJldHVy biAtRUFHQUlOOworfQorI2VuZGlmCisKIHN0cnVjdCBmaWxlX3N5c3RlbV90eXBlIGNpZnNfZnNf dHlwZSA9IHsKIAkub3duZXIgPSBUSElTX01PRFVMRSwKIAkubmFtZSA9ICJjaWZzIiwKQEAgLTY5 Niw2ICs3MTYsNyBAQCBjb25zdCBzdHJ1Y3QgZmlsZV9vcGVyYXRpb25zIGNpZnNfZmlsZV9vcHMg PSB7CiAKICNpZmRlZiBDT05GSUdfQ0lGU19FWFBFUklNRU5UQUwKIAkuZGlyX25vdGlmeSA9IGNp ZnNfZGlyX25vdGlmeSwKKwkuc2V0bGVhc2UgPSBjaWZzX3NldGxlYXNlLAogI2VuZGlmIC8qIENP TkZJR19DSUZTX0VYUEVSSU1FTlRBTCAqLwogfTsKIApAQCAtNzE2LDYgKzczNyw3IEBAIGNvbnN0 IHN0cnVjdCBmaWxlX29wZXJhdGlvbnMgY2lmc19maWxlX2RpcmVjdF9vcHMgPSB7CiAJLmxsc2Vl ayA9IGNpZnNfbGxzZWVrLAogI2lmZGVmIENPTkZJR19DSUZTX0VYUEVSSU1FTlRBTAogCS5kaXJf bm90aWZ5ID0gY2lmc19kaXJfbm90aWZ5LAorCS5zZXRsZWFzZSA9IGNpZnNfc2V0bGVhc2UsCiAj ZW5kaWYgLyogQ09ORklHX0NJRlNfRVhQRVJJTUVOVEFMICovCiB9OwogY29uc3Qgc3RydWN0IGZp bGVfb3BlcmF0aW9ucyBjaWZzX2ZpbGVfbm9icmxfb3BzID0gewpAQCAtNzM2LDYgKzc1OCw3IEBA IGNvbnN0IHN0cnVjdCBmaWxlX29wZXJhdGlvbnMgY2lmc19maWxlX25vYnJsX29wcyA9IHsKIAog I2lmZGVmIENPTkZJR19DSUZTX0VYUEVSSU1FTlRBTAogCS5kaXJfbm90aWZ5ID0gY2lmc19kaXJf bm90aWZ5LAorCS5zZXRsZWFzZSA9IGNpZnNfc2V0bGVhc2UsCiAjZW5kaWYgLyogQ09ORklHX0NJ RlNfRVhQRVJJTUVOVEFMICovCiB9OwogCkBAIC03NTUsNiArNzc4LDcgQEAgY29uc3Qgc3RydWN0 IGZpbGVfb3BlcmF0aW9ucyBjaWZzX2ZpbGVfZGlyZWN0X25vYnJsX29wcyA9IHsKIAkubGxzZWVr ID0gY2lmc19sbHNlZWssCiAjaWZkZWYgQ09ORklHX0NJRlNfRVhQRVJJTUVOVEFMCiAJLmRpcl9u b3RpZnkgPSBjaWZzX2Rpcl9ub3RpZnksCisJLnNldGxlYXNlID0gY2lmc19zZXRsZWFzZSwKICNl bmRpZiAvKiBDT05GSUdfQ0lGU19FWFBFUklNRU5UQUwgKi8KIH07CiAKQEAgLTk0Niw2ICs5NzAs MTIgQEAgc3RhdGljIGludCBjaWZzX29wbG9ja190aHJlYWQodm9pZCAqZHVtbXlhcmcpCiAJCQkJ dGhlIGNhbGwgKi8KIAkJCS8qIG11dGV4X2xvY2soJmlub2RlLT5pX211dGV4KTsqLwogCQkJaWYg KFNfSVNSRUcoaW5vZGUtPmlfbW9kZSkpIHsKKyNpZmRlZiBDT05GSUdfQ0lGU19FWFBFUklNRU5U QUwKKwkJCQlpZiAoQ0lGU19JKGlub2RlKS0+Y2xpZW50Q2FuQ2FjaGVBbGwgPT0gMCkKKwkJCQkJ YnJlYWtfbGVhc2UoaW5vZGUsIEZNT0RFX1JFQUQpOworCQkJCWVsc2UgaWYgKENJRlNfSShpbm9k ZSktPmNsaWVudENhbkNhY2hlUmVhZCA9PSAwKQorCQkJCQlicmVha19sZWFzZShpbm9kZSwgRk1P REVfV1JJVEUpOworI2VuZGlmCiAJCQkJcmMgPSBmaWxlbWFwX2ZkYXRhd3JpdGUoaW5vZGUtPmlf bWFwcGluZyk7CiAJCQkJaWYgKENJRlNfSShpbm9kZSktPmNsaWVudENhbkNhY2hlUmVhZCA9PSAw KSB7CiAJCQkJCXdhaXRyYyA9IGZpbGVtYXBfZmRhdGF3YWl0KAo= ------=_Part_15018_7238602.1224626638885--