Bug in dazukofs_lookup()
Lino Sanfilippo <[email protected]> Fri, 10 Jul 2009 15:54:22 +0200
| Newsgroups | gmane.linux.dazuko.devel |
|---|---|
| Message-ID | <[email protected]> |
This is a multi-part message in MIME format. --------------020505090200080500030203 Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit This patch fixes a bug in dazukofs_lookup(): If interpose fails we must not dput() the lower dentry, since at this time the dentry operations have already been set up. This includes the d_release() operation which already cares about dput(). This patch also removes some unnecessary lines of code: - The check for "." and ".." dentries is not needed, since the vfs will never pass those dentries down to our lookup function. - we never have to unhash() a dentry, since after we hashed a dentry via d_add() (in lookup() or interpose()), there are no errors possible. - setting up dentry operations in interpose() is redundant (since already done in lookup()) The flag passed to interpose() has been renamed, since it indicates if a dentry should be hashed, not that it already has been hashed. Please apply this patch after patch 1 that has been posted yesterday. Geschäftsführender Gesellschafter: Tjark Auerbach Sitz der Gesellschaft: Tettnang Handelsregister: Amtsgericht Ulm, HRB 630992 ALLGEMEINE GESCHÄFTSBEDINGUNGEN Es gelten unsere Allgemeinen Geschäftsbedingungen (AGB). Sie finden sie in der jeweils gültigen Fassung im Internet unter http://www.avira.de/agb *************************************************** --------------020505090200080500030203 Content-Type: text/plain; name="dazukofs-3.1.0-rc2-Patch2" Content-Transfer-Encoding: base64 Content-Disposition: inline; filename="dazukofs-3.1.0-rc2-Patch2" ZGlmZiAtcnVwIGRhenVrb2ZzLTMuMS4wLXJjMi1QYXRjaGVkL2lub2RlLmMgZGF6dWtvZnMt My4xLjAtcmMyLVBhdGNoZWQyL2lub2RlLmMKLS0tIGRhenVrb2ZzLTMuMS4wLXJjMi1QYXRj aGVkL2lub2RlLmMJMjAwOS0wNy0wOSAxNzozNDoyNS4wMDAwMDAwMDAgKzAyMDAKKysrIGRh enVrb2ZzLTMuMS4wLXJjMi1QYXRjaGVkMi9pbm9kZS5jCTIwMDktMDctMTAgMTU6NDc6NTUu MDAwMDAwMDAwICswMjAwCkBAIC03NCw3ICs3NCw3IEBAIHN0YXRpYyBpbnQgZGF6dWtvZnNf aW5vZGVfc2V0KHN0cnVjdCBpbm8KICAqIFJldHVybnMgMCBvbiBzdWNjZXNzLgogICovCiBp bnQgZGF6dWtvZnNfaW50ZXJwb3NlKHN0cnVjdCBkZW50cnkgKmxvd2VyX2RlbnRyeSwgc3Ry dWN0IGRlbnRyeSAqZGVudHJ5LAotCQkgICAgICAgc3RydWN0IHN1cGVyX2Jsb2NrICpzYiwg aW50IGFscmVhZHlfaGFzaGVkKQorCQkgICAgICAgc3RydWN0IHN1cGVyX2Jsb2NrICpzYiwg aW50IGhhc2gpCiB7CiAJc3RydWN0IGlub2RlICppbm9kZTsKIAlzdHJ1Y3QgaW5vZGUgKmxv d2VyX2lub2RlID0gaWdyYWIobG93ZXJfZGVudHJ5LT5kX2lub2RlKTsKQEAgLTEyMiw5ICsx MjIsNyBAQCBpbnQgZGF6dWtvZnNfaW50ZXJwb3NlKHN0cnVjdCBkZW50cnkgKmxvCiAJCQkJ ICAgbG93ZXJfaW5vZGUtPmlfcmRldik7CiAJfQogCi0JZGVudHJ5LT5kX29wID0gJmRhenVr b2ZzX2RvcHM7Ci0KLQlpZiAoYWxyZWFkeV9oYXNoZWQpCisJaWYgKGhhc2gpCiAJCWRfYWRk KGRlbnRyeSwgaW5vZGUpOwogCWVsc2UKIAkJZF9pbnN0YW50aWF0ZShkZW50cnksIGlub2Rl KTsKQEAgLTE1NiwxOSArMTU0LDYgQEAgc3RhdGljIHN0cnVjdCBkZW50cnkgKmRhenVrb2Zz X2xvb2t1cChzdAogCXN0cnVjdCB2ZnNtb3VudCAqbG93ZXJfbW50OwogCWludCBlcnIgPSAw OwogCi0JLyogY2hlY2sgZm9yICIuIiBvciAiLi4iICh0aGV5IGFyZSBub3QgcmVsZXZhbnQg aGVyZSkgKi8KLQlpZiAoZGVudHJ5LT5kX25hbWUubGVuID09IDEpIHsKLQkJaWYgKGRlbnRy eS0+ZF9uYW1lLm5hbWVbMF0gPT0gJy4nKSB7Ci0JCQlkX2Ryb3AoZGVudHJ5KTsKLQkJCWdv dG8gb3V0OwotCQl9Ci0JfSBlbHNlIGlmIChkZW50cnktPmRfbmFtZS5sZW4gPT0gMikgewot CQlpZiAoZGVudHJ5LT5kX25hbWUubmFtZVswXSA9PSAnLicgJiYKLQkJICAgIGRlbnRyeS0+ ZF9uYW1lLm5hbWVbMV0gPT0gJy4nKSB7Ci0JCQlkX2Ryb3AoZGVudHJ5KTsKLQkJCWdvdG8g b3V0OwotCQl9Ci0JfQogCiAJZGVudHJ5LT5kX29wID0gJmRhenVrb2ZzX2RvcHM7CiAKQEAg LTE4MCw3ICsxNjUsNiBAQCBzdGF0aWMgc3RydWN0IGRlbnRyeSAqZGF6dWtvZnNfbG9va3Vw KHN0CiAJbXV0ZXhfdW5sb2NrKCZsb3dlcl9kZW50cnlfcGFyZW50LT5kX2lub2RlLT5pX211 dGV4KTsKIAlpZiAoSVNfRVJSKGxvd2VyX2RlbnRyeSkpIHsKIAkJZXJyID0gUFRSX0VSUihs b3dlcl9kZW50cnkpOwotCQlkX2Ryb3AoZGVudHJ5KTsKIAkJZ290byBvdXQ7CiAJfQogCkBA IC0xOTEsOSArMTc1LDExIEBAIHN0YXRpYyBzdHJ1Y3QgZGVudHJ5ICpkYXp1a29mc19sb29r dXAoc3QKIAkJCQkJICAgICBHRlBfS0VSTkVMKSk7CiAJaWYgKCFnZXRfZGVudHJ5X3ByaXZh dGUoZGVudHJ5KSkgewogCQllcnIgPSAtRU5PTUVNOwotCQlnb3RvIG91dF9kcHV0OworCQlk cHV0KGxvd2VyX2RlbnRyeSk7CisJCWdvdG8gb3V0OwogCX0KLQorCS8qIGZyb20gbm93IGxv d2VyIGRlbnRyeSBhbmQgbG93ZXIgbW91bnQgYXJlIHJlbGVhc2VkIGluIAorCSAqIGRfcmVs ZWFzZSgpICovCiAJZnNzdGFja19jb3B5X2F0dHJfYXRpbWUoZGlyLCBsb3dlcl9kZW50cnlf cGFyZW50LT5kX2lub2RlKTsKIAogCWxvd2VyX21udCA9IG1udGdldChnZXRfbG93ZXJfbW50 KGRlbnRyeS0+ZF9wYXJlbnQpKTsKQEAgLTIwNiwxNSArMTkyLDggQEAgc3RhdGljIHN0cnVj dCBkZW50cnkgKmRhenVrb2ZzX2xvb2t1cChzdAogCQlkX2FkZChkZW50cnksIE5VTEwpOwog CQlnb3RvIG91dDsKIAl9Ci0KIAllcnIgPSBkYXp1a29mc19pbnRlcnBvc2UobG93ZXJfZGVu dHJ5LCBkZW50cnksIGRpci0+aV9zYiwgMSk7Ci0JaWYgKGVycikKLQkJZ290byBvdXRfZHB1 dDsKLQlnb3RvIG91dDsKIAotb3V0X2RwdXQ6Ci0JZHB1dChsb3dlcl9kZW50cnkpOwotCWRf ZHJvcChkZW50cnkpOwogb3V0OgogCXJldHVybiBFUlJfUFRSKGVycik7CiB9Ck51ciBpbiBk YXp1a29mcy0zLjEuMC1yYzItUGF0Y2hlZDogLmlub2RlLmMuc3dwLgo= --------------020505090200080500030203 Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Disposition: inline _______________________________________________ Dazuko-devel mailing list [email protected] http://lists.nongnu.org/mailman/listinfo/dazuko-devel --------------020505090200080500030203--