Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 9 Jul 2010 18:06:51 +0530
From:      "Jayachandran C." <c.jayachandran@gmail.com>
To:        "M. Warner Losh" <imp@bsdimp.com>, rrs@lakerest.net, jmallett@freebsd.org,  freebsd-mips@freebsd.org
Subject:   Re: Merging 64 bit changes to -HEAD - part 4
Message-ID:  <AANLkTik8fBlxMyZ3AZETF_7DvlSpPsx2hozIWinRy0U0@mail.gmail.com>
In-Reply-To: <AANLkTilFZ4zAKqGcDKie6og5Nhrh9PU_Ta3uDoq7yexA@mail.gmail.com>
References:  <AANLkTikSVi27V2UICgLvKd8Bk7v6tuGty9YX6-C6-21H@mail.gmail.com> <20100708.021250.1099368555950605809.imp@bsdimp.com> <AANLkTilFZ4zAKqGcDKie6og5Nhrh9PU_Ta3uDoq7yexA@mail.gmail.com>

next in thread | previous in thread | raw e-mail | index | archive | help
--e0cb4e887bc147afa7048af3a8ca
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: quoted-printable

On Thu, Jul 8, 2010 at 2:52 PM, Jayachandran C.
<c.jayachandran@gmail.com> wrote:
> On Thu, Jul 8, 2010 at 1:42 PM, M. Warner Losh <imp@bsdimp.com> wrote:
>> In message: <AANLkTikSVi27V2UICgLvKd8Bk7v6tuGty9YX6-C6-21H@mail.gmail.co=
m>
>> =A0 =A0 =A0 =A0 =A0 =A0"Jayachandran C." <c.jayachandran@gmail.com> writ=
es:
[...]
>> : pmap-n64.patch
>> : =A0The main n64 patch (from Juli's branch)
>> : =A0 This still uses the old 2-level page tables. But this adds other
>> : pmap code to support n64. I have re-arranged some of =A0Juli's code to
>> : reduce #ifdefs.
>>
>> I think this could be done in smaller bites. =A0At least the
>> MIPS_{PYHS,KSEGx}_TO_{KSEGx,PHYS} stuff can be done as a separate
>> patch.
[...]
> Thanks for the review, I'll try to get the patches other than pmap-n64
> in first (with mentor approval). I'll post a new split version of
> pmap-n64 after that.

Here are the pmap changes again, along with a ddb patch.

kseg-def-to-cpu.h.patch
Move KSEG address definitions from cpu.h to cpuregs.h with the other
definitions, add some  XKPHYS related definitions.

mips-pmap-intial-n64.patch (from Juli's branch)
Initial changes to pmap.c for n64 support. When compiled for n64, pmap
can use XKPHYS for a lot of its operations. The page tables are still
2-level.

mips-tlb64.patch (from Juli's branch)
64 bit TLB definitions.

mips-ddb-64.patch (from Juli's branch)
Minor fixups for ddb support.

This should get n64 up to mountroot - let me know you comments.

Thanks,
JC.

--e0cb4e887bc147afa7048af3a8ca
Content-Type: text/x-patch; charset=US-ASCII;
	name="kseg-def-to-cpuregs.h.patch"
Content-Disposition: attachment; filename="kseg-def-to-cpuregs.h.patch"
Content-Transfer-Encoding: base64
X-Attachment-Id: f_gbeytzoo0

SW5kZXg6IHN5cy9taXBzL2luY2x1ZGUvY3B1cmVncy5oCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIHN5cy9taXBz
L2luY2x1ZGUvY3B1cmVncy5oCShyZXZpc2lvbiAyMDk3NTYpCisrKyBzeXMvbWlwcy9pbmNsdWRl
L2NwdXJlZ3MuaAkod29ya2luZyBjb3B5KQpAQCAtNzgsNiArNzgsOSBAQAogICogQ2FjaGluZyBv
ZiBtYXBwZWQgYWRkcmVzc2VzIGlzIGNvbnRyb2xsZWQgYnkgYml0cyBpbiB0aGUgVExCIGVudHJ5
LgogICovCiAKKyNkZWZpbmUJTUlQU19LU0VHMF9MQVJHRVNUX1BIWVMgICAgICAgICAoMHgyMDAw
MDAwMCkKKyNkZWZpbmUJTUlQU19QSFlTX01BU0sJCQkoMHgxZmZmZmZmZikKKwogI2lmICFkZWZp
bmVkKF9MT0NPUkUpCiAjZGVmaW5lCU1JUFNfS1VTRUdfU1RBUlQJCTB4MDAwMDAwMDAKICNkZWZp
bmUJTUlQU19LU0VHMF9TVEFSVAkJKChpbnRwdHJfdCkoaW50MzJfdCkweDgwMDAwMDAwKQpAQCAt
OTEsOCArOTQsMTkgQEAKIAogI2RlZmluZSBNSVBTX0tTRUcyX1NUQVJUCQlNSVBTX0tTU0VHX1NU
QVJUCiAjZGVmaW5lIE1JUFNfS1NFRzJfRU5ECQkJTUlQU19LU1NFR19FTkQKLSNlbmRpZgogCisj
ZGVmaW5lCU1JUFNfUEhZU19UT19LU0VHMCh4KQkJKCh1aW50cHRyX3QpKHgpIHwgTUlQU19LU0VH
MF9TVEFSVCkKKyNkZWZpbmUJTUlQU19QSFlTX1RPX0tTRUcxKHgpCQkoKHVpbnRwdHJfdCkoeCkg
fCBNSVBTX0tTRUcxX1NUQVJUKQorI2RlZmluZQlNSVBTX0tTRUcwX1RPX1BIWVMoeCkJCSgodWlu
dHB0cl90KSh4KSAmIE1JUFNfUEhZU19NQVNLKQorI2RlZmluZQlNSVBTX0tTRUcxX1RPX1BIWVMo
eCkJCSgodWludHB0cl90KSh4KSAmIE1JUFNfUEhZU19NQVNLKQorCisjZGVmaW5lCU1JUFNfSVNf
S1NFRzBfQUREUih4KQkJCQkJXAorCSgoKHZtX29mZnNldF90KSh4KSA+PSBNSVBTX0tTRUcwX1NU
QVJUKSAmJgkJXAorCSAgICAoKHZtX29mZnNldF90KSh4KSA8PSBNSVBTX0tTRUcwX0VORCkpCisj
ZGVmaW5lCU1JUFNfSVNfS1NFRzFfQUREUih4KQkJCQkJXAorCSgoKHZtX29mZnNldF90KSh4KSA+
PSBNSVBTX0tTRUcxX1NUQVJUKSAmJgkJXAorCSAgICAoKHZtX29mZnNldF90KSh4KSA8PSBNSVBT
X0tTRUcxX0VORCkpCisKICNkZWZpbmUJTUlQU19YS1BIWVNfU1RBUlQJCTB4ODAwMDAwMDAwMDAw
MDAwMAogI2RlZmluZQlNSVBTX1hLUEhZU19FTkQJCQkweGJmZmZmZmZmZmZmZmZmZmYKIApAQCAt
MTAxLDE0ICsxMTUsMjEgQEAKIAogI2RlZmluZQlNSVBTX1BIWVNfVE9fWEtQSFlTKGNjYSx4KSBc
CiAJKCgweDJVTEwgPDwgNjIpIHwgKCh1bnNpZ25lZCBsb25nIGxvbmcpKGNjYSkgPDwgNTkpIHwg
KHgpKQotI2RlZmluZQlNSVBTX1hLUEhZU19UT19QSFlTKHgpCSgoeCkgJiAweDA3ZmZmZmZmZmZm
ZmZmZmZVTEwpCisjZGVmaW5lCU1JUFNfUEhZU19UT19YS1BIWVNfQ0FDSEVEKHgpIFwKKwkoKDB4
MlVMTCA8PCA2MikgfCAoKHVuc2lnbmVkIGxvbmcgbG9uZykoTUlQU19YS1BIWVNfQ0NBX0NOQykg
PDwgNTkpIHwgKHgpKQorI2RlZmluZQlNSVBTX1BIWVNfVE9fWEtQSFlTX1VOQ0FDSEVEKHgpIFwK
KwkoKDB4MlVMTCA8PCA2MikgfCAoKHVuc2lnbmVkIGxvbmcgbG9uZykoTUlQU19YS1BIWVNfQ0NB
X1VDKSA8PCA1OSkgfCAoeCkpCiAKKyNkZWZpbmUJTUlQU19YS1BIWVNfVE9fUEhZUyh4KQkJKCh4
KSAmIDB4MDdmZmZmZmZmZmZmZmZmZlVMTCkKKwogI2RlZmluZQlNSVBTX1hVU0VHX1NUQVJUCQkw
eDAwMDAwMDAwMDAwMDAwMDAKICNkZWZpbmUJTUlQU19YVVNFR19FTkQJCQkweDAwMDAwMTAwMDAw
MDAwMDAKIAogI2RlZmluZQlNSVBTX1hLU0VHX1NUQVJUCQkweGMwMDAwMDAwMDAwMDAwMDAKICNk
ZWZpbmUJTUlQU19YS1NFR19FTkQJCQkweGMwMDAwMGZmODAwMDAwMDAKIAorI2VuZGlmCisKIC8q
IENQVSBkZXBlbmRlbnQgbXRjMCBoYXphcmQgaG9vayAqLwogI2lmZGVmIFRBUkdFVF9PQ1RFT04K
ICNkZWZpbmUJQ09QMF9TWU5DICBub3A7IG5vcDsgbm9wOyBub3A7IG5vcDsKSW5kZXg6IHN5cy9t
aXBzL2luY2x1ZGUvY3B1LmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gc3lzL21pcHMvaW5jbHVkZS9jcHUuaAko
cmV2aXNpb24gMjA5NzU2KQorKysgc3lzL21pcHMvaW5jbHVkZS9jcHUuaAkod29ya2luZyBjb3B5
KQpAQCAtNDksMjMgKzQ5LDYgQEAKIAogI2luY2x1ZGUgPG1hY2hpbmUvZW5kaWFuLmg+CiAKLSNk
ZWZpbmUJTUlQU19LU0VHMF9MQVJHRVNUX1BIWVMgICAgICAgICAoMHgyMDAwMDAwMCkKLSNkZWZp
bmUJTUlQU19QSFlTX01BU0sJCQkoMHgxZmZmZmZmZikKLQotI2RlZmluZQlNSVBTX1BIWVNfVE9f
S1NFRzAoeCkJCSgodWludHB0cl90KSh4KSB8IE1JUFNfS1NFRzBfU1RBUlQpCi0jZGVmaW5lCU1J
UFNfUEhZU19UT19LU0VHMSh4KQkJKCh1aW50cHRyX3QpKHgpIHwgTUlQU19LU0VHMV9TVEFSVCkK
LSNkZWZpbmUJTUlQU19LU0VHMF9UT19QSFlTKHgpCQkoKHVpbnRwdHJfdCkoeCkgJiBNSVBTX1BI
WVNfTUFTSykKLSNkZWZpbmUJTUlQU19LU0VHMV9UT19QSFlTKHgpCQkoKHVpbnRwdHJfdCkoeCkg
JiBNSVBTX1BIWVNfTUFTSykKLQotI2RlZmluZQlNSVBTX0lTX0tTRUcwX0FERFIoeCkJCQkJCVwK
LQkoKCh2bV9vZmZzZXRfdCkoeCkgPj0gTUlQU19LU0VHMF9TVEFSVCkgJiYJCVwKLQkgICAgKCh2
bV9vZmZzZXRfdCkoeCkgPD0gTUlQU19LU0VHMF9FTkQpKQotI2RlZmluZQlNSVBTX0lTX0tTRUcx
X0FERFIoeCkJCQkJCVwKLQkoKCh2bV9vZmZzZXRfdCkoeCkgPj0gTUlQU19LU0VHMV9TVEFSVCkg
JiYJCVwKLQkgICAgKCh2bV9vZmZzZXRfdCkoeCkgPD0gTUlQU19LU0VHMV9FTkQpKQotI2RlZmlu
ZQlNSVBTX0lTX1ZBTElEX1BUUih4KQkJKE1JUFNfSVNfS1NFRzBfQUREUih4KSB8fCBcCi0JCQkJ
CQlNSVBTX0lTX0tTRUcxX0FERFIoeCkpCi0KIC8qCiAgKiAgU3RhdHVzIHJlZ2lzdGVyLgogICov
Cg==
--e0cb4e887bc147afa7048af3a8ca
Content-Type: text/x-patch; charset=US-ASCII; name="mips-pmap-intial-n64.patch"
Content-Disposition: attachment; filename="mips-pmap-intial-n64.patch"
Content-Transfer-Encoding: base64
X-Attachment-Id: f_gbeyu1kt1

SW5kZXg6IHN5cy9taXBzL21pcHMvcG1hcC5jCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIHN5cy9taXBzL21pcHMv
cG1hcC5jCShyZXZpc2lvbiAyMDk3NTYpCisrKyBzeXMvbWlwcy9taXBzL3BtYXAuYwkod29ya2lu
ZyBjb3B5KQpAQCAtMTI4LDcgKzEyOCwxMSBAQAogI2RlZmluZQlwbWFwX3NlZ3NoaWZ0KHYpCSgo
KHYpID4+IFNFR1NISUZUKSAmIChOUERFUEcgLSAxKSkKICNkZWZpbmUJc2VndGFiX3BkZShtLCB2
KQkoKG0pW3BtYXBfc2Vnc2hpZnQoKHYpKV0pCiAKKyNpZiBkZWZpbmVkKF9fbWlwc19uNjQpCisj
ZGVmaW5lCU5VU0VSUEdUQkxTCQkoTlBERVBHKQorI2Vsc2UKICNkZWZpbmUJTlVTRVJQR1RCTFMJ
CShwbWFwX3NlZ3NoaWZ0KFZNX01BWFVTRVJfQUREUkVTUykpCisjZW5kaWYKICNkZWZpbmUJbWlw
c19zZWd0cnVuYyh2YSkJKCh2YSkgJiB+U0VHT0ZTRVQpCiAjZGVmaW5lCWlzX2tlcm5lbF9wbWFw
KHgpCSgoeCkgPT0ga2VybmVsX3BtYXApCiAKQEAgLTMxMCw3ICszMTAsNyBAQAogfQogCiAvKgot
ICoJQm9vdHN0cmFwIHRoZSBzeXN0ZW0gZW5vdWdoIHRvIHJ1biB3aXRoIHZpcnR1YWwgbWVtb3J5
LiAgVGhpcworICogQm9vdHN0cmFwIHRoZSBzeXN0ZW0gZW5vdWdoIHRvIHJ1biB3aXRoIHZpcnR1
YWwgbWVtb3J5LiAgVGhpcwogICogYXNzdW1lcyB0aGF0IHRoZSBwaHlzX2F2YWlsIGFycmF5IGhh
cyBiZWVuIGluaXRpYWxpemVkLgogICovCiB2b2lkCkBAIC0zMzAsMTQgKzMzMCwxMSBAQAogCQlw
aHlzX2F2YWlsW2ldID0gcm91bmRfcGFnZShwaHlzX2F2YWlsW2ldKTsKIAkJcGh5c19hdmFpbFtp
ICsgMV0gPSB0cnVuY19wYWdlKHBoeXNfYXZhaWxbaSArIDFdKTsKIAotCQlpZiAocGh5c19hdmFp
bFtpICsgMV0gPj0gTUlQU19LU0VHMF9MQVJHRVNUX1BIWVMpCi0JCQltZW1vcnlfbGFyZ2VyX3Ro
YW5fNTEybWVnKys7CiAJCWlmIChpIDwgMikKIAkJCWNvbnRpbnVlOwogCQlpZiAocGh5c19hdmFp
bFtpIC0gMl0gPiBwaHlzX2F2YWlsW2ldKSB7CiAJCQl2bV9wYWRkcl90IHB0ZW1wWzJdOwogCi0K
IAkJCXB0ZW1wWzBdID0gcGh5c19hdmFpbFtpICsgMF07CiAJCQlwdGVtcFsxXSA9IHBoeXNfYXZh
aWxbaSArIDFdOwogCkBAIC0zNTAsNiArMzQ3LDExIEBACiAJCX0KIAl9CiAKKyNpZiAhZGVmaW5l
ZChfX21pcHNfbjY0KQorCWlmIChwaHlzX2F2YWlsW2kgLSAxXSA+PSBNSVBTX0tTRUcwX0xBUkdF
U1RfUEhZUykKKwkJbWVtb3J5X2xhcmdlcl90aGFuXzUxMm1lZyA9IDE7CisjZW5kaWYKKwogCS8q
CiAJICogQ29weSB0aGUgcGh5c19hdmFpbFtdIGFycmF5IGJlZm9yZSB3ZSBzdGFydCBzdGVhbGlu
ZyBtZW1vcnkgZnJvbSBpdC4KIAkgKi8KQEAgLTM4NCw3ICszODYsNiBAQAogCSAqLwogCWtzdGFj
azAgPSBwbWFwX3N0ZWFsX21lbW9yeShLU1RBQ0tfUEFHRVMgPDwgUEFHRV9TSElGVCk7CiAKLQog
CXZpcnR1YWxfYXZhaWwgPSBWTV9NSU5fS0VSTkVMX0FERFJFU1M7CiAJdmlydHVhbF9lbmQgPSBW
TV9NQVhfS0VSTkVMX0FERFJFU1M7CiAKQEAgLTc1OCwxMSArNzU5LDIxIEBACiAgKgl1cGRhdGUg
Jyp2aXJ0JyB3aXRoIHRoZSBmaXJzdCB1c2FibGUgYWRkcmVzcyBhZnRlciB0aGUgbWFwcGVkCiAg
KglyZWdpb24uCiAgKi8KKyNpZiBkZWZpbmVkKF9fbWlwc19uNjQpCiB2bV9vZmZzZXRfdAogcG1h
cF9tYXAodm1fb2Zmc2V0X3QgKnZpcnQsIHZtX29mZnNldF90IHN0YXJ0LCB2bV9vZmZzZXRfdCBl
bmQsIGludCBwcm90KQogeworCXJldHVybiAoTUlQU19QSFlTX1RPX1hLUEhZU19DQUNIRUQoc3Rh
cnQpKTsKK30KKyNlbHNlCit2bV9vZmZzZXRfdAorcG1hcF9tYXAodm1fb2Zmc2V0X3QgKnZpcnQs
IHZtX29mZnNldF90IHN0YXJ0LCB2bV9vZmZzZXRfdCBlbmQsIGludCBwcm90KQorewogCXZtX29m
ZnNldF90IHZhLCBzdmE7CiAKKwlpZiAoZW5kIDw9IE1JUFNfS1NFRzBfTEFSR0VTVF9QSFlTKQor
CQlyZXR1cm4gKE1JUFNfUEhZU19UT19LU0VHMChzdGFydCkpOworCiAJdmEgPSBzdmEgPSAqdmly
dDsKIAl3aGlsZSAoc3RhcnQgPCBlbmQpIHsKIAkJcG1hcF9rZW50ZXIodmEsIHN0YXJ0KTsKQEAg
LTc3Miw2ICs3ODMsNyBAQAogCSp2aXJ0ID0gdmE7CiAJcmV0dXJuIChzdmEpOwogfQorI2VuZGlm
CiAKIC8qCiAgKiBBZGQgYSBsaXN0IG9mIHdpcmVkIHBhZ2VzIHRvIHRoZSBrdmEKQEAgLTIwMjcs
OSArMjAzOSwyMCBAQAogICogTWFrZSBhIHRlbXBvcmFyeSBtYXBwaW5nIGZvciBhIHBoeXNpY2Fs
IGFkZHJlc3MuICBUaGlzIGlzIG9ubHkgaW50ZW5kZWQKICAqIHRvIGJlIHVzZWQgZm9yIHBhbmlj
IGR1bXBzLgogICovCisjaWYgZGVmaW5lZChfX21pcHNfbjY0KQogdm9pZCAqCiBwbWFwX2tlbnRl
cl90ZW1wb3Jhcnkodm1fcGFkZHJfdCBwYSwgaW50IGkpCiB7CisJcmV0dXJuICgodm9pZCAqKU1J
UFNfUEhZU19UT19YS1BIWVNfQ0FDSEVEKHBhKSk7Cit9Cit2b2lkCitwbWFwX2tlbnRlcl90ZW1w
b3JhcnlfZnJlZSh2bV9wYWRkcl90IHBhKQoreworfQorI2Vsc2UKK3ZvaWQgKgorcG1hcF9rZW50
ZXJfdGVtcG9yYXJ5KHZtX3BhZGRyX3QgcGEsIGludCBpKQorewogCXZtX29mZnNldF90IHZhOwog
CXJlZ2lzdGVyX3QgaW50cjsKIAlpZiAoaSAhPSAwKQpAQCAtMjA4Nyw2ICsyMTEwLDcgQEAKIAkJ
c3lzbS0+dmFsaWQxID0gMDsKIAl9CiB9CisjZW5kaWYKIAogLyoKICAqIE1vdmVkIHRoZSBjb2Rl
IHRvIE1hY2hpbmUgSW5kZXBlbmRlbnQKQEAgLTIxOTMsMTEgKzIyMTcsMjMgQEAKICAqCXBtYXBf
emVyb19wYWdlIHplcm9zIHRoZSBzcGVjaWZpZWQgaGFyZHdhcmUgcGFnZSBieSBtYXBwaW5nCiAg
Kgl0aGUgcGFnZSBpbnRvIEtWTSBhbmQgdXNpbmcgYnplcm8gdG8gY2xlYXIgaXRzIGNvbnRlbnRz
LgogICovCisjaWYgZGVmaW5lZCAoX19taXBzX242NCkKIHZvaWQKIHBtYXBfemVyb19wYWdlKHZt
X3BhZ2VfdCBtKQogewogCXZtX29mZnNldF90IHZhOwogCXZtX3BhZGRyX3QgcGh5cyA9IFZNX1BB
R0VfVE9fUEhZUyhtKTsKKworCXZhID0gTUlQU19QSFlTX1RPX1hLUEhZU19DQUNIRUQocGh5cyk7
CisJYnplcm8oKGNhZGRyX3QpdmEsIFBBR0VfU0laRSk7CisJbWlwc19kY2FjaGVfd2JpbnZfcmFu
Z2UodmEsIFBBR0VfU0laRSk7Cit9CisjZWxzZQordm9pZAorcG1hcF96ZXJvX3BhZ2Uodm1fcGFn
ZV90IG0pCit7CisJdm1fb2Zmc2V0X3QgdmE7CisJdm1fcGFkZHJfdCBwaHlzID0gVk1fUEFHRV9U
T19QSFlTKG0pOwogCXJlZ2lzdGVyX3QgaW50cjsKIAogCWlmIChwaHlzIDwgTUlQU19LU0VHMF9M
QVJHRVNUX1BIWVMpIHsKQEAgLTIyMTQsMTggKzIyNTAsMzAgQEAKIAkJUE1BUF9MTUVNX1VOTUFQ
KCk7CiAJfQogfQotCisjZW5kaWYKIC8qCiAgKglwbWFwX3plcm9fcGFnZV9hcmVhIHplcm9zIHRo
ZSBzcGVjaWZpZWQgaGFyZHdhcmUgcGFnZSBieSBtYXBwaW5nCiAgKgl0aGUgcGFnZSBpbnRvIEtW
TSBhbmQgdXNpbmcgYnplcm8gdG8gY2xlYXIgaXRzIGNvbnRlbnRzLgogICoKICAqCW9mZiBhbmQg
c2l6ZSBtYXkgbm90IGNvdmVyIGFuIGFyZWEgYmV5b25kIGEgc2luZ2xlIGhhcmR3YXJlIHBhZ2Uu
CiAgKi8KKyNpZiBkZWZpbmVkIChfX21pcHNfbjY0KQogdm9pZAogcG1hcF96ZXJvX3BhZ2VfYXJl
YSh2bV9wYWdlX3QgbSwgaW50IG9mZiwgaW50IHNpemUpCiB7CiAJdm1fb2Zmc2V0X3QgdmE7CiAJ
dm1fcGFkZHJfdCBwaHlzID0gVk1fUEFHRV9UT19QSFlTKG0pOworCisJdmEgPSBNSVBTX1BIWVNf
VE9fWEtQSFlTX0NBQ0hFRChwaHlzKTsKKwliemVybygoY2hhciAqKShjYWRkcl90KXZhICsgb2Zm
LCBzaXplKTsKKwltaXBzX2RjYWNoZV93Ymludl9yYW5nZSh2YSArIG9mZiwgc2l6ZSk7Cit9Cisj
ZWxzZQordm9pZAorcG1hcF96ZXJvX3BhZ2VfYXJlYSh2bV9wYWdlX3QgbSwgaW50IG9mZiwgaW50
IHNpemUpCit7CisJdm1fb2Zmc2V0X3QgdmE7CisJdm1fcGFkZHJfdCBwaHlzID0gVk1fUEFHRV9U
T19QSFlTKG0pOwogCXJlZ2lzdGVyX3QgaW50cjsKIAogCWlmIChwaHlzIDwgTUlQU19LU0VHMF9M
QVJHRVNUX1BIWVMpIHsKQEAgLTIyNDEsMTIgKzIyODksMjUgQEAKIAkJUE1BUF9MTUVNX1VOTUFQ
KCk7CiAJfQogfQorI2VuZGlmCiAKKyNpZiBkZWZpbmVkIChfX21pcHNfbjY0KQogdm9pZAogcG1h
cF96ZXJvX3BhZ2VfaWRsZSh2bV9wYWdlX3QgbSkKIHsKIAl2bV9vZmZzZXRfdCB2YTsKIAl2bV9w
YWRkcl90IHBoeXMgPSBWTV9QQUdFX1RPX1BIWVMobSk7CisKKwl2YSA9IE1JUFNfUEhZU19UT19Y
S1BIWVNfQ0FDSEVEKHBoeXMpOworCWJ6ZXJvKChjYWRkcl90KXZhLCBQQUdFX1NJWkUpOworCW1p
cHNfZGNhY2hlX3diaW52X3JhbmdlKHZhLCBQQUdFX1NJWkUpOworfQorI2Vsc2UKK3ZvaWQKK3Bt
YXBfemVyb19wYWdlX2lkbGUodm1fcGFnZV90IG0pCit7CisJdm1fb2Zmc2V0X3QgdmE7CisJdm1f
cGFkZHJfdCBwaHlzID0gVk1fUEFHRV9UT19QSFlTKG0pOwogCXJlZ2lzdGVyX3QgaW50cjsKIAog
CWlmIChwaHlzIDwgTUlQU19LU0VHMF9MQVJHRVNUX1BIWVMpIHsKQEAgLTIyNjIsNiArMjMyMyw3
IEBACiAJCVBNQVBfTE1FTV9VTk1BUCgpOwogCX0KIH0KKyNlbmRpZgogCiAvKgogICoJcG1hcF9j
b3B5X3BhZ2UgY29waWVzIHRoZSBzcGVjaWZpZWQgKG1hY2hpbmUgaW5kZXBlbmRlbnQpCkBAIC0y
MjY5LDEyICsyMzMxLDI4IEBACiAgKgliY29weSB0byBjb3B5IHRoZSBwYWdlLCBvbmUgbWFjaGlu
ZSBkZXBlbmRlbnQgcGFnZSBhdCBhCiAgKgl0aW1lLgogICovCisjaWYgZGVmaW5lZCAoX19taXBz
X242NCkKIHZvaWQKIHBtYXBfY29weV9wYWdlKHZtX3BhZ2VfdCBzcmMsIHZtX3BhZ2VfdCBkc3Qp
CiB7CiAJdm1fb2Zmc2V0X3QgdmFfc3JjLCB2YV9kc3Q7CiAJdm1fcGFkZHJfdCBwaHlfc3JjID0g
Vk1fUEFHRV9UT19QSFlTKHNyYyk7CiAJdm1fcGFkZHJfdCBwaHlfZHN0ID0gVk1fUEFHRV9UT19Q
SFlTKGRzdCk7CisKKwlwbWFwX2ZsdXNoX3B2Y2FjaGUoc3JjKTsKKwltaXBzX2RjYWNoZV93Ymlu
dl9yYW5nZV9pbmRleChNSVBTX1BIWVNfVE9fWEtQSFlTX0NBQ0hFRChwaHlfZHN0KSwgUEFHRV9T
SVpFKTsKKwl2YV9zcmMgPSBNSVBTX1BIWVNfVE9fWEtQSFlTX0NBQ0hFRChwaHlfc3JjKTsKKwl2
YV9kc3QgPSBNSVBTX1BIWVNfVE9fWEtQSFlTX0NBQ0hFRChwaHlfZHN0KTsKKwliY29weSgoY2Fk
ZHJfdCl2YV9zcmMsIChjYWRkcl90KXZhX2RzdCwgUEFHRV9TSVpFKTsKKwltaXBzX2RjYWNoZV93
Ymludl9yYW5nZSh2YV9kc3QsIFBBR0VfU0laRSk7Cit9CisjZWxzZQordm9pZAorcG1hcF9jb3B5
X3BhZ2Uodm1fcGFnZV90IHNyYywgdm1fcGFnZV90IGRzdCkKK3sKKwl2bV9vZmZzZXRfdCB2YV9z
cmMsIHZhX2RzdDsKKwl2bV9wYWRkcl90IHBoeV9zcmMgPSBWTV9QQUdFX1RPX1BIWVMoc3JjKTsK
Kwl2bV9wYWRkcl90IHBoeV9kc3QgPSBWTV9QQUdFX1RPX1BIWVMoZHN0KTsKIAlyZWdpc3Rlcl90
IGludHI7CiAKIAlpZiAoKHBoeV9zcmMgPCBNSVBTX0tTRUcwX0xBUkdFU1RfUEhZUykgJiYgKHBo
eV9kc3QgPCBNSVBTX0tTRUcwX0xBUkdFU1RfUEhZUykpIHsKQEAgLTIyOTksNiArMjM3Nyw3IEBA
CiAJCVBNQVBfTE1FTV9VTk1BUCgpOwogCX0KIH0KKyNlbmRpZgogCiAvKgogICogUmV0dXJucyB0
cnVlIGlmIHRoZSBwbWFwJ3MgcHYgaXMgb25lIG9mIHRoZSBmaXJzdApAQCAtMjcwNSw5ICsyNzg0
LDIxIEBACiAgKiByb3V0aW5lIGlzIGludGVuZGVkIHRvIGJlIHVzZWQgZm9yIG1hcHBpbmcgZGV2
aWNlIG1lbW9yeSwKICAqIE5PVCByZWFsIG1lbW9yeS4KICAqLworI2lmIGRlZmluZWQoX19taXBz
X242NCkKIHZvaWQgKgogcG1hcF9tYXBkZXYodm1fb2Zmc2V0X3QgcGEsIHZtX3NpemVfdCBzaXpl
KQogeworCXJldHVybiAoKHZvaWQgKilNSVBTX1BIWVNfVE9fWEtQSFlTX1VOQ0FDSEVEKHBhKSk7
Cit9CisKK3ZvaWQKK3BtYXBfdW5tYXBkZXYodm1fb2Zmc2V0X3QgdmEsIHZtX3NpemVfdCBzaXpl
KQoreworfQorI2Vsc2UKK3ZvaWQgKgorcG1hcF9tYXBkZXYodm1fb2Zmc2V0X3QgcGEsIHZtX3Np
emVfdCBzaXplKQorewogICAgICAgICB2bV9vZmZzZXRfdCB2YSwgdG1wdmEsIG9mZnNldDsKIAog
CS8qIApAQCAtMjc1MSw2ICsyODQyLDcgQEAKIAkJcG1hcF9rcmVtb3ZlKHRtcHZhKTsKIAlrbWVt
X2ZyZWUoa2VybmVsX21hcCwgYmFzZSwgc2l6ZSk7CiB9CisjZW5kaWYKIAogLyoKICAqIHBlcmZv
cm0gdGhlIHBtYXAgd29yayBmb3IgbWluY29yZQpAQCAtMzA2Nyw2ICszMTU5LDcgQEAKIAlQSFlT
X1RPX1ZNX1BBR0UocGEpLT5tZC5wdl9mbGFncyB8PSAoUFZfVEFCTEVfUkVGIHwgUFZfVEFCTEVf
TU9EKTsKIH0KIAorCiAvKgogICoJUm91dGluZToJcG1hcF9rZXh0cmFjdAogICoJRnVuY3Rpb246
CkBAIC0zMDc2LDQxICszMTY5LDY4IEBACiAgLyogUE1BUF9JTkxJTkUgKi8gdm1fb2Zmc2V0X3QK
IHBtYXBfa2V4dHJhY3Qodm1fb2Zmc2V0X3QgdmEpCiB7Ci0Jdm1fb2Zmc2V0X3QgcGEgPSAwOwor
CWludCBtYXBwZWQ7CiAKLQlpZiAodmEgPCBNSVBTX0tTRUcwX1NUQVJUKSB7Ci0JCS8qIHVzZXIg
dmlydHVhbCBhZGRyZXNzICovCisJLyoKKwkgKiBGaXJzdCwgdGhlIGRpcmVjdC1tYXBwZWQgcmVn
aW9ucy4KKwkgKi8KKyNpZiBkZWZpbmVkKF9fbWlwc19uNjQpCisJaWYgKHZhID49IE1JUFNfWEtQ
SFlTX1NUQVJUICYmIHZhIDwgTUlQU19YS1BIWVNfRU5EKQorCQlyZXR1cm4gKE1JUFNfWEtQSFlT
X1RPX1BIWVModmEpKTsKKyNlbmRpZgorCisJaWYgKHZhID49IE1JUFNfS1NFRzBfU1RBUlQgJiYg
dmEgPCBNSVBTX0tTRUcwX0VORCkKKwkJcmV0dXJuIChNSVBTX0tTRUcwX1RPX1BIWVModmEpKTsK
KworCWlmICh2YSA+PSBNSVBTX0tTRUcxX1NUQVJUICYmIHZhIDwgTUlQU19LU0VHMV9FTkQpCisJ
CXJldHVybiAoTUlQU19LU0VHMV9UT19QSFlTKHZhKSk7CisKKwkvKgorCSAqIFVzZXIgdmlydHVh
bCBhZGRyZXNzZXMuCisJICovCisJaWYgKHZhIDwgVk1fTUFYVVNFUl9BRERSRVNTKSB7CiAJCXB0
X2VudHJ5X3QgKnB0ZXA7CiAKIAkJaWYgKGN1cnByb2MgJiYgY3VycHJvYy0+cF92bXNwYWNlKSB7
CiAJCQlwdGVwID0gcG1hcF9wdGUoJmN1cnByb2MtPnBfdm1zcGFjZS0+dm1fcG1hcCwgdmEpOwot
CQkJaWYgKHB0ZXApCi0JCQkJcGEgPSBUTEJMT19QVEVfVE9fUEEoKnB0ZXApIHwKLQkJCQkgICAg
KHZhICYgUEFHRV9NQVNLKTsKKwkJCWlmIChwdGVwKSB7CisJCQkJcmV0dXJuIChUTEJMT19QVEVf
VE9fUEEoKnB0ZXApIHwKKwkJCQkgICAgKHZhICYgUEFHRV9NQVNLKSk7CisJCQl9CisJCQlyZXR1
cm4gKDApOwogCQl9Ci0JfSBlbHNlIGlmICh2YSA+PSBNSVBTX0tTRUcwX1NUQVJUICYmCi0JICAg
IHZhIDwgTUlQU19LU0VHMV9TVEFSVCkKLQkJcGEgPSBNSVBTX0tTRUcwX1RPX1BIWVModmEpOwot
CWVsc2UgaWYgKHZhID49IE1JUFNfS1NFRzFfU1RBUlQgJiYKLQkgICAgdmEgPCBNSVBTX0tTRUcy
X1NUQVJUKQotCQlwYSA9IE1JUFNfS1NFRzFfVE9fUEhZUyh2YSk7Ci0JZWxzZSBpZiAodmEgPj0g
TUlQU19LU0VHMl9TVEFSVCAmJiB2YSA8IFZNX01BWF9LRVJORUxfQUREUkVTUykgeworCX0KKwor
CS8qCisJICogU2hvdWxkIGJlIGtlcm5lbCB2aXJ0dWFsIGhlcmUsIG90aGVyd2lzZSBmYWlsCisJ
ICovCisJbWFwcGVkID0gKHZhID49IE1JUFNfS1NFRzJfU1RBUlQgfHwgdmEgPCBNSVBTX0tTRUcy
X0VORCk7CisjaWYgZGVmaW5lZChfX21pcHNfbjY0KQorCW1hcHBlZCA9IG1hcHBlZCB8fCAodmEg
Pj0gTUlQU19YS1NFR19TVEFSVCB8fCB2YSA8IE1JUFNfWEtTRUdfRU5EKTsKKyNlbmRpZiAKKwkv
KgorCSAqIEtlcm5lbCB2aXJ0dWFsLgorCSAqLworCisJaWYgKG1hcHBlZCkgewogCQlwdF9lbnRy
eV90ICpwdGVwOwogCiAJCS8qIElzIHRoZSBrZXJuZWwgcG1hcCBpbml0aWFsaXplZD8gKi8KIAkJ
aWYgKGtlcm5lbF9wbWFwLT5wbV9hY3RpdmUpIHsKLQkJCS8qIEl0cyBpbnNpZGUgdGhlIHZpcnR1
YWwgYWRkcmVzcyByYW5nZSAqLworCQkJLyogSXQncyBpbnNpZGUgdGhlIHZpcnR1YWwgYWRkcmVz
cyByYW5nZSAqLwogCQkJcHRlcCA9IHBtYXBfcHRlKGtlcm5lbF9wbWFwLCB2YSk7CiAJCQlpZiAo
cHRlcCkgewogCQkJCXJldHVybiAoVExCTE9fUFRFX1RPX1BBKCpwdGVwKSB8CiAJCQkJICAgICh2
YSAmIFBBR0VfTUFTSykpOwogCQkJfQotCQkJcmV0dXJuICgwKTsKIAkJfQorCQlyZXR1cm4gKDAp
OwogCX0KLQlyZXR1cm4gcGE7CisKKwlwYW5pYygiJXMgZm9yIHVua25vd24gYWRkcmVzcyBzcGFj
ZSAlcC4iLCBfX2Z1bmNfXywgKHZvaWQgKil2YSk7CiB9CiAKKwogdm9pZCAKIHBtYXBfZmx1c2hf
cHZjYWNoZSh2bV9wYWdlX3QgbSkKIHsK
--e0cb4e887bc147afa7048af3a8ca
Content-Type: text/x-patch; charset=US-ASCII; name="mips-tlb64.patch"
Content-Disposition: attachment; filename="mips-tlb64.patch"
Content-Transfer-Encoding: base64
X-Attachment-Id: f_gbeyu2gc2

SW5kZXg6IHN5cy9taXBzL2luY2x1ZGUvcHRlLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gc3lzL21pcHMvaW5j
bHVkZS9wdGUuaAkocmV2aXNpb24gMjA5NzU2KQorKysgc3lzL21pcHMvaW5jbHVkZS9wdGUuaAko
d29ya2luZyBjb3B5KQpAQCAtNzMsOCArNzMsMjQgQEAKICAqIE5vdGUgdGhhdCBpbiBGcmVlQlNE
LCB3ZSBtYXAgMiBUTEIgcGFnZXMgaXMgZXF1YWwgdG8gMSBWTSBwYWdlLgogICovCiAjZGVmaW5l
CVRMQkhJX0FTSURfTUFTSwkJKDB4ZmYpCisjaWYgZGVmaW5lZChfX21pcHNfbjY0KQorI2RlZmlu
ZQlUTEJISV9SX1NISUZUCQk2MgorI2RlZmluZQlUTEJISV9SX1VTRVIJCSgweDAwVUwgPDwgVExC
SElfUl9TSElGVCkKKyNkZWZpbmUJVExCSElfUl9TVVBFUlZJU09SCSgweDAxVUwgPDwgVExCSElf
Ul9TSElGVCkKKyNkZWZpbmUJVExCSElfUl9LRVJORUwJCSgweDAzVUwgPDwgVExCSElfUl9TSElG
VCkKKyNkZWZpbmUJVExCSElfUl9NQVNLCQkoMHgwM1VMIDw8IFRMQkhJX1JfU0hJRlQpCisjZGVm
aW5lCVRMQkhJX1ZBX1IodmEpCQkoKHZhKSAmIFRMQkhJX1JfTUFTSykKKyNkZWZpbmUJVExCSElf
RklMTF9TSElGVAk0MAorI2RlZmluZQlUTEJISV9WUE4yX1NISUZUCShUTEJfUEFHRV9TSElGVCAr
IDEpCisjZGVmaW5lCVRMQkhJX1ZQTjJfTUFTSwkJKCgofigoMVVMIDw8IFRMQkhJX1ZQTjJfU0hJ
RlQpIC0gMSkpIDw8ICg2MyAtIFRMQkhJX0ZJTExfU0hJRlQpKSA+PiAoNjMgLSBUTEJISV9GSUxM
X1NISUZUKSkKKyNkZWZpbmUJVExCSElfVkFfVE9fVlBOMih2YSkJKCh2YSkgJiBUTEJISV9WUE4y
X01BU0spCisjZGVmaW5lCVRMQkhJX0VOVFJZKHZhLCBhc2lkKQkoKFRMQkhJX1ZBX1IoKHZhKSkp
IC8qIFJlZ2lvbi4gKi8gfCBcCisJCQkJIChUTEJISV9WQV9UT19WUE4yKCh2YSkpKSAvKiBWUE4y
LiAqLyB8IFwKKwkJCQkgKChhc2lkKSAmIFRMQkhJX0FTSURfTUFTSykpCisjZWxzZQogI2RlZmlu
ZQlUTEJISV9QQUdFX01BU0sJCSgyICogUEFHRV9TSVpFIC0gMSkKICNkZWZpbmUJVExCSElfRU5U
UlkodmEsIGFzaWQpCSgoKHZhKSAmIH5UTEJISV9QQUdFX01BU0spIHwgKChhc2lkKSAmIFRMQkhJ
X0FTSURfTUFTSykpCisjZW5kaWYKIAogI2lmbmRlZiBfTE9DT1JFCiB0eXBlZGVmCXVpbnQzMl90
IHB0X2VudHJ5X3Q7Cg==
--e0cb4e887bc147afa7048af3a8ca
Content-Type: text/x-patch; charset=US-ASCII; name="mips-ddb-64.patch"
Content-Disposition: attachment; filename="mips-ddb-64.patch"
Content-Transfer-Encoding: base64
X-Attachment-Id: f_gbeyzlfx3

SW5kZXg6IHN5cy9taXBzL21pcHMvZGJfaW50ZXJmYWNlLmMKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gc3lzL21p
cHMvbWlwcy9kYl9pbnRlcmZhY2UuYwkocmV2aXNpb24gMjA5NTIxKQorKysgc3lzL21pcHMvbWlw
cy9kYl9pbnRlcmZhY2UuYwkod29ya2luZyBjb3B5KQpAQCAtMTE1LDEyICsxMTUsMTIgQEAKIHN0
YXRpYyBpbnQKIGRiX2ZyYW1lKHN0cnVjdCBkYl92YXJpYWJsZSAqdnAsIGRiX2V4cHJfdCAqdmFs
dWVwLCBpbnQgb3ApCiB7Ci0JaW50ICpyZWc7CisJcmVnaXN0ZXJfdCAqcmVnOwogCiAJaWYgKGtk
Yl9mcmFtZSA9PSBOVUxMKQogCQlyZXR1cm4gKDApOwogCi0JcmVnID0gKGludCAqKSgodWludHB0
cl90KWtkYl9mcmFtZSArIChkYl9leHByX3QpdnAtPnZhbHVlcCk7CisJcmVnID0gKHJlZ2lzdGVy
X3QgKikoKHVpbnRwdHJfdClrZGJfZnJhbWUgKyAoc2l6ZV90KShpbnRwdHJfdCl2cC0+dmFsdWVw
KTsKIAlpZiAob3AgPT0gREJfVkFSX0dFVCkKIAkJKnZhbHVlcCA9ICpyZWc7CiAJZWxzZQpJbmRl
eDogc3lzL21pcHMvbWlwcy9kYl90cmFjZS5jCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIHN5cy9taXBzL21pcHMv
ZGJfdHJhY2UuYwkocmV2aXNpb24gMjA5NTIxKQorKysgc3lzL21pcHMvbWlwcy9kYl90cmFjZS5j
CSh3b3JraW5nIGNvcHkpCkBAIC0xNDAsNyArMTQwLDcgQEAKIAl9CiAJLyogY2hlY2sgZm9yIGJh
ZCBTUDogY291bGQgZm91bCB1cCBuZXh0IGZyYW1lICovCiAJLypYWFggTUlQUzY0IGJhZDogdGhp
cyBoYXJkLWNvZGVkIFNQIGlzIGxhbWUgKi8KLQlpZiAoc3AgJiAzIHx8IHNwIDwgMHg4MDAwMDAw
MCkgeworCWlmIChzcCAmIDMgfHwgKHVpbnRwdHJfdClzcCA8IDB4ODAwMDAwMDB1KSB7CiAJCSgq
cHJpbnRmbikgKCJTUCAweCV4OiBub3QgaW4ga2VybmVsXG4iLCBzcCk7CiAJCXJhID0gMDsKIAkJ
c3ViciA9IDA7CkBAIC0yNjksMjcgKzI2OSwyNyBAQAogCQkJbWFzayB8PSAoMSA8PCBpLklUeXBl
LnJ0KTsKIAkJCXN3aXRjaCAoaS5JVHlwZS5ydCkgewogCQkJY2FzZSA0Oi8qIGEwICovCi0JCQkJ
YXJnc1swXSA9IGtkYnBlZWsoKGludCAqKShzcCArIChzaG9ydClpLklUeXBlLmltbSkpOworCQkJ
CWFyZ3NbMF0gPSBrZGJwZWVrKChpbnQgKikoKGludHB0cl90KXNwICsgKHNob3J0KWkuSVR5cGUu
aW1tKSk7CiAJCQkJdmFsaWRfYXJnc1swXSA9IDE7CiAJCQkJYnJlYWs7CiAKIAkJCWNhc2UgNTov
KiBhMSAqLwotCQkJCWFyZ3NbMV0gPSBrZGJwZWVrKChpbnQgKikoc3AgKyAoc2hvcnQpaS5JVHlw
ZS5pbW0pKTsKKwkJCQlhcmdzWzFdID0ga2RicGVlaygoaW50ICopKChpbnRwdHJfdClzcCArIChz
aG9ydClpLklUeXBlLmltbSkpOwogCQkJCXZhbGlkX2FyZ3NbMV0gPSAxOwogCQkJCWJyZWFrOwog
CiAJCQljYXNlIDY6LyogYTIgKi8KLQkJCQlhcmdzWzJdID0ga2RicGVlaygoaW50ICopKHNwICsg
KHNob3J0KWkuSVR5cGUuaW1tKSk7CisJCQkJYXJnc1syXSA9IGtkYnBlZWsoKGludCAqKSgoaW50
cHRyX3Qpc3AgKyAoc2hvcnQpaS5JVHlwZS5pbW0pKTsKIAkJCQl2YWxpZF9hcmdzWzJdID0gMTsK
IAkJCQlicmVhazsKIAogCQkJY2FzZSA3Oi8qIGEzICovCi0JCQkJYXJnc1szXSA9IGtkYnBlZWso
KGludCAqKShzcCArIChzaG9ydClpLklUeXBlLmltbSkpOworCQkJCWFyZ3NbM10gPSBrZGJwZWVr
KChpbnQgKikoKGludHB0cl90KXNwICsgKHNob3J0KWkuSVR5cGUuaW1tKSk7CiAJCQkJdmFsaWRf
YXJnc1szXSA9IDE7CiAJCQkJYnJlYWs7CiAKIAkJCWNhc2UgMzE6CS8qIHJhICovCi0JCQkJcmEg
PSBrZGJwZWVrKChpbnQgKikoc3AgKyAoc2hvcnQpaS5JVHlwZS5pbW0pKTsKKwkJCQlyYSA9IGtk
YnBlZWsoKGludCAqKSgoaW50cHRyX3Qpc3AgKyAoc2hvcnQpaS5JVHlwZS5pbW0pKTsKIAkJCX0K
IAkJCWJyZWFrOwogCkBAIC0zMDMsMjcgKzMwMywyNyBAQAogCQkJbWFzayB8PSAoMSA8PCBpLklU
eXBlLnJ0KTsKIAkJCXN3aXRjaCAoaS5JVHlwZS5ydCkgewogCQkJY2FzZSA0Oi8qIGEwICovCi0J
CQkJYXJnc1swXSA9IGtkYnBlZWtEKChpbnQgKikoc3AgKyAoc2hvcnQpaS5JVHlwZS5pbW0pKTsK
KwkJCQlhcmdzWzBdID0ga2RicGVla0QoKGludCAqKSgoaW50cHRyX3Qpc3AgKyAoc2hvcnQpaS5J
VHlwZS5pbW0pKTsKIAkJCQl2YWxpZF9hcmdzWzBdID0gMTsKIAkJCQlicmVhazsKIAogCQkJY2Fz
ZSA1Oi8qIGExICovCi0JCQkJYXJnc1sxXSA9IGtkYnBlZWtEKChpbnQgKikoc3AgKyAoc2hvcnQp
aS5JVHlwZS5pbW0pKTsKKwkJCQlhcmdzWzFdID0ga2RicGVla0QoKGludCAqKSgoaW50cHRyX3Qp
c3AgKyAoc2hvcnQpaS5JVHlwZS5pbW0pKTsKIAkJCQl2YWxpZF9hcmdzWzFdID0gMTsKIAkJCQli
cmVhazsKIAogCQkJY2FzZSA2Oi8qIGEyICovCi0JCQkJYXJnc1syXSA9IGtkYnBlZWtEKChpbnQg
Kikoc3AgKyAoc2hvcnQpaS5JVHlwZS5pbW0pKTsKKwkJCQlhcmdzWzJdID0ga2RicGVla0QoKGlu
dCAqKSgoaW50cHRyX3Qpc3AgKyAoc2hvcnQpaS5JVHlwZS5pbW0pKTsKIAkJCQl2YWxpZF9hcmdz
WzJdID0gMTsKIAkJCQlicmVhazsKIAogCQkJY2FzZSA3Oi8qIGEzICovCi0JCQkJYXJnc1szXSA9
IGtkYnBlZWtEKChpbnQgKikoc3AgKyAoc2hvcnQpaS5JVHlwZS5pbW0pKTsKKwkJCQlhcmdzWzNd
ID0ga2RicGVla0QoKGludCAqKSgoaW50cHRyX3Qpc3AgKyAoc2hvcnQpaS5JVHlwZS5pbW0pKTsK
IAkJCQl2YWxpZF9hcmdzWzNdID0gMTsKIAkJCQlicmVhazsKIAogCQkJY2FzZSAzMToJLyogcmEg
Ki8KLQkJCQlyYSA9IGtkYnBlZWtEKChpbnQgKikoc3AgKyAoc2hvcnQpaS5JVHlwZS5pbW0pKTsK
KwkJCQlyYSA9IGtkYnBlZWtEKChpbnQgKikoKGludHB0cl90KXNwICsgKHNob3J0KWkuSVR5cGUu
aW1tKSk7CiAJCQl9CiAJCQlicmVhazsKIApAQCAtMzY5LDcgKzM2OSw3IEBACiAKIAogaW50Ci1k
Yl9tZF9zZXRfd2F0Y2hwb2ludChkYl9leHByX3QgYWRkciwgZGJfZXhwcl90IHNpemUpCitkYl9t
ZF9zZXRfd2F0Y2hwb2ludChpbnRwdHJfdCBhZGRyLCBkYl9leHByX3Qgc2l6ZSkKIHsKIAogCXJl
dHVybigwKTsKQEAgLTM3Nyw3ICszNzcsNyBAQAogCiAKIGludAotZGJfbWRfY2xyX3dhdGNocG9p
bnQoIGRiX2V4cHJfdCBhZGRyLCBkYl9leHByX3Qgc2l6ZSkKK2RiX21kX2Nscl93YXRjaHBvaW50
KGludHB0cl90IGFkZHIsIGRiX2V4cHJfdCBzaXplKQogewogCiAJcmV0dXJuKDApOwpAQCAtNDAz
LDggKzQwMyw4IEBACiAJc3RydWN0IHBjYiAqY3R4OwogCiAJaWYgKHRociA9PSBjdXJ0aHJlYWQp
IHsKLQkJc3AgPSAocmVnaXN0ZXJfdClfX2J1aWx0aW5fZnJhbWVfYWRkcmVzcygwKTsKLQkJcmEg
PSAocmVnaXN0ZXJfdClfX2J1aWx0aW5fcmV0dXJuX2FkZHJlc3MoMCk7CisJCXNwID0gKHJlZ2lz
dGVyX3QpKGludHB0cl90KV9fYnVpbHRpbl9mcmFtZV9hZGRyZXNzKDApOworCQlyYSA9IChyZWdp
c3Rlcl90KShpbnRwdHJfdClfX2J1aWx0aW5fcmV0dXJuX2FkZHJlc3MoMCk7CiAKICAgICAgICAg
CV9fYXNtIF9fdm9sYXRpbGUoCiAJCQkiamFsIDk5ZlxuIgo=
--e0cb4e887bc147afa7048af3a8ca--



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?AANLkTik8fBlxMyZ3AZETF_7DvlSpPsx2hozIWinRy0U0>