Skip site navigation (1)Skip section navigation (2)
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>