Date: Wed, 27 Dec 2006 16:20:20 GMT From: "Ulrich Spoerlein" <uspoerlein@gmail.com> To: freebsd-bugs@FreeBSD.org Subject: Re: kern/92785: Using exported filesystem on OS/2 NFS client causes filesystem freeze Message-ID: <200612271620.kBRGKKci057690@freefall.freebsd.org>
next in thread | raw e-mail | index | archive | help
The following reply was made to PR kern/92785; it has been noted by GNATS. From: "Ulrich Spoerlein" <uspoerlein@gmail.com> To: "Konstantin Belousov" <kostikbel@gmail.com> Cc: bug-followup@freebsd.org, "Bruce Evans" <bde@zeta.org.au> Subject: Re: kern/92785: Using exported filesystem on OS/2 NFS client causes filesystem freeze Date: Wed, 27 Dec 2006 17:05:00 +0100 ------=_Part_125620_18226065.1167235500867 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Content-Disposition: inline On 12/27/06, Konstantin Belousov <kostikbel@gmail.com> wrote: > Index: fs/udf/udf_vnops.c > =================================================================== > RCS file: /usr/local/arch/ncvs/src/sys/fs/udf/udf_vnops.c,v > retrieving revision 1.61 > diff -u -r1.61 udf_vnops.c > --- fs/udf/udf_vnops.c 3 Feb 2006 15:25:52 -0000 1.61 > +++ fs/udf/udf_vnops.c 27 Dec 2006 15:24:10 -0000 > @@ -915,7 +915,7 @@ > if (flags & ISDOTDOT) > VOP_UNLOCK(dvp, 0, a->a_cnp->cn_thread); > error = udf_vget(udfmp->im_mountp, id, LK_EXCLUSIVE, &tdp); > - if (flags & ISDOTDOT) > + if ((flags & ISDOTDOT) && dvp != tdp ) > vn_lock(dvp, LK_EXCLUSIVE|LK_RETRY, a->a_cnp->cn_thread); > if (!error) { > /* I do NOT have a UDF-Image and can thus not test this change. If some kind soul could give me a link to an UDF image < 300MB, that would be great. In addition to ufs, msdosfs and cd9660, I also had to patch ext2fs in the same way. NB: Even though reiserfs has a similar code flow, I was not able to make a reiserfs exported filesystem hang or crash the machine. Odd. Attached is the cumulative diff of the kernel I tested this with. Tested filesystems needing patch: ufs, msdosfs, cd9660, ext2fs Tested filesystems sans patch: reiserfs Untested filesystems: udf, ntfs, smbfs, nwfs, (zfs?) All the testing was sponsored by: 1822direkt GmbH Thanks for your support. Uli ------=_Part_125620_18226065.1167235500867 Content-Type: text/x-patch; name=lookup.diff; charset=ANSI_X3.4-1968 Content-Transfer-Encoding: base64 X-Attachment-Id: f_ew7xu9sx Content-Disposition: attachment; filename="lookup.diff" SW5kZXg6IGZzL21zZG9zZnMvbXNkb3Nmc19sb29rdXAuYwo9PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ClJDUyBmaWxlOiAv YnVpbGQvbmN2cy9zcmMvc3lzL2ZzL21zZG9zZnMvbXNkb3Nmc19sb29rdXAuYyx2CnJldHJpZXZp bmcgcmV2aXNpb24gMS40NgpkaWZmIC11IC1yMS40NiBtc2Rvc2ZzX2xvb2t1cC5jCi0tLSBmcy9t c2Rvc2ZzL21zZG9zZnNfbG9va3VwLmMJMTYgQXByIDIwMDUgMjM6NDc6MTkgLTAwMDAJMS40Ngor KysgZnMvbXNkb3Nmcy9tc2Rvc2ZzX2xvb2t1cC5jCTI3IERlYyAyMDA2IDEzOjA2OjA2IC0wMDAw CkBAIC01MjAsMTYgKzUyMCwxNiBAQAogCSAqIHRoYXQgcG9pbnQgYmFja3dhcmRzIGluIHRoZSBk aXJlY3Rvcnkgc3RydWN0dXJlLgogCSAqLwogCXBkcCA9IHZkcDsKLQlpZiAoZmxhZ3MgJiBJU0RP VERPVCkgeworCWlmIChkcC0+ZGVfU3RhcnRDbHVzdGVyID09IHNjbiAmJiBpc2FkaXIpIHsKKwkJ VlJFRih2ZHApOwkvKiB3ZSB3YW50IG91cnNlbGYsIGllICIuIiAqLworCQkqdnBwID0gdmRwOwor CX0gZWxzZSBpZiAoZmxhZ3MgJiBJU0RPVERPVCkgewogCQlWT1BfVU5MT0NLKHBkcCwgMCwgdGQp OwogCQllcnJvciA9IGRlZ2V0KHBtcCwgY2x1c3RlciwgYmxrb2ZmLCAgJnRkcCk7CiAJCXZuX2xv Y2socGRwLCBMS19FWENMVVNJVkUgfCBMS19SRVRSWSwgdGQpOyAKIAkJaWYgKGVycm9yKQogCQkJ cmV0dXJuIChlcnJvcik7CiAJCSp2cHAgPSBERVRPVih0ZHApOwotCX0gZWxzZSBpZiAoZHAtPmRl X1N0YXJ0Q2x1c3RlciA9PSBzY24gJiYgaXNhZGlyKSB7Ci0JCVZSRUYodmRwKTsJLyogd2Ugd2Fu dCBvdXJzZWxmLCBpZSAiLiIgKi8KLQkJKnZwcCA9IHZkcDsKIAl9IGVsc2UgewogCQlpZiAoKGVy cm9yID0gZGVnZXQocG1wLCBjbHVzdGVyLCBibGtvZmYsICZ0ZHApKSAhPSAwKQogCQkJcmV0dXJu IChlcnJvcik7CkluZGV4OiBnbnUvZnMvZXh0MmZzL2V4dDJfbG9va3VwLmMKPT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQpS Q1MgZmlsZTogL2J1aWxkL25jdnMvc3JjL3N5cy9nbnUvZnMvZXh0MmZzL2V4dDJfbG9va3VwLmMs dgpyZXRyaWV2aW5nIHJldmlzaW9uIDEuNTAuMi4xCmRpZmYgLXUgLXIxLjUwLjIuMSBleHQyX2xv b2t1cC5jCi0tLSBnbnUvZnMvZXh0MmZzL2V4dDJfbG9va3VwLmMJNCBKYW4gMjAwNiAxOTozMjow MCAtMDAwMAkxLjUwLjIuMQorKysgZ251L2ZzL2V4dDJmcy9leHQyX2xvb2t1cC5jCTI3IERlYyAy MDA2IDE1OjI2OjAxIC0wMDAwCkBAIC02NTUsNyArNjU1LDEwIEBACiAJICogdGhhdCBwb2ludCBi YWNrd2FyZHMgaW4gdGhlIGRpcmVjdG9yeSBzdHJ1Y3R1cmUuCiAJICovCiAJcGRwID0gdmRwOwot CWlmIChmbGFncyAmIElTRE9URE9UKSB7CisJaWYgKGRwLT5pX251bWJlciA9PSBkcC0+aV9pbm8p IHsKKwkJVlJFRih2ZHApOwkvKiB3ZSB3YW50IG91cnNlbGYsIGllICIuIiAqLworCQkqdnBwID0g dmRwOworCX0gZWxzZSBpZiAoZmxhZ3MgJiBJU0RPVERPVCkgewogCQlzYXZlZF9pbm8gPSBkcC0+ aV9pbm87CiAJCVZPUF9VTkxPQ0socGRwLCAwLCB0ZCk7CS8qIHJhY2UgdG8gZ2V0IHRoZSBpbm9k ZSAqLwogCQllcnJvciA9IFZGU19WR0VUKHZkcC0+dl9tb3VudCwgc2F2ZWRfaW5vLCBMS19FWENM VVNJVkUsICZ0ZHApOwpAQCAtNjYzLDkgKzY2Niw2IEBACiAJCWlmIChlcnJvciAhPSAwKQogCQkJ cmV0dXJuIChlcnJvcik7CiAJCSp2cHAgPSB0ZHA7Ci0JfSBlbHNlIGlmIChkcC0+aV9udW1iZXIg PT0gZHAtPmlfaW5vKSB7Ci0JCVZSRUYodmRwKTsJLyogd2Ugd2FudCBvdXJzZWxmLCBpZSAiLiIg Ki8KLQkJKnZwcCA9IHZkcDsKIAl9IGVsc2UgewogCQlpZiAoKGVycm9yID0gVkZTX1ZHRVQodmRw LT52X21vdW50LCBkcC0+aV9pbm8sIExLX0VYQ0xVU0lWRSwKIAkJICAgICZ0ZHApKSAhPSAwKQpJ bmRleDogaXNvZnMvY2Q5NjYwL2NkOTY2MF9sb29rdXAuYwo9PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ClJDUyBmaWxlOiAv YnVpbGQvbmN2cy9zcmMvc3lzL2lzb2ZzL2NkOTY2MC9jZDk2NjBfbG9va3VwLmMsdgpyZXRyaWV2 aW5nIHJldmlzaW9uIDEuNDEuMi4xCmRpZmYgLXUgLXIxLjQxLjIuMSBjZDk2NjBfbG9va3VwLmMK LS0tIGlzb2ZzL2NkOTY2MC9jZDk2NjBfbG9va3VwLmMJNCBKYW4gMjAwNiAxOTozNToyNCAtMDAw MAkxLjQxLjIuMQorKysgaXNvZnMvY2Q5NjYwL2NkOTY2MF9sb29rdXAuYwkyNyBEZWMgMjAwNiAx MzozMToyNiAtMDAwMApAQCAtMzQ3LDcgKzM0NywxMSBAQAogCSAqIElmIGlubyBpcyBkaWZmZXJl bnQgZnJvbSBkcC0+aV9pbm8sCiAJICogaXQncyBhIHJlbG9jYXRlZCBkaXJlY3RvcnkuCiAJICov Ci0JaWYgKGZsYWdzICYgSVNET1RET1QpIHsKKwlpZiAoZHAtPmlfbnVtYmVyID09IGRwLT5pX2lu bykgeworCQlicmVsc2UoYnApOworCQlWUkVGKHZkcCk7CS8qIHdlIHdhbnQgb3Vyc2VsZiwgaWUg Ii4iICovCisJCSp2cHAgPSB2ZHA7CisJfSBlbHNlIGlmIChmbGFncyAmIElTRE9URE9UKSB7CiAJ CXNhdmVkX2lubyA9IGRwLT5pX2lubzsKIAkJVk9QX1VOTE9DSyhwZHAsIDAsIHRkKTsJLyogcmFj ZSB0byBnZXQgdGhlIGlub2RlICovCiAJCWVycm9yID0gY2Q5NjYwX3ZnZXRfaW50ZXJuYWwodmRw LT52X21vdW50LCBzYXZlZF9pbm8sCkBAIC0zNTgsMTAgKzM2Miw2IEBACiAJCWlmIChlcnJvcikK IAkJCXJldHVybiAoZXJyb3IpOwogCQkqdnBwID0gdGRwOwotCX0gZWxzZSBpZiAoZHAtPmlfbnVt YmVyID09IGRwLT5pX2lubykgewotCQlicmVsc2UoYnApOwotCQlWUkVGKHZkcCk7CS8qIHdlIHdh bnQgb3Vyc2VsZiwgaWUgIi4iICovCi0JCSp2cHAgPSB2ZHA7CiAJfSBlbHNlIHsKIAkJZXJyb3Ig PSBjZDk2NjBfdmdldF9pbnRlcm5hbCh2ZHAtPnZfbW91bnQsIGRwLT5pX2lubywKIAkJCQkJICAg ICBMS19FWENMVVNJVkUsICZ0ZHAsCkluZGV4OiB1ZnMvdWZzL3Vmc19sb29rdXAuYwo9PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09ClJDUyBmaWxlOiAvYnVpbGQvbmN2cy9zcmMvc3lzL3Vmcy91ZnMvdWZzX2xvb2t1cC5jLHYK cmV0cmlldmluZyByZXZpc2lvbiAxLjc3LjIuMwpkaWZmIC11IC1yMS43Ny4yLjMgdWZzX2xvb2t1 cC5jCi0tLSB1ZnMvdWZzL3Vmc19sb29rdXAuYwk1IFNlcCAyMDA2IDEzOjIwOjQxIC0wMDAwCTEu NzcuMi4zCisrKyB1ZnMvdWZzL3Vmc19sb29rdXAuYwkyNyBEZWMgMjAwNiAxMjo1MTozMiAtMDAw MApAQCAtNTU2LDcgKzU1NiwxMCBAQAogCSAqIHRoYXQgcG9pbnQgYmFja3dhcmRzIGluIHRoZSBk aXJlY3Rvcnkgc3RydWN0dXJlLgogCSAqLwogCXBkcCA9IHZkcDsKLQlpZiAoZmxhZ3MgJiBJU0RP VERPVCkgeworCWlmIChkcC0+aV9udW1iZXIgPT0gZHAtPmlfaW5vKSB7CisJCVZSRUYodmRwKTsJ Lyogd2Ugd2FudCBvdXJzZWxmLCBpZSAiLiIgKi8KKwkJKnZwcCA9IHZkcDsKKwl9IGVsc2UgaWYg KGZsYWdzICYgSVNET1RET1QpIHsKIAkJc2F2ZWRfaW5vID0gZHAtPmlfaW5vOwogCQlWT1BfVU5M T0NLKHBkcCwgMCwgdGQpOwkvKiByYWNlIHRvIGdldCB0aGUgaW5vZGUgKi8KIAkJZXJyb3IgPSBW RlNfVkdFVChwZHAtPnZfbW91bnQsIHNhdmVkX2lubywKQEAgLTU2NSw5ICs1NjgsNiBAQAogCQlp ZiAoZXJyb3IpCiAJCQlyZXR1cm4gKGVycm9yKTsKIAkJKnZwcCA9IHRkcDsKLQl9IGVsc2UgaWYg KGRwLT5pX251bWJlciA9PSBkcC0+aV9pbm8pIHsKLQkJVlJFRih2ZHApOwkvKiB3ZSB3YW50IG91 cnNlbGYsIGllICIuIiAqLwotCQkqdnBwID0gdmRwOwogCX0gZWxzZSB7CiAJCWVycm9yID0gVkZT X1ZHRVQocGRwLT52X21vdW50LCBkcC0+aV9pbm8sCiAJCSAgICBjbnAtPmNuX2xrZmxhZ3MsICZ0 ZHApOwo= ------=_Part_125620_18226065.1167235500867--
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200612271620.kBRGKKci057690>