Date: Sun, 25 Jun 2017 22:44:04 +0000 From: Rick Macklem <rmacklem@uoguelph.ca> To: Fabian Freyer <fabian.freyer@physik.tu-berlin.de>, "freebsd-hackers@freebsd.org" <freebsd-hackers@freebsd.org> Subject: Re: Kernel panic in nfsv4_loadattr Message-ID: <YTXPR01MB0189AEFF9AE549885A1F1373DDDE0@YTXPR01MB0189.CANPRD01.PROD.OUTLOOK.COM> In-Reply-To: <118188c1-6507-fd83-9d6e-94e304521011@physik.tu-berlin.de> References: <118188c1-6507-fd83-9d6e-94e304521011@physik.tu-berlin.de>
next in thread | previous in thread | raw e-mail | index | archive | help
--_003_YTXPR01MB0189AEFF9AE549885A1F1373DDDE0YTXPR01MB0189CANP_ Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable Fabian Freyer wrote: > I've had a panic on a host mounting NFSv4 shares. There are also jails > running on this host acessing these shares (I assume this might be a > problem, as I'm also seeing the nfsuserd messages mentioned in [1]). > Here's the last relevant lines of the kernel message buffer. > Jun 25 05:47:39 emmi nfsuserd:[916]: req from ip=3D0x[REDACTED] port=3D94= 9 > kernel trap 12 with interrupts disabled The nfsuserd daemon doesn't work when jails are enabled. (I'm not a jails person, but I understand jails blocks/disables 127.0.0.1 and that will defi= nitely break nfsuserd.) I have a patch that switches nfsuserd to use a local socket to avoid this, = but another tester experienced hangs when using it. I believe the hangs were caused by races in the local socket code tickled by having multiple nfsuser= d daemons running, but since I could not reproduce the hang, I never committe= d the patch to head, etc. (There is PR#205193 for this.) Without the patch, you have three choices: 1 - Set vfs.nfsd.enable_stringtouid=3D1 and don't run the nfsuserd. (This s= hould allow NFSv4 to work, assuming you are not doing Kerberos mounts and your ui= d space is consistent between clients and server.) 2 - Get rid of the jails. 3 - Change all your mounts to NFSv3 and don't try to run the nfsuserd daemo= n. In case you can test the patch, I have attached it. (It is actually 2 patch= es, one for nfsuserd.c and one for the kernel. I don't remember what version of sources= it is done for, but since you didn't mention what version of FreeBSD you are r= unning...) If you test it, make sure to include "1" as the last argument to nfsuserd, = so that it only runs one daemon. - Until someone successfully tests this patch, this problem will probably r= emain, rick [stuff snipped] ps: If you can test it, but have trouble applying the patch, email and I'll= try to update the patch to current sources.= --_003_YTXPR01MB0189AEFF9AE549885A1F1373DDDE0YTXPR01MB0189CANP_ Content-Type: application/octet-stream; name="nfsuserd-aflocal.patch" Content-Description: nfsuserd-aflocal.patch Content-Disposition: attachment; filename="nfsuserd-aflocal.patch"; size=4683; creation-date="Sun, 25 Jun 2017 22:43:23 GMT"; modification-date="Sun, 25 Jun 2017 22:43:23 GMT" Content-Transfer-Encoding: base64 LS0tIHVzci5zYmluL25mc3VzZXJkL25mc3VzZXJkLmMuc2F2CTIwMTUtMTItMDkgMTg6NDY6Mjku Mjg0OTcyMDAwIC0wNTAwCisrKyB1c3Iuc2Jpbi9uZnN1c2VyZC9uZnN1c2VyZC5jCTIwMTUtMTIt MTAgMjE6MzU6MTcuNTA1MzQzMDAwIC0wNTAwCkBAIC0zNSw2ICszNSw3IEBAIF9fRkJTRElEKCIk RnJlZUJTRDogaGVhZC91c3Iuc2Jpbi9uZnN1c2UKICNpbmNsdWRlIDxzeXMvbW91bnQuaD4KICNp bmNsdWRlIDxzeXMvc29ja2V0Lmg+CiAjaW5jbHVkZSA8c3lzL3NvY2tldHZhci5oPgorI2luY2x1 ZGUgPHN5cy9zdGF0Lmg+CiAjaW5jbHVkZSA8c3lzL3RpbWUuaD4KICNpbmNsdWRlIDxzeXMvdWNy ZWQuaD4KICNpbmNsdWRlIDxzeXMvdm5vZGUuaD4KQEAgLTQzLDYgKzQ0LDcgQEAgX19GQlNESUQo IiRGcmVlQlNEOiBoZWFkL3Vzci5zYmluL25mc3VzZQogI2luY2x1ZGUgPG5mcy9uZnNzdmMuaD4K IAogI2luY2x1ZGUgPHJwYy9ycGMuaD4KKyNpbmNsdWRlIDxycGMvcnBjX2NvbS5oPgogCiAjaW5j bHVkZSA8ZnMvbmZzL3JwY3YyLmg+CiAjaW5jbHVkZSA8ZnMvbmZzL25mc3Byb3RvLmg+CkBAIC03 Myw2ICs3NSw5IEBAIHN0YXRpYyBib29sX3QJeGRyX2dldGlkKFhEUiAqLCBjYWRkcl90KTsKIHN0 YXRpYyBib29sX3QJeGRyX2dldG5hbWUoWERSICosIGNhZGRyX3QpOwogc3RhdGljIGJvb2xfdAl4 ZHJfcmV0dmFsKFhEUiAqLCBjYWRkcl90KTsKIAorI2lmbmRlZiBfUEFUSF9ORlNVU0VSRFNPQ0sK KyNkZWZpbmUgX1BBVEhfTkZTVVNFUkRTT0NLCSIvdmFyL3J1bi9uZnN1c2VyZC5zb2NrIgorI2Vu ZGlmCiAjZGVmaW5lCU1BWE5BTUUJCTEwMjQKICNkZWZpbmUJTUFYTkZTVVNFUkQJMjAKICNkZWZp bmUJREVGTkZTVVNFUkQJNApAQCAtMTAzLDE1ICsxMDgsMTUgQEAgbWFpbihpbnQgYXJnYywgY2hh ciAqYXJndltdKQogCXN0cnVjdCBuZnNkX2lkYXJncyBuaWQ7CiAJc3RydWN0IHBhc3N3ZCAqcHdk OwogCXN0cnVjdCBncm91cCAqZ3JwOwotCWludCBzb2NrLCBvbmUgPSAxOwotCVNWQ1hQUlQgKnVk cHRyYW5zcDsKLQl1X3Nob3J0IHBvcnRudW07CisJaW50IG9sZG1hc2ssIHNvY2s7CisJU1ZDWFBS VCAqeHBydDsKIAlzaWdzZXRfdCBzaWduZXc7CiAJY2hhciBob3N0bmFtZVtNQVhIT1NUTkFNRUxF TiArIDFdLCAqY3A7CiAJc3RydWN0IGFkZHJpbmZvICphaXAsIGhpbnRzOwogCXN0YXRpYyB1aWRf dCBjaGVja19kdXBzW01BWFVTRVJNQVhdOwogCWdpZF90IGdycHNbTkdST1VQU107CiAJaW50IG5n cm91cDsKKwlzdHJ1Y3Qgc29ja2FkZHJfdW4gc3VuOwogCiAJaWYgKG1vZGZpbmQoIm5mc2NvbW1v biIpIDwgMCkgewogCQkvKiBOb3QgcHJlc2VudCBpbiBrZXJuZWwsIHRyeSBsb2FkaW5nIGl0ICov CkBAIC0yNDUsNDYgKzI1MCw0MiBAQCBtYWluKGludCBhcmdjLCBjaGFyICphcmd2W10pCiAJZm9y IChpID0gMDsgaSA8IG5mc3VzZXJkY250OyBpKyspCiAJCXNsYXZlc1tpXSA9IChwaWRfdCktMTsK IAotCS8qCi0JICogU2V0IHVwIHRoZSBzZXJ2aWNlIHBvcnQgdG8gYWNjZXB0IHJlcXVlc3RzIHZp YSBVRFAgZnJvbQotCSAqIGxvY2FsaG9zdCAoMTI3LjAuMC4xKS4KLQkgKi8KLQlpZiAoKHNvY2sg PSBzb2NrZXQoQUZfSU5FVCwgU09DS19ER1JBTSwgSVBQUk9UT19VRFApKSA8IDApCi0JCWVycigx LCAiY2Fubm90IGNyZWF0ZSB1ZHAgc29ja2V0Iik7Ci0KLQkvKgotCSAqIE5vdCBzdXJlIHdoYXQg dGhpcyBkb2VzLCBzbyBJJ2xsIGxlYXZlIGl0IGhlcmUgZm9yIG5vdy4KLQkgKi8KLQlzZXRzb2Nr b3B0KHNvY2ssIFNPTF9TT0NLRVQsIFNPX1JFVVNFQUREUiwgJm9uZSwgc2l6ZW9mKG9uZSkpOwot CQotCWlmICgodWRwdHJhbnNwID0gc3ZjdWRwX2NyZWF0ZShzb2NrKSkgPT0gTlVMTCkKLQkJZXJy KDEsICJDYW4ndCBzZXQgdXAgc29ja2V0Iik7Ci0KLQkvKgotCSAqIEJ5IG5vdCBzcGVjaWZ5aW5n IGEgcHJvdG9jb2wsIGl0IGlzIGxpbmtlZCBpbnRvIHRoZQotCSAqIGRpc3BhdGNoIHF1ZXVlLCBi dXQgbm90IHJlZ2lzdGVyZWQgd2l0aCBwb3J0bWFwcGVyLAotCSAqIHdoaWNoIGlzIGp1c3Qgd2hh dCBJIHdhbnQuCi0JICovCi0JaWYgKCFzdmNfcmVnaXN0ZXIodWRwdHJhbnNwLCBSUENQUk9HX05G U1VTRVJELCBSUENORlNVU0VSRF9WRVJTLAotCSAgICBuZnN1c2VyZHNydiwgMCkpCi0JCWVycigx LCAiQ2FuJ3QgcmVnaXN0ZXIgbmZzdXNlcmQiKTsKKwltZW1zZXQoJnN1biwgMCwgc2l6ZW9mIHN1 bik7CisJc3VuLnN1bl9mYW1pbHkgPSBBRl9MT0NBTDsKKwl1bmxpbmsoX1BBVEhfTkZTVVNFUkRT T0NLKTsKKwlzdHJjcHkoc3VuLnN1bl9wYXRoLCBfUEFUSF9ORlNVU0VSRFNPQ0spOworCXN1bi5z dW5fbGVuID0gU1VOX0xFTigmc3VuKTsKKwlzb2NrID0gc29ja2V0KEFGX0xPQ0FMLCBTT0NLX1NU UkVBTSwgMCk7CisJaWYgKHNvY2sgPCAwKQorCQllcnIoMSwgIkNhbid0IGNyZWF0ZSBsb2NhbCBu ZnN1c2VyZCBzb2NrZXQiKTsKKwlvbGRtYXNrID0gdW1hc2soU19JWFVTUiB8IFNfSVJXWEcgfCBT X0lSV1hPKTsKKwlpZiAoYmluZChzb2NrLCAoc3RydWN0IHNvY2thZGRyICopJnN1biwgc3VuLnN1 bl9sZW4pIDwgMCkKKwkJZXJyKDEsICJDYW4ndCBiaW5kIGxvY2FsIG5mc3VzZXJkIHNvY2tldCIp OworCXVtYXNrKG9sZG1hc2spOworCWlmIChsaXN0ZW4oc29jaywgU09NQVhDT05OKSA8IDApCisJ CWVycigxLCAiQ2FuJ3QgbGlzdGVuIG9uIGxvY2FsIG5mc3VzZXJkIHNvY2tldCIpOworCXhwcnQg PSBzdmNfdmNfY3JlYXRlKHNvY2ssIFJQQ19NQVhEQVRBU0laRSwgUlBDX01BWERBVEFTSVpFKTsK KwlpZiAoeHBydCA9PSBOVUxMKQorCQllcnIoMSwgIkNhbid0IGNyZWF0ZSB0cmFuc3BvcnQgZm9y IGxvY2FsIG5mc3VzZXJkIHNvY2tldCIpOworCWlmICghc3ZjX3JlZyh4cHJ0LCBSUENQUk9HX05G U1VTRVJELCBSUENORlNVU0VSRF9WRVJTLCBuZnN1c2VyZHNydiwKKwkgICAgTlVMTCkpCisJCWVy cigxLCAiQ2FuJ3QgcmVnaXN0ZXIgc2VydmljZSBmb3IgbG9jYWwgbmZzdXNlcmQgc29ja2V0Iik7 CiAKIAkvKgotCSAqIFRlbGwgdGhlIGtlcm5lbCB3aGF0IG15IHBvcnQjIGlzLgorCSAqIFRlbGwg dGhlIGtlcm5lbCB3aGF0IHRoZSBzb2NrZXQncyBwYXRoIGlzLgogCSAqLwotCXBvcnRudW0gPSBo dG9ucyh1ZHB0cmFuc3AtPnhwX3BvcnQpOwogI2lmZGVmIERFQlVHCi0JcHJpbnRmKCJwb3J0bnVt PTB4JXhcbiIsIHBvcnRudW0pOworCXByaW50Zigic29ja3BhdGg9JXNcbiIsIF9QQVRIX05GU1VT RVJEU09DSyk7CiAjZWxzZQotCWlmIChuZnNzdmMoTkZTU1ZDX05GU1VTRVJEUE9SVCwgKGNhZGRy X3QpJnBvcnRudW0pIDwgMCkgeworCWlmIChuZnNzdmMoTkZTU1ZDX05GU1VTRVJEUE9SVCB8IE5G U1NWQ19ORVdTVFJVQ1QsIF9QQVRIX05GU1VTRVJEU09DSykKKwkgICAgPCAwKSB7CiAJCWlmIChl cnJubyA9PSBFUEVSTSkgewogCQkJZnByaW50ZihzdGRlcnIsCiAJCQkgICAgIkNhbid0IHN0YXJ0 IG5mc3VzZXJkIHdoZW4gYWxyZWFkeSBydW5uaW5nIik7CiAJCQlmcHJpbnRmKHN0ZGVyciwKIAkJ CSAgICAiIElmIG5vdCBydW5uaW5nLCB1c2UgdGhlIC1mb3JjZSBvcHRpb24uXG4iKTsKLQkJfSBl bHNlIHsKLQkJCWZwcmludGYoc3RkZXJyLCAiQ2FuJ3QgZG8gbmZzc3ZjKCkgdG8gYWRkIHBvcnRc biIpOwotCQl9CisJCX0gZWxzZQorCQkJZnByaW50ZihzdGRlcnIsICJDYW4ndCBkbyBuZnNzdmMo KSB0byBhZGQgc29ja2V0XG4iKTsKIAkJZXhpdCgxKTsKIAl9CiAjZW5kaWYKQEAgLTQ1NSwyOCAr NDU2LDExIEBAIG5mc3VzZXJkc3J2KHN0cnVjdCBzdmNfcmVxICpycXN0cCwgU1ZDWFAKIAlzdHJ1 Y3QgcGFzc3dkICpwd2Q7CiAJc3RydWN0IGdyb3VwICpncnA7CiAJaW50IGVycm9yOwotCXVfc2hv cnQgc3BvcnQ7CiAJc3RydWN0IGluZm8gaW5mbzsKIAlzdHJ1Y3QgbmZzZF9pZGFyZ3MgbmlkOwot CXVfaW50MzJfdCBzYWRkcjsKIAlnaWRfdCBncnBzW05HUk9VUFNdOwogCWludCBuZ3JvdXA7CiAK LQkvKgotCSAqIE9ubHkgaGFuZGxlIHJlcXVlc3RzIGZyb20gMTI3LjAuMC4xIG9uIGEgcmVzZXJ2 ZWQgcG9ydCBudW1iZXIuCi0JICogKFNpbmNlIGEgcmVzZXJ2ZWQgcG9ydCAjIGF0IGxvY2FsaG9z dCBpbXBsaWVzIGEgY2xpZW50IHdpdGgKLQkgKiAgbG9jYWwgcm9vdCwgdGhlcmUgd29uJ3QgYmUg YSBzZWN1cml0eSBicmVhY2guIFRoaXMgaXMgYWJvdXQKLQkgKiAgdGhlIG9ubHkgY2FzZSBJIGNh biB0aGluayBvZiB3aGVyZSBhIHJlc2VydmVkIHBvcnQgIyBtZWFucwotCSAqICBzb21ldGhpbmcu KQotCSAqLwotCXNwb3J0ID0gbnRvaHModHJhbnNwLT54cF9yYWRkci5zaW5fcG9ydCk7Ci0Jc2Fk ZHIgPSBudG9obCh0cmFuc3AtPnhwX3JhZGRyLnNpbl9hZGRyLnNfYWRkcik7Ci0JaWYgKChycXN0 cC0+cnFfcHJvYyAhPSBOVUxMUFJPQyAmJiBzcG9ydCA+PSBJUFBPUlRfUkVTRVJWRUQpIHx8Ci0J ICAgIHNhZGRyICE9IDB4N2YwMDAwMDEpIHsKLQkJc3lzbG9nKExPR19FUlIsICJyZXEgZnJvbSBp cD0weCV4IHBvcnQ9JWRcbiIsIHNhZGRyLCBzcG9ydCk7Ci0JCXN2Y2Vycl93ZWFrYXV0aCh0cmFu c3ApOwotCQlyZXR1cm47Ci0JfQogCXN3aXRjaCAocnFzdHAtPnJxX3Byb2MpIHsKIAljYXNlIE5V TExQUk9DOgogCQlpZiAoIXN2Y19zZW5kcmVwbHkodHJhbnNwLCAoeGRycHJvY190KXhkcl92b2lk LCBOVUxMKSkK --_003_YTXPR01MB0189AEFF9AE549885A1F1373DDDE0YTXPR01MB0189CANP_ Content-Type: application/octet-stream; name="nfsuserd-aflocal-kern.patch" Content-Description: nfsuserd-aflocal-kern.patch Content-Disposition: attachment; filename="nfsuserd-aflocal-kern.patch"; size=4120; creation-date="Sun, 25 Jun 2017 22:43:51 GMT"; modification-date="Sun, 25 Jun 2017 22:43:51 GMT" Content-Transfer-Encoding: base64 LS0tIGZzL25mcy9uZnNfY29tbW9ua3JwYy5jLnNhdgkyMDE1LTEyLTEwIDIwOjAxOjM1LjQ4ODMx NzAwMCAtMDUwMAorKysgZnMvbmZzL25mc19jb21tb25rcnBjLmMJMjAxNS0xMi0xMCAyMDowNDo0 MC45MDM4NTQwMDAgLTA1MDAKQEAgLTE5OCw2ICsxOTgsOCBAQCBuZXduZnNfY29ubmVjdChzdHJ1 Y3QgbmZzbW91bnQgKm5tcCwgc3RyCiAJCQluY29uZiA9IGdldG5ldGNvbmZpZ2VudCgidWRwIik7 CiAJCWVsc2UKIAkJCW5jb25mID0gZ2V0bmV0Y29uZmlnZW50KCJ0Y3AiKTsKKwllbHNlIGlmIChz YWRkci0+c2FfZmFtaWx5ID09IEFGX0xPQ0FMKQorCQluY29uZiA9IGdldG5ldGNvbmZpZ2VudCgi bG9jYWwiKTsKIAllbHNlCiAJCWlmIChucnAtPm5yX3NvdHlwZSA9PSBTT0NLX0RHUkFNKQogCQkJ bmNvbmYgPSBnZXRuZXRjb25maWdlbnQoInVkcDYiKTsKLS0tIGZzL25mcy9uZnNfY29tbW9uc3Vi cy5jLnNhdgkyMDE1LTEyLTEwIDIwOjA5OjI1LjIxODI4MjAwMCAtMDUwMAorKysgZnMvbmZzL25m c19jb21tb25zdWJzLmMJMjAxNS0xMi0xMSAxNzoxNjoxMC45MTI3MTcwMDAgLTA1MDAKQEAgLTMw NDgsNyArMzA0OCw3IEBAIG5mc3J2X2NtcG1peGVkY2FzZSh1X2NoYXIgKmNwLCB1X2NoYXIgKmMK ICAqIFNldCB0aGUgcG9ydCBmb3IgdGhlIG5mc3VzZXJkLgogICovCiBBUFBMRVNUQVRJQyBpbnQK LW5mc3J2X25mc3VzZXJkcG9ydCh1X3Nob3J0IHBvcnQsIE5GU1BST0NfVCAqcCkKK25mc3J2X25m c3VzZXJkcG9ydChzdHJ1Y3Qgc29ja2FkZHIgKnNhZCwgdV9zaG9ydCBwb3J0LCBORlNQUk9DX1Qg KnApCiB7CiAJc3RydWN0IG5mc3NvY2tyZXEgKnJwOwogCXN0cnVjdCBzb2NrYWRkcl9pbiAqYWQ7 CkBAIC0zMDY3LDE2ICszMDY3LDI0IEBAIG5mc3J2X25mc3VzZXJkcG9ydCh1X3Nob3J0IHBvcnQs IE5GU1BST0MKIAkgKi8KIAlycCA9ICZuZnNydl9uZnN1c2VyZHNvY2s7CiAJcnAtPm5yX2NsaWVu dCA9IE5VTEw7Ci0JcnAtPm5yX3NvdHlwZSA9IFNPQ0tfREdSQU07Ci0JcnAtPm5yX3NvcHJvdG8g PSBJUFBST1RPX1VEUDsKLQlycC0+bnJfbG9jayA9IChORlNSX1JFU0VSVkVEUE9SVCB8IE5GU1Jf TE9DQUxIT1NUKTsKIAlycC0+bnJfY3JlZCA9IE5VTEw7Ci0JTkZTU09DS0FERFJBTExPQyhycC0+ bnJfbmFtKTsKLQlORlNTT0NLQUREUlNJWkUocnAtPm5yX25hbSwgc2l6ZW9mIChzdHJ1Y3Qgc29j a2FkZHJfaW4pKTsKLQlhZCA9IE5GU1NPQ0tBRERSKHJwLT5ucl9uYW0sIHN0cnVjdCBzb2NrYWRk cl9pbiAqKTsKLQlhZC0+c2luX2ZhbWlseSA9IEFGX0lORVQ7Ci0JYWQtPnNpbl9hZGRyLnNfYWRk ciA9IGh0b25sKCh1X2ludDMyX3QpMHg3ZjAwMDAwMSk7CS8qIDEyNy4wLjAuMSAqLwotCWFkLT5z aW5fcG9ydCA9IHBvcnQ7CisJcnAtPm5yX2xvY2sgPSAoTkZTUl9SRVNFUlZFRFBPUlQgfCBORlNS X0xPQ0FMSE9TVCk7CisJaWYgKHNhZCAhPSBOVUxMKSB7CisJCS8qIFVzZSB0aGUgQUZfTE9DQUwg c29ja2V0IGFkZHJlc3MgcGFzc2VkIGluLiAqLworCQlycC0+bnJfc290eXBlID0gU09DS19TVFJF QU07CisJCXJwLT5ucl9zb3Byb3RvID0gMDsKKwkJcnAtPm5yX25hbSA9IHNhZDsKKwl9IGVsc2Ug eworCQkvKiBVc2UgdGhlIHBvcnQjIGZvciBhIFVEUCBzb2NrZXQgKG9sZCBuZnN1c2VyZCkuICov CisJCXJwLT5ucl9zb3R5cGUgPSBTT0NLX0RHUkFNOworCQlycC0+bnJfc29wcm90byA9IElQUFJP VE9fVURQOworCQlORlNTT0NLQUREUkFMTE9DKHJwLT5ucl9uYW0pOworCQlORlNTT0NLQUREUlNJ WkUocnAtPm5yX25hbSwgc2l6ZW9mIChzdHJ1Y3Qgc29ja2FkZHJfaW4pKTsKKwkJYWQgPSBORlNT T0NLQUREUihycC0+bnJfbmFtLCBzdHJ1Y3Qgc29ja2FkZHJfaW4gKik7CisJCWFkLT5zaW5fZmFt aWx5ID0gQUZfSU5FVDsKKwkJYWQtPnNpbl9hZGRyLnNfYWRkciA9IGh0b25sKCh1X2ludDMyX3Qp MHg3ZjAwMDAwMSk7CisJCWFkLT5zaW5fcG9ydCA9IHBvcnQ7CisJfQogCXJwLT5ucl9wcm9nID0g UlBDUFJPR19ORlNVU0VSRDsKIAlycC0+bnJfdmVycyA9IFJQQ05GU1VTRVJEX1ZFUlM7CiAJZXJy b3IgPSBuZXduZnNfY29ubmVjdChOVUxMLCBycCwgTkZTUFJPQ0NSRUQocCksIHAsIDApOwotLS0g ZnMvbmZzL25mc192YXIuaC5zYXYJMjAxNS0xMi0xMCAyMDozNjowMS4zNjk1MzYwMDAgLTA1MDAK KysrIGZzL25mcy9uZnNfdmFyLmgJMjAxNS0xMi0xMCAyMDozNjoyMi40NDYyMzcwMDAgLTA1MDAK QEAgLTEyOCw3ICsxMjgsNyBAQCBpbnQgbmZzcnZfY2hlY2tzZXRhdHRyKHZub2RlX3QsIHN0cnVj dCBuCiAgICAgTkZTUFJPQ19UICopOwogaW50IG5mc3J2X2NoZWNrZ2V0YXR0cihzdHJ1Y3QgbmZz cnZfZGVzY3JpcHQgKiwgdm5vZGVfdCwKICAgICBzdHJ1Y3QgbmZzdmF0dHIgKiwgbmZzYXR0cmJp dF90ICosIHN0cnVjdCB1Y3JlZCAqLCBORlNQUk9DX1QgKik7Ci1pbnQgbmZzcnZfbmZzdXNlcmRw b3J0KHVfc2hvcnQsIE5GU1BST0NfVCAqKTsKK2ludCBuZnNydl9uZnN1c2VyZHBvcnQoc3RydWN0 IHNvY2thZGRyICosIHVfc2hvcnQsIE5GU1BST0NfVCAqKTsKIHZvaWQgbmZzcnZfbmZzdXNlcmRk ZWxwb3J0KHZvaWQpOwogdm9pZCBuZnNydl90aHJvd2F3YXlhbGxzdGF0ZShORlNQUk9DX1QgKik7 CiBpbnQgbmZzcnZfY2hlY2tzZXF1ZW5jZShzdHJ1Y3QgbmZzcnZfZGVzY3JpcHQgKiwgdWludDMy X3QsIHVpbnQzMl90ICosCi0tLSBmcy9uZnMvbmZzX2NvbW1vbnBvcnQuYy5zYXYJMjAxNS0xMi0x MCAyMDozNjo1Ni40NjU2NTYwMDAgLTA1MDAKKysrIGZzL25mcy9uZnNfY29tbW9ucG9ydC5jCTIw MTUtMTItMTEgMTc6MTU6MzAuMDI1MzA3MDAwIC0wNTAwCkBAIC00MSw2ICs0MSw3IEBAIF9fRkJT RElEKCIkRnJlZUJTRDogaGVhZC9zeXMvZnMvbmZzL25mc18KICAqLwogI2luY2x1ZGUgPGZzL25m cy9uZnNwb3J0Lmg+CiAjaW5jbHVkZSA8c3lzL3N5c2N0bC5oPgorI2luY2x1ZGUgPHJwYy9ycGNf Y29tLmg+CiAjaW5jbHVkZSA8dm0vdm0uaD4KICNpbmNsdWRlIDx2bS92bV9vYmplY3QuaD4KICNp bmNsdWRlIDx2bS92bV9wYWdlLmg+CkBAIC01MzQsMTEgKzUzNSwzMCBAQCBuZnNzdmNfY2FsbChz dHJ1Y3QgdGhyZWFkICpwLCBzdHJ1Y3QgbmZzCiAJCWdvdG8gb3V0OwogCX0gZWxzZSBpZiAodWFw LT5mbGFnICYgTkZTU1ZDX05GU1VTRVJEUE9SVCkgewogCQl1X3Nob3J0IHNvY2twb3J0OworCQlz dHJ1Y3Qgc29ja2FkZHIgKnNhZDsKKwkJc3RydWN0IHNvY2thZGRyX3VuICpzdW47CiAKLQkJZXJy b3IgPSBjb3B5aW4odWFwLT5hcmdwLCAoY2FkZHJfdCkmc29ja3BvcnQsCi0JCSAgICBzaXplb2Yg KHVfc2hvcnQpKTsKLQkJaWYgKCFlcnJvcikKLQkJCWVycm9yID0gbmZzcnZfbmZzdXNlcmRwb3J0 KHNvY2twb3J0LCBwKTsKKwkJaWYgKCh1YXAtPmZsYWcgJiBORlNTVkNfTkVXU1RSVUNUKSAhPSAw KSB7CisJCQkvKiBOZXcgbmZzdXNlcmQgdXNpbmcgYW4gQUZfTE9DQUwgc29ja2V0LiAqLworCQkJ c3VuID0gbWFsbG9jKHNpemVvZihzdHJ1Y3Qgc29ja2FkZHJfdW4pLCBNX1NPTkFNRSwKKwkJCSAg ICBNX1dBSVRPSyB8IE1fWkVSTyk7CisJCQllcnJvciA9IGNvcHlpbnN0cih1YXAtPmFyZ3AsIHN1 bi0+c3VuX3BhdGgsCisJCQkgICAgc2l6ZW9mKHN1bi0+c3VuX3BhdGgpLCBOVUxMKTsKKwkJCWlm IChlcnJvciAhPSAwKSB7CisJCQkJZnJlZShzdW4sIE1fU09OQU1FKTsKKwkJCQlyZXR1cm4gKGVy cm9yKTsKKwkJCX0KKwkJICAgICAgICBzdW4tPnN1bl9mYW1pbHkgPSBBRl9MT0NBTDsKKwkJICAg ICAgICBzdW4tPnN1bl9sZW4gPSBTVU5fTEVOKHN1bik7CisJCQlzb2NrcG9ydCA9IDA7CisJCQlz YWQgPSAoc3RydWN0IHNvY2thZGRyICopc3VuOworCQl9IGVsc2UgeworCQkJZXJyb3IgPSBjb3B5 aW4odWFwLT5hcmdwLCAoY2FkZHJfdCkmc29ja3BvcnQsCisJCQkgICAgc2l6ZW9mICh1X3Nob3J0 KSk7CisJCQlzYWQgPSBOVUxMOworCQl9CisJCWlmIChlcnJvciA9PSAwKQorCQkJZXJyb3IgPSBu ZnNydl9uZnN1c2VyZHBvcnQoc2FkLCBzb2NrcG9ydCwgcCk7CiAJfSBlbHNlIGlmICh1YXAtPmZs YWcgJiBORlNTVkNfTkZTVVNFUkRERUxQT1JUKSB7CiAJCW5mc3J2X25mc3VzZXJkZGVscG9ydCgp OwogCQllcnJvciA9IDA7Cg== --_003_YTXPR01MB0189AEFF9AE549885A1F1373DDDE0YTXPR01MB0189CANP_--
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?YTXPR01MB0189AEFF9AE549885A1F1373DDDE0>