Date: Sat, 11 May 2013 21:51:03 -0400 (EDT) From: Rick Macklem <rmacklem@uoguelph.ca> To: Hartmut Brandt <hartmut.brandt@dlr.de> Cc: current@freebsd.org Subject: Re: files disappearing from ls on NFS Message-ID: <1012361480.290121.1368323463788.JavaMail.root@erie.cs.uoguelph.ca> In-Reply-To: <alpine.BSF.2.00.1305021801110.95088@KNOP-BEAGLE.kn.op.dlr.de>
next in thread | previous in thread | raw e-mail | index | archive | help
------=_Part_290120_1668671246.1368323463785 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit Hartmut Brandt wrote: > Hi, > > I've updated one of my -current machines this week (previous update > was in > february). Now I see a strange effect (it seems only on NFS mounts): > ls or > even echo * will list only some files (strange enough the first files > from > the normal, alphabetically ordered list). If I change something in the > directory (delete a file or create a new one) for some time the > complete > listing will appear but after sime time (seconds to a minute or so) > again > only part of the files is listed. > > A ktrace on ls /usr/src/lib/libc/gen shows that getdirentries is > called > only once (returning 4096). For a full listing getdirentries is called > 5 > times with the last returning 0. > > I can still open files that are not listed if I know their name, > though. > > The NFS server is a Windows 2008 server with an OpenText NFS Server > which > works without problems to all the other FreeBSD machines. > > So what could that be? > I've attached a patch that might be worth trying. It is a "shot in the dark", but brings the new NFS client's readdir closer to the old one (which you mentioned still works ok). Please let me know how it goes, if you have a chance to test it, rick > Regards, > harti > _______________________________________________ > freebsd-current@freebsd.org mailing list > http://lists.freebsd.org/mailman/listinfo/freebsd-current > To unsubscribe, send any mail to > "freebsd-current-unsubscribe@freebsd.org" ------=_Part_290120_1668671246.1368323463785 Content-Type: text/x-patch; name=dirtry.patch Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename=dirtry.patch LS0tIGZzL25mc2NsaWVudC9uZnNfY2xycGNvcHMuYy5zYXYJMjAxMy0wNS0xMSAyMDowMjoyNC4w MDAwMDAwMDAgLTA0MDAKKysrIGZzL25mc2NsaWVudC9uZnNfY2xycGNvcHMuYwkyMDEzLTA1LTEx IDIwOjQ2OjI4LjAwMDAwMDAwMCAtMDQwMApAQCAtMjYwNCwzMSArMjYwNCw2IEBAIG5mc3JwY19y bWRpcih2bm9kZV90IGR2cCwgY2hhciAqbmFtZSwgaW4KIAogLyoKICAqIFJlYWRkaXIgcnBjLgot ICogQWx3YXlzIHJldHVybnMgd2l0aCBlaXRoZXIgdWlvX3Jlc2lkIHVuY2hhbmdlZCwgaWYgeW91 IGFyZSBhdCB0aGUKLSAqIGVuZCBvZiB0aGUgZGlyZWN0b3J5LCBvciB1aW9fcmVzaWQgPT0gMCwg d2l0aCBhbGwgRElSQkxLU0laIGNodW5rcwotICogZmlsbGVkIGluLgotICogSSBmZWx0IHRoaXMg d291bGQgYWxsb3cgY2FjaGluZyBvZiBkaXJlY3RvcnkgYmxvY2tzIG1vcmUgZWFzaWx5Ci0gKiB0 aGFuIHJldHVybmluZyBhIHBlcnRpYWxseSBmaWxsZWQgYmxvY2suCi0gKiBEaXJlY3Rvcnkgb2Zm c2V0IGNvb2tpZXM6Ci0gKiBPaCBteSwgd2hhdCB0byBkbyB3aXRoIHRoZW0uLi4KLSAqIEkgY2Fu IHRoaW5rIG9mIHRocmVlIHdheXMgdG8gZGVhbCB3aXRoIHRoZW06Ci0gKiAxIC0gaGF2ZSB0aGUg bGF5ZXIgYWJvdmUgdGhlc2UgUlBDcyBtYWludGFpbiBhIG1hcCBiZXR3ZWVuIGxvZ2ljYWwKLSAq ICAgICBkaXJlY3RvcnkgYnl0ZSBvZmZzZXRzIGFuZCB0aGUgTkZTIGRpcmVjdG9yeSBvZmZzZXQg Y29va2llcwotICogMiAtIHBhc3MgdGhlIG9wYXF1ZSBkaXJlY3Rvcnkgb2Zmc2V0IGNvb2tpZXMg dXAgaW50byB1c2VybGFuZAotICogICAgIGFuZCBsZXQgdGhlIGxpYmMgZnVuY3Rpb25zIGRlYWwg d2l0aCB0aGVtLCB2aWEgdGhlIHN5c3RlbSBjYWxsCi0gKiAzIC0gcmV0dXJuIHRoZW0gdG8gdXNl cmxhbmQgaW4gdGhlICJzdHJ1Y3QgZGlyZW50Iiwgc28gZnV0dXJlIHZlcnNpb25zCi0gKiAgICAg b2YgbGliYyBjYW4gdXNlIHRoZW0gYW5kIGRvIHdoYXRldmVyIGlzIG5lY2Vzc2FyeSB0byBhbWtl IHRoaW5ncyB3b3JrCi0gKiAgICAgYWJvdmUgdGhlc2UgcnBjIGNhbGxzLCBpbiB0aGUgbWVhbnRp bWUKLSAqIEZvciBub3csIEkgZG8gIzMgYnkgImhpZGluZyIgdGhlIGRpcmVjdG9yeSBvZmZzZXQg Y29va2llcyBhZnRlciB0aGUKLSAqIGRfbmFtZSBmaWVsZCBpbiBzdHJ1Y3QgZGlyZW50LiBUaGlz IGlzIHNwYWNlIGluc2lkZSBkX3JlY2xlbiB0aGF0Ci0gKiB3aWxsIGJlIGlnbm9yZWQgYnkgYW55 dGhpbmcgdGhhdCBkb2Vzbid0IGtub3cgYWJvdXQgdGhlbS4KLSAqIFRoZSBkaXJlY3Rvcnkgb2Zm c2V0IGNvb2tpZXMgYXJlIGZpbGxlZCBpbiBhcyB0aGUgbGFzdCA4IGJ5dGVzIG9mCi0gKiBlYWNo IGRpcmVjdG9yeSBlbnRyeSwgYWZ0ZXIgZF9uYW1lLiBTb21lZGF5LCB0aGUgdXNlcmxhbmQgbGli YwotICogZnVuY3Rpb25zIG1heSBiZSBhYmxlIHRvIHVzZSB0aGVzZS4gSW4gdGhlIG1lYW50aW1l LCBpdCBzYXRpc2ZpZXMKLSAqIE9wZW5CU0QncyByZXF1aXJlbWVudHMgZm9yIGNvb2tpZXMgYmVp bmcgcmV0dXJuZWQuCi0gKiBJZiBleHBlY3RzIHRoZSBkaXJlY3Rvcnkgb2Zmc2V0IGNvb2tpZSBm b3IgdGhlIHJlYWQgdG8gYmUgaW4gdWlvX29mZnNldAotICogYW5kIHJldHVybnMgdGhlIG9uZSBm b3IgdGhlIG5leHQgZW50cnkgYWZ0ZXIgdGhpcyBkaXJlY3RvcnkgYmxvY2sgaW4KLSAqIHRoZXJl LCBhcyB3ZWxsLgogICovCiBBUFBMRVNUQVRJQyBpbnQKIG5mc3JwY19yZWFkZGlyKHZub2RlX3Qg dnAsIHN0cnVjdCB1aW8gKnVpb3AsIG5mc3VpbnQ2NCAqY29va2llcCwKQEAgLTI2NDksMTIgKzI2 MjQsMTIgQEAgbmZzcnBjX3JlYWRkaXIodm5vZGVfdCB2cCwgc3RydWN0IHVpbyAqdQogCXVfaW50 MzJfdCBmYWtlZmlsZW5vID0gMHhmZmZmZmZmZiwgcmRlcnI7CiAJY2hhciAqY3A7CiAJbmZzYXR0 cmJpdF90IGF0dHJiaXRzLCBkYXR0cmJpdHM7Ci0JdV9pbnQzMl90ICp0bDIgPSBOVUxMOwotCXNp emVfdCB0cmVzaWQ7CisJc3NpemVfdCB0cmVzaWQ7CiAKIAlLQVNTRVJUKHVpb3AtPnVpb19pb3Zj bnQgPT0gMSAmJgotCSAgICAodWlvX3Vpb19yZXNpZCh1aW9wKSAmIChESVJCTEtTSVogLSAxKSkg PT0gMCwKLQkgICAgKCJuZnMgcmVhZGRpcnJwYyBiYWQgdWlvIikpOworCSAgICAodWlvcC0+dWlv X29mZnNldCAmIChESVJCTEtTSVogLSAxKSkgPT0gMCAmJgorCSAgICAodWlvcC0+dWlvX3Jlc2lk ICYgKERJUkJMS1NJWiAtIDEpKSA9PSAwLAorCSAgICAoIm5mc3JwY19yZWFkZGlyIGJhZCB1aW8i KSk7CiAKIAkvKgogCSAqIFRoZXJlIGlzIG5vIHBvaW50IGluIHJlYWRpbmcgYSBsb3QgbW9yZSB0 aGFuIHVpb19yZXNpZCwgaG93ZXZlcgpAQCAtMjY2MywxMyArMjYzOCwxMyBAQCBuZnNycGNfcmVh ZGRpcih2bm9kZV90IHZwLCBzdHJ1Y3QgdWlvICp1CiAJICogd2lsbCBuZXZlciBtYWtlIHJlYWRz aXplID4gbm1fcmVhZGRpcnNpemUuCiAJICovCiAJcmVhZHNpemUgPSBubXAtPm5tX3JlYWRkaXJz aXplOwotCWlmIChyZWFkc2l6ZSA+IHVpb191aW9fcmVzaWQodWlvcCkpCi0JCXJlYWRzaXplID0g dWlvX3Vpb19yZXNpZCh1aW9wKSArIERJUkJMS1NJWjsKKwlpZiAocmVhZHNpemUgPiB1aW9wLT51 aW9fcmVzaWQpCisJCXJlYWRzaXplID0gdWlvcC0+dWlvX3Jlc2lkICsgRElSQkxLU0laOwogCiAJ KmF0dHJmbGFncCA9IDA7CiAJaWYgKGVvZnApCiAJCSplb2ZwID0gMDsKLQl0cmVzaWQgPSB1aW9f dWlvX3Jlc2lkKHVpb3ApOworCXRyZXNpZCA9IHVpb3AtPnVpb19yZXNpZDsKIAljb29raWUubHZh bFswXSA9IGNvb2tpZXAtPm5mc3VxdWFkWzBdOwogCWNvb2tpZS5sdmFsWzFdID0gY29va2llcC0+ bmZzdXF1YWRbMV07CiAJbmQtPm5kX21yZXAgPSBOVUxMOwpAQCAtMjc2NSw0MyArMjc0MCwzMyBA QCBuZnNycGNfcmVhZGRpcih2bm9kZV90IHZwLCBzdHJ1Y3QgdWlvICp1CiAJCQlpZiAoZXJyb3Ip CiAJCQkgICAgcmV0dXJuIChlcnJvcik7CiAJCQluZC0+bmRfbXJlcCA9IE5VTEw7Ci0JCQlkcCA9 IChzdHJ1Y3QgZGlyZW50ICopIENBU1RfRE9XTihjYWRkcl90LCB1aW9faW92X2Jhc2UodWlvcCkp OwotCQkJZHAtPmRfdHlwZSA9IERUX0RJUjsKKwkJCWRwID0gKHN0cnVjdCBkaXJlbnQgKil1aW9w LT51aW9faW92LT5pb3ZfYmFzZTsKIAkJCWRwLT5kX2ZpbGVubyA9IGRvdGZpbGVpZDsKIAkJCWRw LT5kX25hbWxlbiA9IDE7CiAJCQlkcC0+ZF9uYW1lWzBdID0gJy4nOwogCQkJZHAtPmRfbmFtZVsx XSA9ICdcMCc7Ci0JCQlkcC0+ZF9yZWNsZW4gPSBESVJFTlRfU0laRShkcCkgKyBORlNYX0hZUEVS OwotCQkJLyoKLQkJCSAqIEp1c3QgbWFrZSB0aGVzZSBvZmZzZXQgY29va2llIDAuCi0JCQkgKi8K LQkJCXRsID0gKHVfaW50MzJfdCAqKSZkcC0+ZF9uYW1lWzRdOwotCQkJKnRsKysgPSAwOwotCQkJ KnRsID0gMDsKKwkJCWRwLT5kX3JlY2xlbiA9IDQgKyBESVJIRFNJWjsKKwkJCWRwLT5kX3R5cGUg PSBEVF9ESVI7CiAJCQlibGtzaXogKz0gZHAtPmRfcmVjbGVuOwotCQkJdWlvX3Vpb19yZXNpZF9h ZGQodWlvcCwgLShkcC0+ZF9yZWNsZW4pKTsKIAkJCXVpb3AtPnVpb19vZmZzZXQgKz0gZHAtPmRf cmVjbGVuOwotCQkJdWlvX2lvdl9iYXNlX2FkZCh1aW9wLCBkcC0+ZF9yZWNsZW4pOwotCQkJdWlv X2lvdl9sZW5fYWRkKHVpb3AsIC0oZHAtPmRfcmVjbGVuKSk7Ci0JCQlkcCA9IChzdHJ1Y3QgZGly ZW50ICopIENBU1RfRE9XTihjYWRkcl90LCB1aW9faW92X2Jhc2UodWlvcCkpOwotCQkJZHAtPmRf dHlwZSA9IERUX0RJUjsKKwkJCXVpb3AtPnVpb19yZXNpZCAtPSBkcC0+ZF9yZWNsZW47CisJCQl1 aW9wLT51aW9faW92LT5pb3ZfYmFzZSA9CisJCQkgICAgKGNoYXIgKil1aW9wLT51aW9faW92LT5p b3ZfYmFzZSArIGRwLT5kX3JlY2xlbjsKKwkJCXVpb3AtPnVpb19pb3YtPmlvdl9sZW4gLT0gZHAt PmRfcmVjbGVuOworCQkJZHAgPSAoc3RydWN0IGRpcmVudCAqKXVpb3AtPnVpb19pb3YtPmlvdl9i YXNlOwogCQkJZHAtPmRfZmlsZW5vID0gZG90ZG90ZmlsZWlkOwogCQkJZHAtPmRfbmFtbGVuID0g MjsKIAkJCWRwLT5kX25hbWVbMF0gPSAnLic7CiAJCQlkcC0+ZF9uYW1lWzFdID0gJy4nOwogCQkJ ZHAtPmRfbmFtZVsyXSA9ICdcMCc7Ci0JCQlkcC0+ZF9yZWNsZW4gPSBESVJFTlRfU0laRShkcCkg KyBORlNYX0hZUEVSOwotCQkJLyoKLQkJCSAqIEp1c3QgbWFrZSB0aGVzZSBvZmZzZXQgY29va2ll IDAuCi0JCQkgKi8KLQkJCXRsID0gKHVfaW50MzJfdCAqKSZkcC0+ZF9uYW1lWzRdOwotCQkJKnRs KysgPSAwOwotCQkJKnRsID0gMDsKKwkJCWRwLT5kX3JlY2xlbiA9IDQgKyBESVJIRFNJWjsKKwkJ CWRwLT5kX3R5cGUgPSBEVF9ESVI7CiAJCQlibGtzaXogKz0gZHAtPmRfcmVjbGVuOwotCQkJdWlv X3Vpb19yZXNpZF9hZGQodWlvcCwgLShkcC0+ZF9yZWNsZW4pKTsKIAkJCXVpb3AtPnVpb19vZmZz ZXQgKz0gZHAtPmRfcmVjbGVuOwotCQkJdWlvX2lvdl9iYXNlX2FkZCh1aW9wLCBkcC0+ZF9yZWNs ZW4pOwotCQkJdWlvX2lvdl9sZW5fYWRkKHVpb3AsIC0oZHAtPmRfcmVjbGVuKSk7CisJCQl1aW9w LT51aW9fcmVzaWQgLT0gZHAtPmRfcmVjbGVuOworCQkJdWlvcC0+dWlvX2lvdi0+aW92X2Jhc2Ug PQorCQkJICAgIChjaGFyICopdWlvcC0+dWlvX2lvdi0+aW92X2Jhc2UgKyBkcC0+ZF9yZWNsZW47 CisJCQl1aW9wLT51aW9faW92LT5pb3ZfbGVuIC09IGRwLT5kX3JlY2xlbjsKIAkJfQogCQlORlNT RVRCSVRfQVRUUkJJVCgmYXR0cmJpdHMsIE5GU0FUVFJCSVRfUkRBVFRSRVJST1IpOwogCX0gZWxz ZSB7CkBAIC0yODk1LDQwICsyODYwLDQxIEBAIG5mc3JwY19yZWFkZGlyKHZub2RlX3QgdnAsIHN0 cnVjdCB1aW8gKnUKIAkJCWlmICh0bGVuID09IGxlbikKIAkJCQl0bGVuICs9IDQ7ICAvKiBUbyBl bnN1cmUgbnVsbCB0ZXJtaW5hdGlvbiAqLwogCQkJbGVmdCA9IERJUkJMS1NJWiAtIGJsa3NpejsK LQkJCWlmICgoaW50KSh0bGVuICsgRElSSERTSVogKyBORlNYX0hZUEVSKSA+IGxlZnQpIHsKKwkJ CWlmICgodGxlbiArIERJUkhEU0laKSA+IGxlZnQpIHsKIAkJCQlkcC0+ZF9yZWNsZW4gKz0gbGVm dDsKLQkJCQl1aW9faW92X2Jhc2VfYWRkKHVpb3AsIGxlZnQpOwotCQkJCXVpb19pb3ZfbGVuX2Fk ZCh1aW9wLCAtKGxlZnQpKTsKLQkJCQl1aW9fdWlvX3Jlc2lkX2FkZCh1aW9wLCAtKGxlZnQpKTsK KwkJCQl1aW9wLT51aW9faW92LT5pb3ZfYmFzZSA9CisJCQkJICAgIChjaGFyICopdWlvcC0+dWlv X2lvdi0+aW92X2Jhc2UgKyBsZWZ0OworCQkJCXVpb3AtPnVpb19pb3YtPmlvdl9sZW4gLT0gbGVm dDsKIAkJCQl1aW9wLT51aW9fb2Zmc2V0ICs9IGxlZnQ7CisJCQkJdWlvcC0+dWlvX3Jlc2lkIC09 IGxlZnQ7CiAJCQkJYmxrc2l6ID0gMDsKIAkJCX0KLQkJCWlmICgoaW50KSh0bGVuICsgRElSSERT SVogKyBORlNYX0hZUEVSKSA+IHVpb191aW9fcmVzaWQodWlvcCkpCisJCQlpZiAoKHRsZW4gKyBE SVJIRFNJWikgPiB1aW9wLT51aW9fcmVzaWQpCiAJCQkJYmlnZW5vdWdoID0gMDsKIAkJCWlmIChi aWdlbm91Z2gpIHsKLQkJCQlkcCA9IChzdHJ1Y3QgZGlyZW50ICopIENBU1RfRE9XTihjYWRkcl90 LCB1aW9faW92X2Jhc2UodWlvcCkpOworCQkJCWRwID0gKHN0cnVjdCBkaXJlbnQgKil1aW9wLT51 aW9faW92LT5pb3ZfYmFzZTsKIAkJCQlkcC0+ZF9uYW1sZW4gPSBsZW47Ci0JCQkJZHAtPmRfcmVj bGVuID0gdGxlbiArIERJUkhEU0laICsgTkZTWF9IWVBFUjsKKwkJCQlkcC0+ZF9yZWNsZW4gPSB0 bGVuICsgRElSSERTSVo7CiAJCQkJZHAtPmRfdHlwZSA9IERUX1VOS05PV047CiAJCQkJYmxrc2l6 ICs9IGRwLT5kX3JlY2xlbjsKIAkJCQlpZiAoYmxrc2l6ID09IERJUkJMS1NJWikKIAkJCQkJYmxr c2l6ID0gMDsKLQkJCQl1aW9fdWlvX3Jlc2lkX2FkZCh1aW9wLCAtKERJUkhEU0laKSk7CiAJCQkJ dWlvcC0+dWlvX29mZnNldCArPSBESVJIRFNJWjsKLQkJCQl1aW9faW92X2Jhc2VfYWRkKHVpb3As IERJUkhEU0laKTsKLQkJCQl1aW9faW92X2xlbl9hZGQodWlvcCwgLShESVJIRFNJWikpOworCQkJ CXVpb3AtPnVpb19yZXNpZCAtPSBESVJIRFNJWjsKKwkJCQl1aW9wLT51aW9faW92LT5pb3ZfYmFz ZSA9CisJCQkJICAgIChjaGFyICopdWlvcC0+dWlvX2lvdi0+aW92X2Jhc2UgKyBESVJIRFNJWjsK KwkJCQl1aW9wLT51aW9faW92LT5pb3ZfbGVuIC09IERJUkhEU0laOwogCQkJCWVycm9yID0gbmZz bV9tYnVmdWlvKG5kLCB1aW9wLCBsZW4pOwogCQkJCWlmIChlcnJvcikKIAkJCQkJZ290byBuZnNt b3V0OwotCQkJCWNwID0gQ0FTVF9ET1dOKGNhZGRyX3QsIHVpb19pb3ZfYmFzZSh1aW9wKSk7CisJ CQkJY3AgPSB1aW9wLT51aW9faW92LT5pb3ZfYmFzZTsKIAkJCQl0bGVuIC09IGxlbjsKIAkJCQkq Y3AgPSAnXDAnOwkvKiBudWxsIHRlcm1pbmF0ZSAqLwotCQkJCWNwICs9IHRsZW47CS8qIHBvaW50 cyB0byBjb29raWUgc3RvcmFnZSAqLwotCQkJCXRsMiA9ICh1X2ludDMyX3QgKiljcDsKLQkJCQl1 aW9faW92X2Jhc2VfYWRkKHVpb3AsICh0bGVuICsgTkZTWF9IWVBFUikpOwotCQkJCXVpb19pb3Zf bGVuX2FkZCh1aW9wLCAtKHRsZW4gKyBORlNYX0hZUEVSKSk7Ci0JCQkJdWlvX3Vpb19yZXNpZF9h ZGQodWlvcCwgLSh0bGVuICsgTkZTWF9IWVBFUikpOwotCQkJCXVpb3AtPnVpb19vZmZzZXQgKz0g KHRsZW4gKyBORlNYX0hZUEVSKTsKKwkJCQl1aW9wLT51aW9faW92LT5pb3ZfYmFzZSA9CisJCQkJ ICAgIChjaGFyICopdWlvcC0+dWlvX2lvdi0+aW92X2Jhc2UgKyB0bGVuOworCQkJCXVpb3AtPnVp b19pb3YtPmlvdl9sZW4gLT0gdGxlbjsKKwkJCQl1aW9wLT51aW9fb2Zmc2V0ICs9IHRsZW47CisJ CQkJdWlvcC0+dWlvX3Jlc2lkIC09IHRsZW47CiAJCQl9IGVsc2UgewogCQkJCWVycm9yID0gbmZz bV9hZHZhbmNlKG5kLCBORlNNX1JORFVQKGxlbiksIC0xKTsKIAkJCQlpZiAoZXJyb3IpCkBAIC0y OTc5LDkgKzI5NDUsOSBAQCBuZnNycGNfcmVhZGRpcih2bm9kZV90IHZwLCBzdHJ1Y3QgdWlvICp1 CiAJCQkgICAgfSBlbHNlIHsKIAkJCQlkcC0+ZF9maWxlbm8gPSBuZnN2YS5uYV9maWxlaWQ7CiAJ CQkgICAgfQotCQkJICAgICp0bDIrKyA9IGNvb2tpZXAtPm5mc3VxdWFkWzBdID0gY29va2llLmx2 YWxbMF0gPQorCQkJICAgIGNvb2tpZXAtPm5mc3VxdWFkWzBdID0gY29va2llLmx2YWxbMF0gPQog CQkJCW5jb29raWUubHZhbFswXTsKLQkJCSAgICAqdGwyID0gY29va2llcC0+bmZzdXF1YWRbMV0g PSBjb29raWUubHZhbFsxXSA9CisJCQkgICAgY29va2llcC0+bmZzdXF1YWRbMV0gPSBjb29raWUu bHZhbFsxXSA9CiAJCQkJbmNvb2tpZS5sdmFsWzFdOwogCQkJfQogCQkJbW9yZV9kaXJzID0gZnhk cl91bnNpZ25lZChpbnQsICp0bCk7CkBAIC0zMDExLDEwICsyOTc3LDExIEBAIG5mc3JwY19yZWFk ZGlyKHZub2RlX3QgdnAsIHN0cnVjdCB1aW8gKnUKIAlpZiAoYmxrc2l6ID4gMCkgewogCQlsZWZ0 ID0gRElSQkxLU0laIC0gYmxrc2l6OwogCQlkcC0+ZF9yZWNsZW4gKz0gbGVmdDsKLQkJdWlvX2lv dl9iYXNlX2FkZCh1aW9wLCBsZWZ0KTsKLQkJdWlvX2lvdl9sZW5fYWRkKHVpb3AsIC0obGVmdCkp OwotCQl1aW9fdWlvX3Jlc2lkX2FkZCh1aW9wLCAtKGxlZnQpKTsKKwkJdWlvcC0+dWlvX2lvdi0+ aW92X2Jhc2UgPQorCQkgICAgKGNoYXIgKil1aW9wLT51aW9faW92LT5pb3ZfYmFzZSArIGxlZnQ7 CisJCXVpb3AtPnVpb19pb3YtPmlvdl9sZW4gLT0gbGVmdDsKIAkJdWlvcC0+dWlvX29mZnNldCAr PSBsZWZ0OworCQl1aW9wLT51aW9fcmVzaWQgLT0gbGVmdDsKIAl9CiAKIAkvKgpAQCAtMzAyNCw3 ICsyOTkxLDcgQEAgbmZzcnBjX3JlYWRkaXIodm5vZGVfdCB2cCwgc3RydWN0IHVpbyAqdQogCSAq IE90aGVyd2lzZSwgcmV0dXJuIHRoZSBlb2YgZmxhZyBmcm9tIHRoZSBzZXJ2ZXIuCiAJICovCiAJ aWYgKGVvZnApIHsKLQkJaWYgKHRyZXNpZCA9PSAoKHNpemVfdCkodWlvX3Vpb19yZXNpZCh1aW9w KSkpKQorCQlpZiAodHJlc2lkID09IHVpb3AtPnVpb19yZXNpZCkKIAkJCSplb2ZwID0gMTsKIAkJ ZWxzZSBpZiAoIWJpZ2Vub3VnaCkKIAkJCSplb2ZwID0gMDsKQEAgLTMwMzIsMjUgKzI5OTksNiBA QCBuZnNycGNfcmVhZGRpcih2bm9kZV90IHZwLCBzdHJ1Y3QgdWlvICp1CiAJCQkqZW9mcCA9IGVv ZjsKIAl9CiAKLQkvKgotCSAqIEFkZCBleHRyYSBlbXB0eSByZWNvcmRzIHRvIGFueSByZW1haW5p bmcgRElSQkxLU0laIGNodW5rcy4KLQkgKi8KLQl3aGlsZSAodWlvX3Vpb19yZXNpZCh1aW9wKSA+ IDAgJiYgKChzaXplX3QpKHVpb191aW9fcmVzaWQodWlvcCkpKSAhPSB0cmVzaWQpIHsKLQkJZHAg PSAoc3RydWN0IGRpcmVudCAqKSBDQVNUX0RPV04oY2FkZHJfdCwgdWlvX2lvdl9iYXNlKHVpb3Ap KTsKLQkJZHAtPmRfdHlwZSA9IERUX1VOS05PV047Ci0JCWRwLT5kX2ZpbGVubyA9IDA7Ci0JCWRw LT5kX25hbWxlbiA9IDA7Ci0JCWRwLT5kX25hbWVbMF0gPSAnXDAnOwotCQl0bCA9ICh1X2ludDMy X3QgKikmZHAtPmRfbmFtZVs0XTsKLQkJKnRsKysgPSBjb29raWUubHZhbFswXTsKLQkJKnRsID0g Y29va2llLmx2YWxbMV07Ci0JCWRwLT5kX3JlY2xlbiA9IERJUkJMS1NJWjsKLQkJdWlvX2lvdl9i YXNlX2FkZCh1aW9wLCBESVJCTEtTSVopOwotCQl1aW9faW92X2xlbl9hZGQodWlvcCwgLShESVJC TEtTSVopKTsKLQkJdWlvX3Vpb19yZXNpZF9hZGQodWlvcCwgLShESVJCTEtTSVopKTsKLQkJdWlv cC0+dWlvX29mZnNldCArPSBESVJCTEtTSVo7Ci0JfQotCiBuZnNtb3V0OgogCWlmIChuZC0+bmRf bXJlcCAhPSBOVUxMKQogCQltYnVmX2ZyZWVtKG5kLT5uZF9tcmVwKTsK ------=_Part_290120_1668671246.1368323463785--
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?1012361480.290121.1368323463788.JavaMail.root>