Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 8 Sep 2013 23:18:57 +0800
From:      Chenchong Qin <qinchenchong@gmail.com>
To:        Adrian Chadd <adrian@freebsd.org>
Cc:        "freebsd-wireless@freebsd.org" <freebsd-wireless@freebsd.org>
Subject:   Re: Chenchong's work on net80211_ratectl
Message-ID:  <CAFnsE3fvpjCXEC1gN46VXfPdeXG5RSVzNiJkZJiQ6xSYQFb89g@mail.gmail.com>
In-Reply-To: <CAFnsE3dm27483GVp4PRiwk=sxagT7NXQz4fmyOpth2zpCM2MwQ@mail.gmail.com>
References:  <CAFnsE3dYdPf5yGTFH683Q1Zh0mc-g%2B_YtCTraNNt28z2vBoSKw@mail.gmail.com> <CAJ-Vmom4sY7jcNwWmJkrDwfWjsok2fk8UEwTi5A=egj1JyerLw@mail.gmail.com> <CAFnsE3cyg=msBfQqqKUMmLABSL=j24VoMBwbBjxQ6b7Dyy7Mqg@mail.gmail.com> <CAJ-Vmo=k8NddAYyAJCkx4eOaA_8XsSxg6uKrdddx%2BgmeT%2BX9KA@mail.gmail.com> <CAFnsE3eaOyRcO3LXSi3L=jbzpyMv5Nt_jRGKt_mmA0WV-EV5vA@mail.gmail.com> <CAJ-VmokdxLhK5x6kO=jJzk-dv61EDK-ZgmndOimoyWWf76HiZA@mail.gmail.com> <CAJ-VmonMjR5iVTMVN9532d%2BPqOXWNUoZvxPtQir5h=yGxU-XdQ@mail.gmail.com> <CAFnsE3d9nG-X2b=z1srKfTtpxC3w5L%2B6Hg3TbOnAQrJN%2Bt19GA@mail.gmail.com> <CAJ-VmokF6hPtg9FoEdeJXLLaZRNhzd=nr_o6nHE%2BjYiQKTg3zQ@mail.gmail.com> <CAFnsE3eMwX-GiRzJt8jk4r9mxwSAQkcrDwk%2BnWVG7q6dabeA3A@mail.gmail.com> <CAJ-Vmo=mzvS0UBC7fGx2t501%2Bfioi4DJcw8qobOpbYOUiraqGg@mail.gmail.com> <CAFnsE3df=1WEuLZh5355v_K2eBgcuBbpoza74Y-5vvNupBz22A@mail.gmail.com> <CAJ-VmokyXwkKLdsJw74bux7G5EJSRvFhugTcLR9BgXfw4ysYRg@mail.gmail.com> <CAJ-VmokU=ZXysjZfAJ-REZL7kwg-_Z-LeAKca7AefONW_O1E5A@mail.gmail.com> <CAFnsE3cS_2Ad1geQQ0UB4doEgqVfhNBMi6j4fCRpFgQqcu2kJw@mail.gmail.com> <CAFnsE3eMrwpo=hcFb9XfpLL53Ppso%2B%2BXTBfpieP8FGejAKW1_w@mail.gmail.com> <CAJ-Vmo=s=0u7VO00vgzxmR7bE4aTtMrshZ3j5F312dya284V1g@mail.gmail.com> <CAFnsE3c%2BOg_2hVXO3zU7gmY4xFQjnxbv=ehJm=pbbpLJcgwJrQ@mail.gmail.com> <CAJ-Vmo=D3BNhhSn9D3x6hBry=fDecOd7BwttQ5Yw2iUKGDBN3w@mail.gmail.com> <CAFnsE3dw5bOyVRqMb9K3ME%2BHoDL61-e_XNJjjt_nRTaY=4dnhw@mail.gmail.com> <CAJ-Vmo=0tkTKQnOjrmYKqWqC%2B_nnFLqimdp06STETxLsFgxKxQ@mail.gmail.com> <CAFnsE3dm27483GVp4PRiwk=sxagT7NXQz4fmyOpth2zpCM2MwQ@mail.gmail.com>

next in thread | previous in thread | raw e-mail | index | archive | help
--047d7b5dba6866be5904e5e0ca7e
Content-Type: text/plain; charset=ISO-8859-1

Hi!

I've added the common ratectl state as an mbuf tag!

After days of frustration (compile errors, boot failed, kernel panics,
suddenly kernel freezing...), it seems that ath now can use 11n-aware
net80211 ratectl api to do rate control. Attachment[0] is the diff of
modifications to dev/ath. Changes to net80211 is minor this time. Just add
some debug msgs to it. Please reference my gsoc svn
repo<https://svnweb.freebsd.org/socsvn/soc2013/ccqin/head/>;
.

It's worth mentioning that sometimes the kernel will "freezing" (it looks
like all things stop working, screen is freezing, keyboard and mouse are
not responding) after wireless stuff start working for a while. At first, I
consider it caused by my modification to ath. But this strange thing can
also happen in a head kernel (r255382). Attachment[1] is some useful
messages just before it happens. By the way, I use a AR9227 device.

And, I found that, for aggregation scenario, ath gathers tx information and
update the ratectl states. So, what we can do to net80211 to let it support
aggregation?

Thanks!

Chenchong


On Tue, Sep 3, 2013 at 9:29 AM, Chenchong Qin <qinchenchong@gmail.com>wrote:

> OK!
>
> Thanks! :-)
>
> Chenchong
>
>
> On Tue, Sep 3, 2013 at 1:56 AM, Adrian Chadd <adrian@freebsd.org> wrote:
>
>> Hi!
>>
>> You can declare an mbuf tag and use that. Look at M_TXCB in net80211 and
>> how mbuf tags are added.
>>
>> I've long thought about adding a net80211 mbuf tag to represent -all- of
>> the tx related state - TX callback, rate control, rate completion,
>> aggregation state, retry count, etc. That way all the drivers can use it.
>>
>>
>>
>> -adrian
>>
>>
>

--047d7b5dba6866be5904e5e0ca7e
Content-Type: application/octet-stream; 
	name="20130908-net80211-ratectl-ath.diff"
Content-Disposition: attachment; 
	filename="20130908-net80211-ratectl-ath.diff"
Content-Transfer-Encoding: base64
X-Attachment-Id: f_hlcenjjb0

SW5kZXg6IGlmX2F0aC5jCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIGlmX2F0aC5jCShyZXZpc2lvbiAyNTQ4MjYp
CisrKyBpZl9hdGguYwkod29ya2luZyBjb3B5KQpAQCAtODIsNiArODIsOCBAQAogCiAjaW5jbHVk
ZSA8bmV0ODAyMTEvaWVlZTgwMjExX3Zhci5oPgogI2luY2x1ZGUgPG5ldDgwMjExL2llZWU4MDIx
MV9yZWdkb21haW4uaD4KKworI2luY2x1ZGUgPG5ldDgwMjExL2llZWU4MDIxMV9yYXRlY3RsLmg+
CiAjaWZkZWYgSUVFRTgwMjExX1NVUFBPUlRfU1VQRVJHCiAjaW5jbHVkZSA8bmV0ODAyMTEvaWVl
ZTgwMjExX3N1cGVyZy5oPgogI2VuZGlmCkBAIC0zMjIsNiArMzI0LDcgQEAKIAlzYy0+c2NfYWgg
PSBhaDsKIAlzYy0+c2NfaW52YWxpZCA9IDA7CS8qIHJlYWR5IHRvIGdvLCBlbmFibGUgaW50ZXJy
dXB0IGhhbmRsaW5nICovCiAjaWZkZWYJQVRIX0RFQlVHCisJYXRoX2RlYnVnIHw9IEFUSF9ERUJV
R19OT0RFOyAKIAlzYy0+c2NfZGVidWcgPSBhdGhfZGVidWc7CiAjZW5kaWYKIApAQCAtMTM4MCw2
ICsxMzgzLDE2IEBACiAJfQogCUFUSF9VTkxPQ0soc2MpOwogCisJdWludDMyX3QgY2FwcyA9IDA7
CisJaWYgKHNjLT5zY19tcnJldHJ5KQorCQljYXBzIHw9IElFRUU4MDIxMV9SQVRFQ1RMX0NBUF9N
UlI7CisJaWYgKHNjLT5zY19tcnJwcm90KQorCQljYXBzIHw9IElFRUU4MDIxMV9SQVRFQ1RMX0NB
UF9NUlJQUk9UOworCWlmIChzYy0+c2NfdHhjaGFpbm1hc2sgPiAxKQorCQljYXBzIHw9IElFRUU4
MDIxMV9SQVRFQ1RMX0NBUF9NVUxUWENIQUlOOworCisJaWVlZTgwMjExX3JhdGVjdGxfaW5pdCh2
YXAsIGNhcHMpOworCQogCS8qIGNvbXBsZXRlIHNldHVwICovCiAJaWVlZTgwMjExX3ZhcF9hdHRh
Y2godmFwLCBhdGhfbWVkaWFfY2hhbmdlLCBpZWVlODAyMTFfbWVkaWFfc3RhdHVzKTsKIAlyZXR1
cm4gdmFwOwpAQCAtMTQxNCw2ICsxNDI3LDcgQEAKIAkJYXRoX3N0b3ByZWN2KHNjLCAxKTsJCS8q
IHN0b3AgcmVjdiBzaWRlICovCiAJfQogCisJaWVlZTgwMjExX3JhdGVjdGxfZGVpbml0KHZhcCk7
CiAJaWVlZTgwMjExX3ZhcF9kZXRhY2godmFwKTsKIAogCS8qCkBAIC00MDQyLDYgKzQwNTYsOCBA
QAogewogCXN0cnVjdCBpZWVlODAyMTFfbm9kZSAqbmkgPSBiZi0+YmZfbm9kZTsKIAlzdHJ1Y3Qg
YXRoX25vZGUgKmFuID0gTlVMTDsKKwlzdHJ1Y3QgaWVlZTgwMjExX3JjX2luZm8gKnJjX2luZm8g
PSBOVUxMOworCXN0cnVjdCBtX3RhZyAqbXRhZzsKIAogCUFUSF9UWF9VTkxPQ0tfQVNTRVJUKHNj
KTsKIAlBVEhfVFhRX1VOTE9DS19BU1NFUlQodHhxKTsKQEAgLTQwNjgsMTAgKzQwODQsMzMgQEAK
IAkJCSAqIFhYWCBhc3N1bWUgdGhpcyBpc24ndCBhbiBhZ2dyZWdhdGUKIAkJCSAqIGZyYW1lLgog
CQkJICovCisjaWYgMAogCQkJYXRoX3R4X3VwZGF0ZV9yYXRlY3RybChzYywgbmksCiAJCQkgICAg
IGJmLT5iZl9zdGF0ZS5iZnNfcmMsIHRzLAogCQkJICAgIGJmLT5iZl9zdGF0ZS5iZnNfcGt0bGVu
LCAxLAogCQkJICAgICh0cy0+dHNfc3RhdHVzID09IDAgPyAwIDogMSkpOworI2VuZGlmCisJCQkv
KiBuZXQ4MDIxMSByYXRlY3RsICovCisJCSAgICBtdGFnID0gbV90YWdfbG9jYXRlKGJmLT5iZl9t
LCBNVEFHX0FCSV9ORVQ4MDIxMSwgCisJCQkJICAgICAgICAgICAgTkVUODAyMTFfVEFHX1JBVEVD
VEwsIE5VTEwpOworCQkJaWYgKE5VTEwgPT0gbXRhZykgeworCQkJCUlFRUU4MDIxMV9OT1RFKG5p
LT5uaV92YXAsIElFRUU4MDIxMV9NU0dfUkFURUNUTCwgbmksCisJCQkJCQkiJXM6IG5vIHJhdGVj
dGwgbWJ1ZiB0YWcgZm91bmQuXG4iLCBfX2Z1bmNfXyk7CisJCQkJc3RydWN0IGllZWU4MDIxMV9y
Y19pbmZvIHRtcF9yY19pbmZvOworCQkJCXJjX2luZm8gPSAmdG1wX3JjX2luZm87CisJCQkJYnpl
cm8ocmNfaW5mbywgc2l6ZW9mKHJjX2luZm8pKTsKKwkJCX0gZWxzZSB7CisJCQkJSUVFRTgwMjEx
X05PVEUobmktPm5pX3ZhcCwgSUVFRTgwMjExX01TR19SQVRFQ1RMLCBuaSwKKwkJCQkJCSIlczog
Zm91bmQgcmF0ZWN0bCBtYnVmIHRhZy5cbiIsIF9fZnVuY19fKTsKKwkJCQlyY19pbmZvID0gKHN0
cnVjdCBpZWVlODAyMTFfcmNfaW5mbyopKG10YWcgKyAxKTsKKwkJCX0KKwkKKwkJCWllZWU4MDIx
MV9yYXRlY3RsX3JjX2luZm9fc2V0KHJjX2luZm8sCisJCQkJCTEsICh0cy0+dHNfc3RhdHVzID09
IDAgPyAwIDogMSksIAorCQkJCQliZi0+YmZfc3RhdGUuYmZzX3BrdGxlbiwKKwkJCQkJdHMtPnRz
X3Nob3J0cmV0cnksIHRzLT50c19sb25ncmV0cnksCisJCQkJCXRzLT50c19maW5hbHRzaSwgdHMt
PnRzX3JhdGUpOworCQkJaWVlZTgwMjExX3JhdGVjdGxfdHhfY29tcGxldGUobmktPm5pX3ZhcCwg
bmksIHJjX2luZm8pOwogCQl9CiAJCWF0aF90eF9kZWZhdWx0X2NvbXAoc2MsIGJmLCAwKTsKIAl9
IGVsc2UKQEAgLTU1NzQsOSArNTYxMywxNSBAQAogCiAJYW4tPmFuX21jYXN0cml4ID0gYXRoX3R4
X2ZpbmRyaXgoc2MsIHRwLT5tY2FzdHJhdGUpOwogCWFuLT5hbl9tZ210cml4ID0gYXRoX3R4X2Zp
bmRyaXgoc2MsIHRwLT5tZ210cmF0ZSk7Ci0KKyNpZiAwCiAJYXRoX3JhdGVfbmV3YXNzb2Moc2Ms
IGFuLCBpc25ldyk7CisjZW5kaWYKIAorCURQUklOVEYoc2MsIEFUSF9ERUJVR19OT0RFLCAiJXM6
IG5ld2Fzc29jIGlzIG5ldzogJWRcbiIsCisJCQlfX2Z1bmNfXywgaXNuZXcpOworCWlmIChpc25l
dykKKwkJaWVlZTgwMjExX3JhdGVjdGxfbm9kZV9pbml0KG5pKTsKKwogCWlmIChpc25ldyAmJgog
CSAgICAodmFwLT5pdl9mbGFncyAmIElFRUU4MDIxMV9GX1BSSVZBQ1kpID09IDAgJiYgc2MtPnNj
X2hhc2NscmtleSAmJgogCSAgICBuaS0+bmlfdWNhc3RrZXkud2tfa2V5aXggPT0gSUVFRTgwMjEx
X0tFWUlYX05PTkUpCkluZGV4OiBpZl9hdGhfdHguYwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBpZl9hdGhfdHgu
YwkocmV2aXNpb24gMjU0ODI2KQorKysgaWZfYXRoX3R4LmMJKHdvcmtpbmcgY29weSkKQEAgLTcy
LDYgKzcyLDggQEAKIAogI2luY2x1ZGUgPG5ldDgwMjExL2llZWU4MDIxMV92YXIuaD4KICNpbmNs
dWRlIDxuZXQ4MDIxMS9pZWVlODAyMTFfcmVnZG9tYWluLmg+CisKKyNpbmNsdWRlIDxuZXQ4MDIx
MS9pZWVlODAyMTFfcmF0ZWN0bC5oPgogI2lmZGVmIElFRUU4MDIxMV9TVVBQT1JUX1NVUEVSRwog
I2luY2x1ZGUgPG5ldDgwMjExL2llZWU4MDIxMV9zdXBlcmcuaD4KICNlbmRpZgpAQCAtMTM4Nyw2
ICsxMzg5LDEwIEBACiBzdGF0aWMgdm9pZAogYXRoX3R4X2RvX3JhdGVsb29rdXAoc3RydWN0IGF0
aF9zb2Z0YyAqc2MsIHN0cnVjdCBhdGhfYnVmICpiZikKIHsKKwlzdHJ1Y3QgaWVlZTgwMjExX25v
ZGUgKm5pID0gYmYtPmJmX25vZGU7CisJc3RydWN0IGllZWU4MDIxMV9yY19pbmZvICpyY19pbmZv
ID0gTlVMTDsKKwlzdHJ1Y3QgaWVlZTgwMjExX3JjX3NlcmllcyAqcmMgPSBOVUxMOworCXN0cnVj
dCBtX3RhZyAqbXRhZzsKIAl1aW50OF90IHJhdGUsIHJpeDsKIAlpbnQgdHJ5MDsKIApAQCAtMTM5
NSw3ICsxNDAxLDcgQEAKIAogCS8qIEdldCByaWQgb2YgYW55IHByZXZpb3VzIHN0YXRlICovCiAJ
Ynplcm8oYmYtPmJmX3N0YXRlLmJmc19yYywgc2l6ZW9mKGJmLT5iZl9zdGF0ZS5iZnNfcmMpKTsK
LQorI2lmIDAKIAlBVEhfTk9ERV9MT0NLKEFUSF9OT0RFKGJmLT5iZl9ub2RlKSk7CiAJYXRoX3Jh
dGVfZmluZHJhdGUoc2MsIEFUSF9OT0RFKGJmLT5iZl9ub2RlKSwgYmYtPmJmX3N0YXRlLmJmc19z
aHByZWFtLAogCSAgICBiZi0+YmZfc3RhdGUuYmZzX3BrdGxlbiwgJnJpeCwgJnRyeTAsICZyYXRl
KTsKQEAgLTE0MDksNyArMTQxNSwzOSBAQAogCQlhdGhfcmF0ZV9nZXR4dHhyYXRlcyhzYywgQVRI
X05PREUoYmYtPmJmX25vZGUpLCByaXgsCiAJCSAgICBiZi0+YmZfc3RhdGUuYmZzX3JjKTsKIAlB
VEhfTk9ERV9VTkxPQ0soQVRIX05PREUoYmYtPmJmX25vZGUpKTsKKyNlbmRpZgogCisJLyogbmV0
ODAyMTEgcmF0ZWN0bCAqLworCW10YWcgPSBtX3RhZ19sb2NhdGUoYmYtPmJmX20sIE1UQUdfQUJJ
X05FVDgwMjExLCAKKwkJCU5FVDgwMjExX1RBR19SQVRFQ1RMLCBOVUxMKTsKK2FnYWluOgkKKwlp
ZiAoTlVMTCA9PSBtdGFnKSB7CisJCW10YWcgPSBtX3RhZ19hbGxvYyhNVEFHX0FCSV9ORVQ4MDIx
MSwgTkVUODAyMTFfVEFHX1JBVEVDVEwsCisJCQkJc2l6ZW9mKHN0cnVjdCBpZWVlODAyMTFfcmNf
aW5mbyksIE1fTk9XQUlUKTsKKwkJaWYgKE5VTEwgPT0gbXRhZykgeworCQkJSUVFRTgwMjExX05P
VEUobmktPm5pX3ZhcCwgSUVFRTgwMjExX01TR19SQVRFQ1RMLCBuaSwKKwkJCQkJIiVzOiBjYW4n
dCBhbGxvYyBtYnVmIHRhZyBmb3IgcmF0ZWN0bC5cbiIsIF9fZnVuY19fKTsKKwkJCWdvdG8gYWdh
aW47CisJCX0KKwl9IGVsc2UKKwkJSUVFRTgwMjExX05PVEUobmktPm5pX3ZhcCwgSUVFRTgwMjEx
X01TR19SQVRFQ1RMLCBuaSwKKwkJCQkiJXM6IG5hbmk/IGZpbmQgbWJ1ZiB0YWcgZm9yIHJhdGVj
dGwgZGlyZWN0bHkuXG4iLCBfX2Z1bmNfXyk7CisJCisJcmNfaW5mbyA9IChzdHJ1Y3QgaWVlZTgw
MjExX3JjX2luZm8qKShtdGFnICsgMSk7CisJcmMgPSByY19pbmZvLT5pcmlfcmM7CisJCisJYnpl
cm8ocmNfaW5mbywgc2l6ZW9mKHJjX2luZm8pKTsKKwlpZiAoYmYtPmJmX3N0YXRlLmJmc19zaHBy
ZWFtKQorCQlyY19pbmZvLT5pcmlfZmxhZ3MgfD0gSUVFRTgwMjExX1JBVEVDVExfSU5GT19TUDsK
KworCWllZWU4MDIxMV9yYXRlY3RsX3JhdGVzKG5pLCByY19pbmZvKTsKKworCW1fdGFnX3ByZXBl
bmQoYmYtPmJmX20sIG10YWcpOworCisJcml4ID0gcmNbMF0ucml4OworCXRyeTAgPSByY1swXS50
cmllczsKKwlyYXRlID0gbmktPm5pX3R4cmF0ZTsKKwogCXNjLT5zY190eHJpeCA9IHJpeDsJLyog
Zm9yIExFRCBibGlua2luZyAqLwogCXNjLT5zY19sYXN0ZGF0YXJpeCA9IHJpeDsJLyogZm9yIGZh
c3QgZnJhbWVzICovCiAJYmYtPmJmX3N0YXRlLmJmc190cnkwID0gdHJ5MDsKQEAgLTQwNTgsNiAr
NDA5Niw4IEBACiAJaW50IHRpZCA9IGJmLT5iZl9zdGF0ZS5iZnNfdGlkOwogCXN0cnVjdCBhdGhf
dGlkICphdGlkID0gJmFuLT5hbl90aWRbdGlkXTsKIAlzdHJ1Y3QgYXRoX3R4X3N0YXR1cyAqdHMg
PSAmYmYtPmJmX3N0YXR1cy5kc190eHN0YXQ7CisJc3RydWN0IGllZWU4MDIxMV9yY19pbmZvICpy
Y19pbmZvID0gTlVMTDsKKwlzdHJ1Y3QgbV90YWcgKm10YWc7CiAKIAkvKiBUaGUgVElEIHN0YXRl
IGlzIHByb3RlY3RlZCBiZWhpbmQgdGhlIFRYUSBsb2NrICovCiAJQVRIX1RYX0xPQ0soc2MpOwpA
QCAtNDEwOCw5ICs0MTQ4LDM1IEBACiAJICogZHVyaW5nIGEgaHcgcXVldWUgZHJhaW4gYW5kIHRo
ZSBmcmFtZSB3YW50ZWQgYW4gQUNLLgogCSAqLwogCWlmIChmYWlsID09IDAgJiYgKChiZi0+YmZf
c3RhdGUuYmZzX3R4ZmxhZ3MgJiBIQUxfVFhERVNDX05PQUNLKSA9PSAwKSkKKwl7CisjaWYgMAog
CQlhdGhfdHhfdXBkYXRlX3JhdGVjdHJsKHNjLCBuaSwgYmYtPmJmX3N0YXRlLmJmc19yYywKIAkJ
ICAgIHRzLCBiZi0+YmZfc3RhdGUuYmZzX3BrdGxlbiwKIAkJICAgIDEsICh0cy0+dHNfc3RhdHVz
ID09IDApID8gMCA6IDEpOworI2VuZGlmCisJCisJCS8qIG5ldDgwMjExIHJhdGVjdGwgKi8KKwkg
ICAgbXRhZyA9IG1fdGFnX2xvY2F0ZShiZi0+YmZfbSwgTVRBR19BQklfTkVUODAyMTEsIAorCQkJ
ICAgICAgICAgICAgTkVUODAyMTFfVEFHX1JBVEVDVEwsIE5VTEwpOworCQlpZiAoTlVMTCA9PSBt
dGFnKSB7CisJCQlJRUVFODAyMTFfTk9URShuaS0+bmlfdmFwLCBJRUVFODAyMTFfTVNHX1JBVEVD
VEwsIG5pLAorCQkJCQkiJXM6IG5vIHJhdGVjdGwgbWJ1ZiB0YWcgZm91bmQuXG4iLCBfX2Z1bmNf
Xyk7CisJCQlzdHJ1Y3QgaWVlZTgwMjExX3JjX2luZm8gdG1wX3JjX2luZm87CisJCQlyY19pbmZv
ID0gJnRtcF9yY19pbmZvOworCQkJYnplcm8ocmNfaW5mbywgc2l6ZW9mKHJjX2luZm8pKTsKKwkJ
fSBlbHNlIHsKKwkJCUlFRUU4MDIxMV9OT1RFKG5pLT5uaV92YXAsIElFRUU4MDIxMV9NU0dfUkFU
RUNUTCwgbmksCisJCQkJCSIlczogZm91bmQgcmF0ZWN0bCBtYnVmIHRhZy5cbiIsIF9fZnVuY19f
KTsKKwkJCXJjX2luZm8gPSAoc3RydWN0IGllZWU4MDIxMV9yY19pbmZvKikobXRhZyArIDEpOwor
CQl9CisJCQorCQlpZWVlODAyMTFfcmF0ZWN0bF9yY19pbmZvX3NldChyY19pbmZvLAorCQkJCTEs
ICh0cy0+dHNfc3RhdHVzID09IDAgPyAwIDogMSksIAorCQkJCWJmLT5iZl9zdGF0ZS5iZnNfcGt0
bGVuLAorCQkJCXRzLT50c19zaG9ydHJldHJ5LCB0cy0+dHNfbG9uZ3JldHJ5LAorCQkJCXRzLT50
c19maW5hbHRzaSwgdHMtPnRzX3JhdGUpOworCQlpZWVlODAyMTFfcmF0ZWN0bF90eF9jb21wbGV0
ZShuaS0+bmlfdmFwLCBuaSwgcmNfaW5mbyk7CisJfQogCiAJYXRoX3R4X2RlZmF1bHRfY29tcChz
YywgYmYsIGZhaWwpOwogfQpAQCAtNDQ3NSw2ICs0NTQxLDkgQEAKIAlpbnQgZHJvcHMgPSAwOwog
CXN0cnVjdCBpZWVlODAyMTFfdHhfYW1wZHUgKnRhcDsKIAlhdGhfYnVmaGVhZCBiZl9jcTsKKwlz
dHJ1Y3QgYXRoX3R4X3N0YXR1cyB0cyA9IGJmX2ZpcnN0LT5iZl9zdGF0dXMuZHNfdHhzdGF0Owor
CXN0cnVjdCBpZWVlODAyMTFfcmNfaW5mbyAqcmNfaW5mbyA9IE5VTEw7CisJc3RydWN0IG1fdGFn
ICptdGFnOwogCiAJVEFJTFFfSU5JVCgmYmZfcSk7CiAJVEFJTFFfSU5JVCgmYmZfY3EpOwpAQCAt
NDQ4NSwxMSArNDU1NCwzNSBAQAogCSAqIFhYWCB1c2UgdGhlIGxlbmd0aCBpbiB0aGUgZmlyc3Qg
ZnJhbWUgaW4gdGhlIHNlcmllczsKIAkgKiBYWFgganVzdCBzbyB0aGluZ3MgYXJlIGNvbnNpc3Rl
bnQgZm9yIG5vdy4KIAkgKi8KKyNpZiAwCiAJYXRoX3R4X3VwZGF0ZV9yYXRlY3RybChzYywgbmks
IGJmX2ZpcnN0LT5iZl9zdGF0ZS5iZnNfcmMsCiAJICAgICZiZl9maXJzdC0+YmZfc3RhdHVzLmRz
X3R4c3RhdCwKIAkgICAgYmZfZmlyc3QtPmJmX3N0YXRlLmJmc19wa3RsZW4sCiAJICAgIGJmX2Zp
cnN0LT5iZl9zdGF0ZS5iZnNfbmZyYW1lcywgYmZfZmlyc3QtPmJmX3N0YXRlLmJmc19uZnJhbWVz
KTsKKyNlbmRpZgorCS8qIG5ldDgwMjExIHJhdGVjdGwgKi8KKwltdGFnID0gbV90YWdfbG9jYXRl
KGJmX2ZpcnN0LT5iZl9tLCBNVEFHX0FCSV9ORVQ4MDIxMSwgCisJCQlORVQ4MDIxMV9UQUdfUkFU
RUNUTCwgTlVMTCk7CisJaWYgKE5VTEwgPT0gbXRhZykgeworCQlJRUVFODAyMTFfTk9URShuaS0+
bmlfdmFwLCBJRUVFODAyMTFfTVNHX1JBVEVDVEwsIG5pLAorCQkJCSIlczogbm8gcmF0ZWN0bCBt
YnVmIHRhZyBmb3VuZC5cbiIsIF9fZnVuY19fKTsKKwkJc3RydWN0IGllZWU4MDIxMV9yY19pbmZv
IHRtcF9yY19pbmZvOworCQlyY19pbmZvID0gJnRtcF9yY19pbmZvOworCQliemVybyhyY19pbmZv
LCBzaXplb2YocmNfaW5mbykpOworCX0gZWxzZSB7CisJCUlFRUU4MDIxMV9OT1RFKG5pLT5uaV92
YXAsIElFRUU4MDIxMV9NU0dfUkFURUNUTCwgbmksCisJCQkJIiVzOiBmb3VuZCByYXRlY3RsIG1i
dWYgdGFnLlxuIiwgX19mdW5jX18pOworCQlyY19pbmZvID0gKHN0cnVjdCBpZWVlODAyMTFfcmNf
aW5mbyopKG10YWcgKyAxKTsKKwl9CiAKKwlpZWVlODAyMTFfcmF0ZWN0bF9yY19pbmZvX3NldChy
Y19pbmZvLAorCQkJYmZfZmlyc3QtPmJmX3N0YXRlLmJmc19uZnJhbWVzLCAKKwkJCWJmX2ZpcnN0
LT5iZl9zdGF0ZS5iZnNfbmZyYW1lcywKKwkJCWJmX2ZpcnN0LT5iZl9zdGF0ZS5iZnNfcGt0bGVu
LAorCQkJdHMudHNfc2hvcnRyZXRyeSwgdHMudHNfbG9uZ3JldHJ5LAorCQkJdHMudHNfZmluYWx0
c2ksIHRzLnRzX3JhdGUpOworCWllZWU4MDIxMV9yYXRlY3RsX3R4X2NvbXBsZXRlKG5pLT5uaV92
YXAsIG5pLCByY19pbmZvKTsKKwogCUFUSF9UWF9MT0NLKHNjKTsKIAl0YXAgPSBhdGhfdHhfZ2V0
X3R4X3RpZChhbiwgdGlkLT50aWQpOwogCXNjLT5zY19zdGF0cy5hc3RfdHhfYWdncl9mYWlsYWxs
Kys7CkBAIC00NjI2LDggKzQ3MTksMTIgQEAKIAlpbnQgbmZyYW1lcyA9IDAsIG5iYWQgPSAwLCBu
ZjsKIAlpbnQgcGt0bGVuOwogCS8qIFhYWCB0aGVyZSdzIHRvbyBtdWNoIG9uIHRoZSBzdGFjaz8g
Ki8KKyNpZiAwCiAJc3RydWN0IGF0aF9yY19zZXJpZXMgcmNbQVRIX1JDX05VTV07CisjZW5kaWYK
IAlpbnQgdHhzZXE7CisJc3RydWN0IGllZWU4MDIxMV9yY19pbmZvICpyY19pbmZvID0gTlVMTDsK
KwlzdHJ1Y3QgbV90YWcgKm10YWc7CiAKIAlEUFJJTlRGKHNjLCBBVEhfREVCVUdfU1dfVFhfQUdH
UiwgIiVzOiBjYWxsZWQ7IGh3cV9kZXB0aD0lZFxuIiwKIAkgICAgX19mdW5jX18sIGF0aWQtPmh3
cV9kZXB0aCk7CkBAIC00NzQ4LDcgKzQ4NDUsNyBAQAogCWlzYWdnciA9IGJmX2ZpcnN0LT5iZl9z
dGF0ZS5iZnNfYWdncjsKIAliYVswXSA9IHRzLnRzX2JhX2xvdzsKIAliYVsxXSA9IHRzLnRzX2Jh
X2hpZ2g7Ci0KKyNpZiAwCiAJLyoKIAkgKiBDb3B5IHRoZSBUWCBjb21wbGV0aW9uIHN0YXR1cyBh
bmQgdGhlIHJhdGUgY29udHJvbAogCSAqIHNlcmllcyBmcm9tIHRoZSBmaXJzdCBkZXNjcmlwdG9y
LCBhcyBpdCBtYXkgYmUgZnJlZWQKQEAgLTQ3NTYsNiArNDg1MywxMyBAQAogCSAqIGludG8gdGhp
bmdzLgogCSAqLwogCW1lbWNweShyYywgYmZfZmlyc3QtPmJmX3N0YXRlLmJmc19yYywgc2l6ZW9m
KHJjKSk7CisjZW5kaWYKKwkvKiAKKwkgKiBHZXQgdGhlIG5ldDgwMjExIHJhdGVjdGwgbXRhZyBo
ZXJlLCBhcyBiZl9maXJzdCB3aWxsIAorCSAqIGJlIHNldCB0byBOVUxMIGxhdGVyLiAKKwkgKi8K
KwltdGFnID0gbV90YWdfbG9jYXRlKGJmX2ZpcnN0LT5iZl9tLCBNVEFHX0FCSV9ORVQ4MDIxMSwg
CisJCQlORVQ4MDIxMV9UQUdfUkFURUNUTCwgTlVMTCk7CiAKIAlEUFJJTlRGKHNjLCBBVEhfREVC
VUdfU1dfVFhfQUdHUiwKIAkgICAgIiVzOiB0eGFfc3RhcnQ9JWQsIHR4X29rPSVkLCBzdGF0dXM9
JS44eCwgZmxhZ3M9JS44eCwgIgpAQCAtNDg3Myw5ICs0OTc3LDMxIEBACiAJICogY29udHJvbCBj
b2RlLgogCSAqLwogCWlmIChmYWlsID09IDApCisJeworI2lmIDAJCiAJCWF0aF90eF91cGRhdGVf
cmF0ZWN0cmwoc2MsIG5pLCByYywgJnRzLCBwa3RsZW4sIG5mcmFtZXMsCiAJCSAgICBuYmFkKTsK
KyNlbmRpZgorCQkvKiBuZXQ4MDIxMSByYXRlY3RsICovCisJCWlmIChOVUxMID09IG10YWcpIHsK
KwkJCUlFRUU4MDIxMV9OT1RFKG5pLT5uaV92YXAsIElFRUU4MDIxMV9NU0dfUkFURUNUTCwgbmks
CisJCQkJCSIlczogbm8gcmF0ZWN0bCBtYnVmIHRhZyBmb3VuZC5cbiIsIF9fZnVuY19fKTsKKwkJ
CXN0cnVjdCBpZWVlODAyMTFfcmNfaW5mbyB0bXBfcmNfaW5mbzsKKwkJCXJjX2luZm8gPSAmdG1w
X3JjX2luZm87CisJCQliemVybyhyY19pbmZvLCBzaXplb2YocmNfaW5mbykpOworCQl9IGVsc2Ug
eworCQkJSUVFRTgwMjExX05PVEUobmktPm5pX3ZhcCwgSUVFRTgwMjExX01TR19SQVRFQ1RMLCBu
aSwKKwkJCQkJIiVzOiBmb3VuZCByYXRlY3RsIG1idWYgdGFnLlxuIiwgX19mdW5jX18pOworCQkJ
cmNfaW5mbyA9IChzdHJ1Y3QgaWVlZTgwMjExX3JjX2luZm8qKShtdGFnICsgMSk7CisJCX0KIAor
CQlpZWVlODAyMTFfcmF0ZWN0bF9yY19pbmZvX3NldChyY19pbmZvLAorCQkJCQluZnJhbWVzLCBu
YmFkLCBwa3RsZW4sCisJCQkJCXRzLnRzX3Nob3J0cmV0cnksIHRzLnRzX2xvbmdyZXRyeSwKKwkJ
CQkJdHMudHNfZmluYWx0c2ksIHRzLnRzX3JhdGUpOworCQlpZWVlODAyMTFfcmF0ZWN0bF90eF9j
b21wbGV0ZShuaS0+bmlfdmFwLCBuaSwgcmNfaW5mbyk7CisJfQorCiAJLyoKIAkgKiBzZW5kIGJh
ciBpZiB3ZSBkcm9wcGVkIGFueSBmcmFtZXMKIAkgKi8KQEAgLTQ5NDgsNiArNTA3NCw4IEBACiAJ
c3RydWN0IGF0aF90aWQgKmF0aWQgPSAmYW4tPmFuX3RpZFt0aWRdOwogCXN0cnVjdCBhdGhfdHhf
c3RhdHVzIHRzOwogCWludCBkcm9wcyA9IDA7CisJc3RydWN0IGllZWU4MDIxMV9yY19pbmZvICpy
Y19pbmZvID0gTlVMTDsKKwlzdHJ1Y3QgbV90YWcgKm10YWc7CiAKIAkvKgogCSAqIFRha2UgYSBj
b3B5IG9mIHRoaXM7IGZpbHRlcmluZy9jbG9uaW5nIHRoZSBmcmFtZSBtYXkgZnJlZSB0aGUKQEAg
LTQ5NjIsMTEgKzUwOTAsMzUgQEAKIAkgKiBEbyBpdCBvdXRzaWRlIG9mIHRoZSBUWFEgbG9jay4K
IAkgKi8KIAlpZiAoZmFpbCA9PSAwICYmICgoYmYtPmJmX3N0YXRlLmJmc190eGZsYWdzICYgSEFM
X1RYREVTQ19OT0FDSykgPT0gMCkpCisJeworI2lmIDAJCiAJCWF0aF90eF91cGRhdGVfcmF0ZWN0
cmwoc2MsIG5pLCBiZi0+YmZfc3RhdGUuYmZzX3JjLAogCQkgICAgJmJmLT5iZl9zdGF0dXMuZHNf
dHhzdGF0LAogCQkgICAgYmYtPmJmX3N0YXRlLmJmc19wa3RsZW4sCiAJCSAgICAxLCAodHMudHNf
c3RhdHVzID09IDApID8gMCA6IDEpOworI2VuZGlmCisJCW10YWcgPSBtX3RhZ19sb2NhdGUoYmYt
PmJmX20sIE1UQUdfQUJJX05FVDgwMjExLCAKKwkJCQlORVQ4MDIxMV9UQUdfUkFURUNUTCwgTlVM
TCk7CisJCQorCQlpZiAoTlVMTCA9PSBtdGFnKSB7CisJCQlJRUVFODAyMTFfTk9URShuaS0+bmlf
dmFwLCBJRUVFODAyMTFfTVNHX1JBVEVDVEwsIG5pLAorCQkJCQkiJXM6IG5vIHJhdGVjdGwgbWJ1
ZiB0YWcgZm91bmQuXG4iLCBfX2Z1bmNfXyk7CisJCQlzdHJ1Y3QgaWVlZTgwMjExX3JjX2luZm8g
dG1wX3JjX2luZm87CisJCQlyY19pbmZvID0gJnRtcF9yY19pbmZvOworCQkJYnplcm8ocmNfaW5m
bywgc2l6ZW9mKHJjX2luZm8pKTsKKwkJfSBlbHNlIHsKKwkJCUlFRUU4MDIxMV9OT1RFKG5pLT5u
aV92YXAsIElFRUU4MDIxMV9NU0dfUkFURUNUTCwgbmksCisJCQkJCSIlczogZm91bmQgcmF0ZWN0
bCBtYnVmIHRhZy5cbiIsIF9fZnVuY19fKTsKKwkJCXJjX2luZm8gPSAoc3RydWN0IGllZWU4MDIx
MV9yY19pbmZvKikobXRhZyArIDEpOworCQl9CiAKKwkJaWVlZTgwMjExX3JhdGVjdGxfcmNfaW5m
b19zZXQocmNfaW5mbywKKwkJCQkxLCAodHMudHNfc3RhdHVzID09IDAgPyAwIDogMSksIAorCQkJ
CWJmLT5iZl9zdGF0ZS5iZnNfcGt0bGVuLAorCQkJCXRzLnRzX3Nob3J0cmV0cnksIHRzLnRzX2xv
bmdyZXRyeSwKKwkJCQl0cy50c19maW5hbHRzaSwgdHMudHNfcmF0ZSk7CisJCWllZWU4MDIxMV9y
YXRlY3RsX3R4X2NvbXBsZXRlKG5pLT5uaV92YXAsIG5pLCByY19pbmZvKTsKKwl9CiAJLyoKIAkg
KiBUaGlzIGlzIGNhbGxlZCBlYXJseSBzbyBhdGlkLT5od3FfZGVwdGggY2FuIGJlIHRyYWNrZWQu
CiAJICogVGhpcyB1bmZvcnR1bmF0ZWx5IG1lYW5zIHRoYXQgaXQncyByZWxlYXNlZCBhbmQgcmVn
cmFiYmVkCkluZGV4OiBpZl9hdGhfdHhfaHQuYwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBpZl9hdGhfdHhfaHQu
YwkocmV2aXNpb24gMjU0ODI2KQorKysgaWZfYXRoX3R4X2h0LmMJKHdvcmtpbmcgY29weSkKQEAg
LTY0LDYgKzY0LDggQEAKIAogI2luY2x1ZGUgPG5ldDgwMjExL2llZWU4MDIxMV92YXIuaD4KICNp
bmNsdWRlIDxuZXQ4MDIxMS9pZWVlODAyMTFfcmVnZG9tYWluLmg+CisKKyNpbmNsdWRlIDxuZXQ4
MDIxMS9pZWVlODAyMTFfcmF0ZWN0bC5oPgogI2lmZGVmIElFRUU4MDIxMV9TVVBQT1JUX1NVUEVS
RwogI2luY2x1ZGUgPG5ldDgwMjExL2llZWU4MDIxMV9zdXBlcmcuaD4KICNlbmRpZgpAQCAtMjIx
LDEzICsyMjMsNDcgQEAKIHZvaWQKIGF0aF90eF9yYXRlX2ZpbGxfcmNmbGFncyhzdHJ1Y3QgYXRo
X3NvZnRjICpzYywgc3RydWN0IGF0aF9idWYgKmJmKQogewotCXN0cnVjdCBpZWVlODAyMTFfbm9k
ZSAqbmkgPSBiZi0+YmZfbm9kZTsKLQlzdHJ1Y3QgaWVlZTgwMjExY29tICppYyA9IG5pLT5uaV9p
YzsKKwkvLyBzdHJ1Y3QgaWVlZTgwMjExX25vZGUgKm5pID0gYmYtPmJmX25vZGU7CisJLy8gc3Ry
dWN0IGllZWU4MDIxMWNvbSAqaWMgPSBuaS0+bmlfaWM7CiAJY29uc3QgSEFMX1JBVEVfVEFCTEUg
KnJ0ID0gc2MtPnNjX2N1cnJhdGVzOwotCXN0cnVjdCBhdGhfcmNfc2VyaWVzICpyYyA9IGJmLT5i
Zl9zdGF0ZS5iZnNfcmM7CisJc3RydWN0IGF0aF9yY19zZXJpZXMgKmF0aF9yYyA9IGJmLT5iZl9z
dGF0ZS5iZnNfcmM7CisJc3RydWN0IGllZWU4MDIxMV9yY19pbmZvICpyY19pbmZvID0gTlVMTDsK
KwlzdHJ1Y3QgaWVlZTgwMjExX3JjX3NlcmllcyAqcmMgPSBOVUxMOworCXN0cnVjdCBtX3RhZyAq
bXRhZzsKIAl1aW50OF90IHJhdGU7CiAJaW50IGk7CiAKKwltdGFnID0gbV90YWdfbG9jYXRlKGJm
LT5iZl9tLCBNVEFHX0FCSV9ORVQ4MDIxMSwgCisJCQlORVQ4MDIxMV9UQUdfUkFURUNUTCwgTlVM
TCk7CisJaWYgKE5VTEwgPT0gbXRhZykKKwkJcmV0dXJuOworCisJcmNfaW5mbyA9IChzdHJ1Y3Qg
aWVlZTgwMjExX3JjX2luZm8qKShtdGFnICsgMSk7CisJcmMgPSByY19pbmZvLT5pcmlfcmM7CisK
Kwlmb3IgKGkgPSAwOyBpIDwgSUVFRTgwMjExX1JBVEVDVExfTlVNOyBpKyspIHsKKwkJaWYgKHJj
W2ldLnRyaWVzID09IDApCisJCQljb250aW51ZTsKKworCQlyYXRlID0gcnQtPmluZm9bcmNbaV0u
cml4XS5yYXRlQ29kZTsKKwkJaWYgKHJjW2ldLmZsYWdzICYgSUVFRTgwMjExX1JBVEVDVExfRkxB
R19TUCkKKwkJCXJhdGUgfD0gcnQtPmluZm9bcmNbaV0ucml4XS5zaG9ydFByZWFtYmxlOworCisJ
CXJjW2ldLnJhdGVjb2RlID0gcmF0ZTsKKworCQlhdGhfcmNbaV0ucml4ID0gcmNbaV0ucml4Owor
CQlhdGhfcmNbaV0udHJpZXMgPSByY1tpXS50cmllczsKKwkJYXRoX3JjW2ldLmZsYWdzID0gcmNb
aV0uZmxhZ3M7CisJCWF0aF9yY1tpXS5yYXRlY29kZSA9IHJjW2ldLnJhdGVjb2RlOworCQlhdGhf
cmNbaV0udHhfcG93ZXJfY2FwID0gcmNbaV0udHhfcG93ZXJfY2FwOworCQlhdGhfcmNbaV0ubWF4
NG1zZnJhbWVsZW4gPSByY1tpXS5tYXg0bXNmcmFtZWxlbjsKKwkJCisJCURQUklOVEYoc2MsIEFU
SF9ERUJVR19TV19UWF9BR0dSLAorCQkgICAgIiVzOiBpPSVkLCByYXRlPTB4JXgsIGZsYWdzPTB4
JXgsIG1heDRtcz0lZFxuIiwKKwkJICAgIF9fZnVuY19fLCBpLCByYXRlLCByY1tpXS5mbGFncywg
cmNbaV0ubWF4NG1zZnJhbWVsZW4pOworCX0KKworI2lmIDAKIAlmb3IgKGkgPSAwOyBpIDwgQVRI
X1JDX05VTTsgaSsrKSB7CiAJCXJjW2ldLmZsYWdzID0gMDsKIAkJaWYgKHJjW2ldLnRyaWVzID09
IDApCkBAIC0zMjUsNiArMzYxLDcgQEAKIAkJICAgICIlczogaT0lZCwgcmF0ZT0weCV4LCBmbGFn
cz0weCV4LCBtYXg0bXM9JWRcbiIsCiAJCSAgICBfX2Z1bmNfXywgaSwgcmF0ZSwgcmNbaV0uZmxh
Z3MsIHJjW2ldLm1heDRtc2ZyYW1lbGVuKTsKIAl9CisjZW5kaWYKIH0KIAogLyoK
--047d7b5dba6866be5904e5e0ca7e
Content-Type: application/octet-stream; name="freezing.log"
Content-Disposition: attachment; filename="freezing.log"
Content-Transfer-Encoding: base64
X-Attachment-Id: f_hlcenmmm1

CnFpbmNoZW5jaG9uZ0BmcmVlYnNkOi9ob21lL3FpbmNoZW5jaG9uZyAlCnFpbmNoZW5jaG9uZ0Bm
cmVlYnNkOi9ob21lL3FpbmNoZW5jaG9uZyAlIHN2biBpbmZvIC91c3Ivc3JjLwpQYXRoOiAvdXNy
L3NyYwpXb3JraW5nIENvcHkgUm9vdCBQYXRoOiAvdXNyL3NyYwpVUkw6IGh0dHA6Ly9zdm4uZnJl
ZWJzZC5vcmcvYmFzZS9oZWFkClJlcG9zaXRvcnkgUm9vdDogaHR0cDovL3N2bi5mcmVlYnNkLm9y
Zy9iYXNlClJlcG9zaXRvcnkgVVVJRDogY2NmOWY4NzItYWEyZS1kZDExLTlmYzgtMDAxYzIzZDBi
YzFmClJldmlzaW9uOiAyNTUzODIKTm9kZSBLaW5kOiBkaXJlY3RvcnkKU2NoZWR1bGU6IG5vcm1h
bApMYXN0IENoYW5nZWQgQXV0aG9yOiBtYXJrbQpMYXN0IENoYW5nZWQgUmV2OiAyNTUzNzkKTGFz
dCBDaGFuZ2VkIERhdGU6IDIwMTMtMDktMDggMDY6MDc6MzYgKzA4MDAgKFN1biwgMDggU2VwIDIw
MTMpCnFpbmNoZW5jaG9uZ0BmcmVlYnNkOi9ob21lL3FpbmNoZW5jaG9uZyAlCnFpbmNoZW5jaG9u
Z0BmcmVlYnNkOi9ob21lL3FpbmNoZW5jaG9uZyAlIHVuYW1lIC1hCkZyZWVCU0QgZnJlZWJzZC5x
Y2MubG9jYWwgMTAuMC1DVVJSRU5UIEZyZWVCU0QgMTAuMC1DVVJSRU5UICMyIHIyNTUzODI6IFN1
biBTZXAgIDggMTE6NTk6MzcgQ1NUIDIwMTMgICAgIHJvb3RAZnJlZWJzZC5xY2MubG9jYWw6L3Vz
ci9vYmovdXNyL3NyYy9zeXMvTVlLRVJORUwgIGFtZDY0CnFpbmNoZW5jaG9uZ0BmcmVlYnNkOi9o
b21lL3FpbmNoZW5jaG9uZyAlCnFpbmNoZW5jaG9uZ0BmcmVlYnNkOi9ob21lL3FpbmNoZW5jaG9u
ZyAlIHN1ZG8gaWZjb25maWcgd2xhbjAgY3JlYXRlIHdsYW5kZXYgYXRoMApxaW5jaGVuY2hvbmdA
ZnJlZWJzZDovaG9tZS9xaW5jaGVuY2hvbmcgJSBzdWRvIHNlcnZpY2UgbmV0aWYgc3RhcnQKaWZj
b25maWc6IGNyZWF0ZTogYmFkIHZhbHVlClN0YXJ0aW5nIE5ldHdvcms6IGxvMCBlbTAgcmUwIGF0
aDAgd2xhbjAuCmxvMDogZmxhZ3M9ODA0OTxVUCxMT09QQkFDSyxSVU5OSU5HLE1VTFRJQ0FTVD4g
bWV0cmljIDAgbXR1IDE2Mzg0CiAgICAgb3B0aW9ucz02MDAwMDM8UlhDU1VNLFRYQ1NVTSxSWENT
VU1fSVBWNixUWENTVU1fSVBWNj4KICAgICBpbmV0NiA6OjEgcHJlZml4bGVuIDEyOAogICAgIGlu
ZXQ2IGZlODA6OjElbG8wIHByZWZpeGxlbiA2NCBzY29wZWlkIDB4NAogICAgIGluZXQgMTI3LjAu
MC4xIG5ldG1hc2sgMHhmZjAwMDAwMAogICAgIG5kNiBvcHRpb25zPTIxPFBFUkZPUk1OVUQsQVVU
T19MSU5LTE9DQUw+CmVtMDogZmxhZ3M9OGMwMjxCUk9BRENBU1QsT0FDVElWRSxTSU1QTEVYLE1V
TFRJQ0FTVD4gbWV0cmljIDAgbXR1IDE1MDAKICAgICBvcHRpb25zPTQyMTliPFJYQ1NVTSxUWENT
VU0sVkxBTl9NVFUsVkxBTl9IV1RBR0dJTkcsVkxBTl9IV0NTVU0sVFNPNCxXT0xfTUFHSUMsVkxB
Tl9IV1RTTz4KICAgICBldGhlciA0NDozNzplNjo2MDpjYzpmYgogICAgIG5kNiBvcHRpb25zPTI5
PFBFUkZPUk1OVUQsSUZESVNBQkxFRCxBVVRPX0xJTktMT0NBTD4KICAgICBtZWRpYTogRXRoZXJu
ZXQgYXV0b3NlbGVjdAogICAgIHN0YXR1czogbm8gY2FycmllcgpyZTA6IGZsYWdzPTg4NDM8VVAs
QlJPQURDQVNULFJVTk5JTkcsU0lNUExFWCxNVUxUSUNBU1Q+IG1ldHJpYyAwIG10dSAxNTAwCiAg
ICAgb3B0aW9ucz04MjA5YjxSWENTVU0sVFhDU1VNLFZMQU5fTVRVLFZMQU5fSFdUQUdHSU5HLFZM
QU5fSFdDU1VNLFdPTF9NQUdJQyxMSU5LU1RBVEU+CiAgICAgZXRoZXIgMTQ6Y2Y6OTI6ZWQ6YjI6
ZmIKICAgICBpbmV0NiBmZTgwOjoxNmNmOjkyZmY6ZmVlZDpiMmZiJXJlMCBwcmVmaXhsZW4gNjQg
c2NvcGVpZCAweDIKICAgICBpbmV0NiAyMDAxOmNjMDoyMDI2OmUwMDoxNmNmOjkyZmY6ZmVlZDpi
MmZiIHByZWZpeGxlbiA2NCBhdXRvY29uZgogICAgIGluZXQgMTAuMjEuNS4yNDIgbmV0bWFzayAw
eGZmZmYwMDAwIGJyb2FkY2FzdCAxMC4yMS4yNTUuMjU1CiAgICAgbmQ2IG9wdGlvbnM9MjM8UEVS
Rk9STU5VRCxBQ0NFUFRfUlRBRFYsQVVUT19MSU5LTE9DQUw+CiAgICAgbWVkaWE6IEV0aGVybmV0
IGF1dG9zZWxlY3QgKDEwMGJhc2VUWCA8ZnVsbC1kdXBsZXg+KQogICAgIHN0YXR1czogYWN0aXZl
CmF0aDA6IGZsYWdzPTg4NDM8VVAsQlJPQURDQVNULFJVTk5JTkcsU0lNUExFWCxNVUxUSUNBU1Q+
IG1ldHJpYyAwIG10dSAyMjkwCiAgICAgZXRoZXIgMTQ6Y2Y6OTI6ZDU6NzY6ZGYKICAgICBuZDYg
b3B0aW9ucz0yOTxQRVJGT1JNTlVELElGRElTQUJMRUQsQVVUT19MSU5LTE9DQUw+CiAgICAgbWVk
aWE6IElFRUUgODAyLjExIFdpcmVsZXNzIEV0aGVybmV0IGF1dG9zZWxlY3QgbW9kZSAxMWcKICAg
ICBzdGF0dXM6IGFzc29jaWF0ZWQKd2xhbjA6IGZsYWdzPTg4NDM8VVAsQlJPQURDQVNULFJVTk5J
TkcsU0lNUExFWCxNVUxUSUNBU1Q+IG1ldHJpYyAwIG10dSAxNTAwCiAgICAgZXRoZXIgMTQ6Y2Y6
OTI6ZDU6NzY6ZGYKICAgICBpbmV0IDEwLjEyMi4wLjExNSBuZXRtYXNrIDB4ZmZmZmZjMDAgYnJv
YWRjYXN0IDEwLjEyMi4zLjI1NQogICAgIG5kNiBvcHRpb25zPTI5PFBFUkZPUk1OVUQsSUZESVNB
QkxFRCxBVVRPX0xJTktMT0NBTD4KICAgICBtZWRpYTogSUVFRSA4MDIuMTEgV2lyZWxlc3MgRXRo
ZXJuZXQgYXV0b3NlbGVjdCAoYXV0b3NlbGVjdCkKICAgICBzdGF0dXM6IG5vIGNhcnJpZXIKICAg
ICBzc2lkIElDVF9XYXZlTEFOIGNoYW5uZWwgMTEgKDI0NjIgTUh6IDExZykKICAgICByZWdkb21h
aW4gMzI5MjQgY291bnRyeSBDTiBpbmRvb3IgZWNtIGF1dGhtb2RlIE9QRU4gcHJpdmFjeSBPRkYK
ICAgICB0eHBvd2VyIDIwIGJtaXNzIDcgc2NhbnZhbGlkIDYwIHByb3Rtb2RlIENUUyB3bWUgYnVy
c3QgYmludHZhbCAyMDAKcWluY2hlbmNob25nQGZyZWVic2Q6L2hvbWUvcWluY2hlbmNob25nICUg
CgoqKiBUaGVuIGl0IGZyZWV6ZXMuIDotKAo=
--047d7b5dba6866be5904e5e0ca7e--



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