Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 21 Jun 2001 21:58:35 -0500 (CDT)
From:      Mike Silbersack <silby@silby.com>
To:        Bosko Milekic <bmilekic@technokratis.com>
Cc:        <freebsd-net@FreeBSD.ORG>
Subject:   Re: tcp template removal / scalability patch
Message-ID:  <20010621215417.K15327-200000@achilles.silby.com>
In-Reply-To: <20010619173424.A8399@technokratis.com>

next in thread | previous in thread | raw e-mail | index | archive | help
  This message is in MIME format.  The first part should be readable text,
  while the remaining parts are likely unreadable without MIME-aware tools.
  Send mail to mime@docserver.cac.washington.edu for more info.

--0-1535798151-993178715=:15327
Content-Type: TEXT/PLAIN; charset=US-ASCII


Ok, here's the updated tcp template removal patch.  It's functionally the
same, which is why I'm not including an updated -stable patch.  Also, I
did test it with IPv6, and it seems good.  No IPSEC testing, but I see no
reason why it would break if v4/v6 didn't.

What did change:

- Formatting all fixed (most of the problems were due to my hasty -stable
patch.  The -current patch was less quirky.)
- t_template has been replaced with unused in the tcpcb to make sure
nobody uses it accidently.  I renamed rather than removed it because
removal would probably break userland tools expecting the existing
structure.
- All t_templates = NULLs and checks to make sure it was null have been
removed.

I think it's ready for commit now, please review.

Thanks,

Mike "Silby" Silbersack


--0-1535798151-993178715=:15327
Content-Type: TEXT/PLAIN; charset=US-ASCII; name="tcptemplate2-current.patch"
Content-Transfer-Encoding: BASE64
Content-ID: <20010621215835.Q15327@achilles.silby.com>
Content-Description: 
Content-Disposition: attachment; filename="tcptemplate2-current.patch"

ZGlmZiAtdSAtciBuZXRpbmV0Lm9sZC90Y3BfaW5wdXQuYyBuZXRpbmV0L3Rj
cF9pbnB1dC5jDQotLS0gbmV0aW5ldC5vbGQvdGNwX2lucHV0LmMJTW9uIEp1
biAxOCAyMDo0NTowNyAyMDAxDQorKysgbmV0aW5ldC90Y3BfaW5wdXQuYwlX
ZWQgSnVuIDIwIDE1OjE3OjQzIDIwMDENCkBAIC0xMTI3LDEyICsxMTI3LDYg
QEANCiAJCX0NCiAJCUZSRUUoc2luLCBNX1NPTkFNRSk7DQogCSAgICAgIH0N
Ci0JCXRwLT50X3RlbXBsYXRlID0gdGNwX3RlbXBsYXRlKHRwKTsNCi0JCWlm
ICh0cC0+dF90ZW1wbGF0ZSA9PSAwKSB7DQotCQkJdHAgPSB0Y3BfZHJvcCh0
cCwgRU5PQlVGUyk7DQotCQkJZHJvcHNvY2tldCA9IDA7CQkvKiBzb2NrZXQg
aXMgYWxyZWFkeSBnb25lICovDQotCQkJZ290byBkcm9wOw0KLQkJfQ0KIAkJ
aWYgKCh0YW9wID0gdGNwX2dldHRhb2NhY2hlKGlucCkpID09IE5VTEwpIHsN
CiAJCQl0YW9wID0gJnRhb19ub25jYWNoZWQ7DQogCQkJYnplcm8odGFvcCwg
c2l6ZW9mKCp0YW9wKSk7DQpkaWZmIC11IC1yIG5ldGluZXQub2xkL3RjcF9v
dXRwdXQuYyBuZXRpbmV0L3RjcF9vdXRwdXQuYw0KLS0tIG5ldGluZXQub2xk
L3RjcF9vdXRwdXQuYwlNb24gSnVuIDE4IDIwOjQ1OjA3IDIwMDENCisrKyBu
ZXRpbmV0L3RjcF9vdXRwdXQuYwlUaHUgSnVuIDIxIDIxOjM3OjU3IDIwMDEN
CkBAIC02MzIsMTYgKzYzMiwxMSBAQA0KIAkJbS0+bV9sZW4gPSBoZHJsZW47
DQogCX0NCiAJbS0+bV9wa3RoZHIucmN2aWYgPSAoc3RydWN0IGlmbmV0ICop
MDsNCi0JaWYgKHRwLT50X3RlbXBsYXRlID09IDApDQotCQlwYW5pYygidGNw
X291dHB1dCIpOw0KICNpZmRlZiBJTkVUNg0KIAlpZiAoaXNpcHY2KSB7DQog
CQlpcDYgPSBtdG9kKG0sIHN0cnVjdCBpcDZfaGRyICopOw0KIAkJdGggPSAo
c3RydWN0IHRjcGhkciAqKShpcDYgKyAxKTsNCi0JCWJjb3B5KChjYWRkcl90
KXRwLT50X3RlbXBsYXRlLT50dF9pcGdlbiwgKGNhZGRyX3QpaXA2LA0KLQkJ
ICAgICAgc2l6ZW9mKHN0cnVjdCBpcDZfaGRyKSk7DQotCQliY29weSgoY2Fk
ZHJfdCkmdHAtPnRfdGVtcGxhdGUtPnR0X3QsIChjYWRkcl90KXRoLA0KLQkJ
ICAgICAgc2l6ZW9mKHN0cnVjdCB0Y3BoZHIpKTsNCisJCXRjcF9maWxsaGVh
ZGVycyh0cCwgaXA2LCB0aCk7DQogCX0gZWxzZQ0KICNlbmRpZiAvKiBJTkVU
NiAqLw0KICAgICAgIHsNCkBAIC02NDksMTAgKzY0NCw3IEBADQogCWlwb3Yg
PSAoc3RydWN0IGlwb3ZseSAqKWlwOw0KIAl0aCA9IChzdHJ1Y3QgdGNwaGRy
ICopKGlwICsgMSk7DQogCS8qIHRoaXMgcGlja3MgdXAgdGhlIHBzZXVkbyBo
ZWFkZXIgKHcvbyB0aGUgbGVuZ3RoKSAqLw0KLQliY29weSgoY2FkZHJfdCl0
cC0+dF90ZW1wbGF0ZS0+dHRfaXBnZW4sIChjYWRkcl90KWlwLA0KLQkgICAg
ICBzaXplb2Yoc3RydWN0IGlwKSk7DQotCWJjb3B5KChjYWRkcl90KSZ0cC0+
dF90ZW1wbGF0ZS0+dHRfdCwgKGNhZGRyX3QpdGgsDQotCSAgICAgIHNpemVv
ZihzdHJ1Y3QgdGNwaGRyKSk7DQorCXRjcF9maWxsaGVhZGVycyh0cCwgaXAs
IHRoKTsNCiAgICAgICB9DQogDQogCS8qDQpkaWZmIC11IC1yIG5ldGluZXQu
b2xkL3RjcF9zdWJyLmMgbmV0aW5ldC90Y3Bfc3Vici5jDQotLS0gbmV0aW5l
dC5vbGQvdGNwX3N1YnIuYwlNb24gSnVuIDE4IDIwOjQ1OjA3IDIwMDENCisr
KyBuZXRpbmV0L3RjcF9zdWJyLmMJVGh1IEp1biAyMSAyMTo0MzozOSAyMDAx
DQpAQCAtMjE4LDMxICsyMTgsMjQgQEANCiB9DQogDQogLyoNCi0gKiBDcmVh
dGUgdGVtcGxhdGUgdG8gYmUgdXNlZCB0byBzZW5kIHRjcCBwYWNrZXRzIG9u
IGEgY29ubmVjdGlvbi4NCi0gKiBDYWxsIGFmdGVyIGhvc3QgZW50cnkgY3Jl
YXRlZCwgYWxsb2NhdGVzIGFuIG1idWYgYW5kIGZpbGxzDQotICogaW4gYSBz
a2VsZXRhbCB0Y3AvaXAgaGVhZGVyLCBtaW5pbWl6aW5nIHRoZSBhbW91bnQg
b2Ygd29yaw0KLSAqIG5lY2Vzc2FyeSB3aGVuIHRoZSBjb25uZWN0aW9uIGlz
IHVzZWQuDQorICogRmlsbCBpbiB0aGUgSVAgYW5kIFRDUCBoZWFkZXJzIGZv
ciBhbiBvdXRnb2luZyBwYWNrZXQsIGdpdmVuIHRoZSB0Y3BjYi4NCisgKiB0
Y3BfdGVtcGxhdGUgdXNlZCB0byBzdG9yZSB0aGlzIGRhdGEgaW4gbWJ1ZnMs
IGJ1dCB3ZSBub3cgcmVjb3B5IGl0IG91dA0KKyAqIG9mIHRoZSB0Y3BjYiBl
YWNoIHRpbWUgdG8gY29uc2VydmUgbWJ1ZnMuDQogICovDQotc3RydWN0IHRj
cHRlbXAgKg0KLXRjcF90ZW1wbGF0ZSh0cCkNCit2b2lkDQordGNwX2ZpbGxo
ZWFkZXJzKHRwLCBpcF9wdHIsIHRjcF9wdHIpDQogCXN0cnVjdCB0Y3BjYiAq
dHA7DQorCXZvaWQgKmlwX3B0cjsNCisJdm9pZCAqdGNwX3B0cjsNCiB7DQot
CXJlZ2lzdGVyIHN0cnVjdCBpbnBjYiAqaW5wID0gdHAtPnRfaW5wY2I7DQot
CXJlZ2lzdGVyIHN0cnVjdCBtYnVmICptOw0KLQlyZWdpc3RlciBzdHJ1Y3Qg
dGNwdGVtcCAqbjsNCisJc3RydWN0IGlucGNiICppbnAgPSB0cC0+dF9pbnBj
YjsNCisJc3RydWN0IHRjcGhkciAqdGNwX2hkciA9IChzdHJ1Y3QgdGNwaGRy
ICopdGNwX3B0cjsNCiANCi0JaWYgKChuID0gdHAtPnRfdGVtcGxhdGUpID09
IDApIHsNCi0JCW0gPSBtX2dldChNX0RPTlRXQUlULCBNVF9IRUFERVIpOw0K
LQkJaWYgKG0gPT0gTlVMTCkNCi0JCQlyZXR1cm4gKDApOw0KLQkJbS0+bV9s
ZW4gPSBzaXplb2YgKHN0cnVjdCB0Y3B0ZW1wKTsNCi0JCW4gPSBtdG9kKG0s
IHN0cnVjdCB0Y3B0ZW1wICopOw0KLQl9DQogI2lmZGVmIElORVQ2DQogCWlm
ICgoaW5wLT5pbnBfdmZsYWcgJiBJTlBfSVBWNikgIT0gMCkgew0KLQkJcmVn
aXN0ZXIgc3RydWN0IGlwNl9oZHIgKmlwNjsNCisJCXN0cnVjdCBpcDZfaGRy
ICppcDY7DQogDQotCQlpcDYgPSAoc3RydWN0IGlwNl9oZHIgKiluLT50dF9p
cGdlbjsNCisJCWlwNiA9IChzdHJ1Y3QgaXA2X2hkciAqKWlwX3B0cjsNCiAJ
CWlwNi0+aXA2X2Zsb3cgPSAoaXA2LT5pcDZfZmxvdyAmIH5JUFY2X0ZMT1dJ
TkZPX01BU0spIHwNCiAJCQkoaW5wLT5pbjZwX2Zsb3dpbmZvICYgSVBWNl9G
TE9XSU5GT19NQVNLKTsNCiAJCWlwNi0+aXA2X3ZmYyA9IChpcDYtPmlwNl92
ZmMgJiB+SVBWNl9WRVJTSU9OX01BU0spIHwNCkBAIC0yNTEsMjkgKzI0NCw1
MSBAQA0KIAkJaXA2LT5pcDZfcGxlbiA9IHNpemVvZihzdHJ1Y3QgdGNwaGRy
KTsNCiAJCWlwNi0+aXA2X3NyYyA9IGlucC0+aW42cF9sYWRkcjsNCiAJCWlw
Ni0+aXA2X2RzdCA9IGlucC0+aW42cF9mYWRkcjsNCi0JCW4tPnR0X3QudGhf
c3VtID0gMDsNCisJCXRjcF9oZHItPnRoX3N1bSA9IDA7DQogCX0gZWxzZQ0K
ICNlbmRpZg0KLSAgICAgIHsNCi0Jc3RydWN0IGlwICppcCA9IChzdHJ1Y3Qg
aXAgKiluLT50dF9pcGdlbjsNCisJew0KKwlzdHJ1Y3QgaXAgKmlwID0gKHN0
cnVjdCBpcCAqKSBpcF9wdHI7DQogDQotCWJ6ZXJvKGlwLCBzaXplb2Yoc3Ry
dWN0IGlwKSk7CQkvKiBYWFggb3ZlcmtpbGw/ICovDQorCWJ6ZXJvKGlwLCBz
aXplb2Yoc3RydWN0IGlwKSk7ICAgICAgICAgICAvKiBYWFggb3ZlcmtpbGw/
ICovDQogCWlwLT5pcF92aGwgPSBJUF9WSExfQk9SSU5HOw0KIAlpcC0+aXBf
cCA9IElQUFJPVE9fVENQOw0KIAlpcC0+aXBfc3JjID0gaW5wLT5pbnBfbGFk
ZHI7DQogCWlwLT5pcF9kc3QgPSBpbnAtPmlucF9mYWRkcjsNCi0Jbi0+dHRf
dC50aF9zdW0gPSBpbl9wc2V1ZG8oaXAtPmlwX3NyYy5zX2FkZHIsIGlwLT5p
cF9kc3Quc19hZGRyLA0KLQkgICAgaHRvbnMoc2l6ZW9mKHN0cnVjdCB0Y3Bo
ZHIpICsgSVBQUk9UT19UQ1ApKTsNCi0gICAgICB9DQotCW4tPnR0X3QudGhf
c3BvcnQgPSBpbnAtPmlucF9scG9ydDsNCi0Jbi0+dHRfdC50aF9kcG9ydCA9
IGlucC0+aW5wX2Zwb3J0Ow0KLQluLT50dF90LnRoX3NlcSA9IDA7DQotCW4t
PnR0X3QudGhfYWNrID0gMDsNCi0Jbi0+dHRfdC50aF94MiA9IDA7DQotCW4t
PnR0X3QudGhfb2ZmID0gNTsNCi0Jbi0+dHRfdC50aF9mbGFncyA9IDA7DQot
CW4tPnR0X3QudGhfd2luID0gMDsNCi0Jbi0+dHRfdC50aF91cnAgPSAwOw0K
Kwl0Y3BfaGRyLT50aF9zdW0gPSBpbl9wc2V1ZG8oaXAtPmlwX3NyYy5zX2Fk
ZHIsIGlwLT5pcF9kc3Quc19hZGRyLA0KKwkJaHRvbnMoc2l6ZW9mKHN0cnVj
dCB0Y3BoZHIpICsgSVBQUk9UT19UQ1ApKTsNCisJfQ0KKw0KKwl0Y3BfaGRy
LT50aF9zcG9ydCA9IGlucC0+aW5wX2xwb3J0Ow0KKwl0Y3BfaGRyLT50aF9k
cG9ydCA9IGlucC0+aW5wX2Zwb3J0Ow0KKwl0Y3BfaGRyLT50aF9zZXEgPSAw
Ow0KKwl0Y3BfaGRyLT50aF9hY2sgPSAwOw0KKwl0Y3BfaGRyLT50aF94MiA9
IDA7DQorCXRjcF9oZHItPnRoX29mZiA9IDU7DQorCXRjcF9oZHItPnRoX2Zs
YWdzID0gMDsNCisJdGNwX2hkci0+dGhfd2luID0gMDsNCisJdGNwX2hkci0+
dGhfdXJwID0gMDsNCit9DQorDQorLyoNCisgKiBDcmVhdGUgdGVtcGxhdGUg
dG8gYmUgdXNlZCB0byBzZW5kIHRjcCBwYWNrZXRzIG9uIGEgY29ubmVjdGlv
bi4NCisgKiBBbGxvY2F0ZXMgYW4gbWJ1ZiBhbmQgZmlsbHMgaW4gYSBza2Vs
ZXRhbCB0Y3AvaXAgaGVhZGVyLiAgVGhlIG9ubHkNCisgKiB1c2UgZm9yIHRo
aXMgZnVuY3Rpb24gaXMgaW4ga2VlcGFsaXZlcywgd2hpY2ggdXNlIHRjcF9y
ZXNwb25kLg0KKyAqLw0KK3N0cnVjdCB0Y3B0ZW1wICoNCit0Y3BfbWFrZXRl
bXBsYXRlKHRwKQ0KKwlzdHJ1Y3QgdGNwY2IgKnRwOw0KK3sNCisJc3RydWN0
IG1idWYgKm07DQorCXN0cnVjdCB0Y3B0ZW1wICpuOw0KKw0KKwltID0gbV9n
ZXQoTV9ET05UV0FJVCwgTVRfSEVBREVSKTsNCisJaWYgKG0gPT0gTlVMTCkN
CisJCXJldHVybiAoMCk7DQorCW0tPm1fbGVuID0gc2l6ZW9mKHN0cnVjdCB0
Y3B0ZW1wKTsNCisJbiA9IG10b2QobSwgc3RydWN0IHRjcHRlbXAgKik7DQor
DQorCXRjcF9maWxsaGVhZGVycyh0cCwgKHZvaWQgKikmbi0+dHRfaXBnZW4s
ICh2b2lkICopJm4tPnR0X3QpOw0KIAlyZXR1cm4gKG4pOw0KIH0NCiANCkBA
IC0yODIsMTAgKzI5Nyw5IEBADQogICogdGhlIGdpdmVuIFRDUC9JUCBoZWFk
ZXIuICBJZiBtID09IDAsIHRoZW4gd2UgbWFrZSBhIGNvcHkNCiAgKiBvZiB0
aGUgdGNwaXBoZHIgYXQgdGkgYW5kIHNlbmQgZGlyZWN0bHkgdG8gdGhlIGFk
ZHJlc3NlZCBob3N0Lg0KICAqIFRoaXMgaXMgdXNlZCB0byBmb3JjZSBrZWVw
IGFsaXZlIG1lc3NhZ2VzIG91dCB1c2luZyB0aGUgVENQDQotICogdGVtcGxh
dGUgZm9yIGEgY29ubmVjdGlvbiB0cC0+dF90ZW1wbGF0ZS4gIElmIGZsYWdz
IGFyZSBnaXZlbg0KLSAqIHRoZW4gd2Ugc2VuZCBhIG1lc3NhZ2UgYmFjayB0
byB0aGUgVENQIHdoaWNoIG9yaWdpbmF0ZWQgdGhlDQotICogc2VnbWVudCB0
aSwgYW5kIGRpc2NhcmQgdGhlIG1idWYgY29udGFpbmluZyBpdCBhbmQgYW55
IG90aGVyDQotICogYXR0YWNoZWQgbWJ1ZnMuDQorICogdGVtcGxhdGUgZm9y
IGEgY29ubmVjdGlvbi4gIElmIGZsYWdzIGFyZSBnaXZlbiB0aGVuIHdlIHNl
bmQNCisgKiBhIG1lc3NhZ2UgYmFjayB0byB0aGUgVENQIHdoaWNoIG9yaWdp
bmF0ZWQgdGhlICogc2VnbWVudCB0aSwNCisgKiBhbmQgZGlzY2FyZCB0aGUg
bWJ1ZiBjb250YWluaW5nIGl0IGFuZCBhbnkgb3RoZXIgYXR0YWNoZWQgbWJ1
ZnMuDQogICoNCiAgKiBJbiBhbnkgY2FzZSB0aGUgYWNrIGFuZCBzZXF1ZW5j
ZSBudW1iZXIgb2YgdGhlIHRyYW5zbWl0dGVkDQogICogc2VnbWVudCBhcmUg
YXMgc3BlY2lmaWVkIGJ5IHRoZSBwYXJhbWV0ZXJzLg0KQEAgLTcwMSw4ICs3
MTUsNiBAQA0KIAkJbV9mcmVlbShxLT50cWVfbSk7DQogCQlGUkVFKHEsIE1f
VFNFR1EpOw0KIAl9DQotCWlmICh0cC0+dF90ZW1wbGF0ZSkNCi0JCSh2b2lk
KSBtX2ZyZWUoZHRvbSh0cC0+dF90ZW1wbGF0ZSkpOw0KIAlpbnAtPmlucF9w
cGNiID0gTlVMTDsNCiAJc29pc2Rpc2Nvbm5lY3RlZChzbyk7DQogI2lmZGVm
IElORVQ2DQpAQCAtMTMzOSw3ICsxMzUxLDcgQEANCiAjZW5kaWYgLyogSU5F
VDYgKi8NCiAJc3RydWN0IHRjcGhkciAqdGg7DQogDQotCWlmICghdHAgfHwg
IXRwLT50X3RlbXBsYXRlIHx8ICEoaW5wID0gdHAtPnRfaW5wY2IpKQ0KKwlp
ZiAoKHRwID09IE5VTEwpIHx8ICgoaW5wID0gdHAtPnRfaW5wY2IpID09IE5V
TEwpKQ0KIAkJcmV0dXJuIDA7DQogCU1HRVRIRFIobSwgTV9ET05UV0FJVCwg
TVRfREFUQSk7DQogCWlmICghbSkNCkBAIC0xMzUxLDEwICsxMzYzLDcgQEAN
CiAJCXRoID0gKHN0cnVjdCB0Y3BoZHIgKikoaXA2ICsgMSk7DQogCQltLT5t
X3BrdGhkci5sZW4gPSBtLT5tX2xlbiA9DQogCQkJc2l6ZW9mKHN0cnVjdCBp
cDZfaGRyKSArIHNpemVvZihzdHJ1Y3QgdGNwaGRyKTsNCi0JCWJjb3B5KChj
YWRkcl90KXRwLT50X3RlbXBsYXRlLT50dF9pcGdlbiwgKGNhZGRyX3QpaXA2
LA0KLQkJICAgICAgc2l6ZW9mKHN0cnVjdCBpcDZfaGRyKSk7DQotCQliY29w
eSgoY2FkZHJfdCkmdHAtPnRfdGVtcGxhdGUtPnR0X3QsIChjYWRkcl90KXRo
LA0KLQkJICAgICAgc2l6ZW9mKHN0cnVjdCB0Y3BoZHIpKTsNCisJCXRjcF9m
aWxsaGVhZGVycyh0cCwgaXA2LCB0aCk7DQogCQloZHJzaXogPSBpcHNlYzZf
aGRyc2l6KG0sIElQU0VDX0RJUl9PVVRCT1VORCwgaW5wKTsNCiAJfSBlbHNl
DQogI2VuZGlmIC8qIElORVQ2ICovDQpAQCAtMTM2MiwxMCArMTM3MSw3IEBA
DQogCWlwID0gbXRvZChtLCBzdHJ1Y3QgaXAgKik7DQogCXRoID0gKHN0cnVj
dCB0Y3BoZHIgKikoaXAgKyAxKTsNCiAJbS0+bV9wa3RoZHIubGVuID0gbS0+
bV9sZW4gPSBzaXplb2Yoc3RydWN0IHRjcGlwaGRyKTsNCi0JYmNvcHkoKGNh
ZGRyX3QpdHAtPnRfdGVtcGxhdGUtPnR0X2lwZ2VuLCAoY2FkZHJfdClpcCwN
Ci0JICAgICAgc2l6ZW9mKHN0cnVjdCBpcCkpOw0KLQliY29weSgoY2FkZHJf
dCkmdHAtPnRfdGVtcGxhdGUtPnR0X3QsIChjYWRkcl90KXRoLA0KLQkgICAg
ICBzaXplb2Yoc3RydWN0IHRjcGhkcikpOw0KKwl0Y3BfZmlsbGhlYWRlcnMo
dHAsIGlwLCB0aCk7DQogCWlwLT5pcF92aGwgPSBJUF9WSExfQk9SSU5HOw0K
IAloZHJzaXogPSBpcHNlYzRfaGRyc2l6KG0sIElQU0VDX0RJUl9PVVRCT1VO
RCwgaW5wKTsNCiAgICAgICB9DQpPbmx5IGluIG5ldGluZXQub2xkLzogdGNw
X3N1YnIuYy5uZXcNCmRpZmYgLXUgLXIgbmV0aW5ldC5vbGQvdGNwX3RpbWVy
LmMgbmV0aW5ldC90Y3BfdGltZXIuYw0KLS0tIG5ldGluZXQub2xkL3RjcF90
aW1lci5jCU1vbiBKdW4gMTggMjA6NDU6MDcgMjAwMQ0KKysrIG5ldGluZXQv
dGNwX3RpbWVyLmMJVGh1IEp1biAyMSAyMTo0Mzo1OSAyMDAxDQpAQCAtNDEs
NiArNDEsNyBAQA0KICNpbmNsdWRlIDxzeXMvcGFyYW0uaD4NCiAjaW5jbHVk
ZSA8c3lzL3N5c3RtLmg+DQogI2luY2x1ZGUgPHN5cy9rZXJuZWwuaD4NCisj
aW5jbHVkZSA8c3lzL21idWYuaD4NCiAjaW5jbHVkZSA8c3lzL3N5c2N0bC5o
Pg0KICNpbmNsdWRlIDxzeXMvc29ja2V0Lmg+DQogI2luY2x1ZGUgPHN5cy9z
b2NrZXR2YXIuaD4NCkBAIC0yMjIsNiArMjIzLDcgQEANCiAJdm9pZCAqeHRw
Ow0KIHsNCiAJc3RydWN0IHRjcGNiICp0cCA9IHh0cDsNCisJc3RydWN0IHRj
cHRlbXAgKnRfdGVtcGxhdGU7DQogCWludCBzOw0KICNpZmRlZiBUQ1BERUJV
Rw0KIAlpbnQgb3N0YXRlOw0KQEAgLTI1OSw5ICsyNjEsMTMgQEANCiAJCSAq
IGNvcnJlc3BvbmRlbnQgVENQIHRvIHJlc3BvbmQuDQogCQkgKi8NCiAJCXRj
cHN0YXQudGNwc19rZWVwcHJvYmUrKzsNCi0JCXRjcF9yZXNwb25kKHRwLCB0
cC0+dF90ZW1wbGF0ZS0+dHRfaXBnZW4sDQotCQkJICAgICZ0cC0+dF90ZW1w
bGF0ZS0+dHRfdCwgKHN0cnVjdCBtYnVmICopTlVMTCwNCi0JCQkgICAgdHAt
PnJjdl9ueHQsIHRwLT5zbmRfdW5hIC0gMSwgMCk7DQorCQl0X3RlbXBsYXRl
ID0gdGNwX21ha2V0ZW1wbGF0ZSh0cCk7DQorCQlpZiAodF90ZW1wbGF0ZSkg
ew0KKwkJCXRjcF9yZXNwb25kKHRwLCB0X3RlbXBsYXRlLT50dF9pcGdlbiwN
CisJCQkJICAgICZ0X3RlbXBsYXRlLT50dF90LCAoc3RydWN0IG1idWYgKilO
VUxMLA0KKwkJCQkgICAgdHAtPnJjdl9ueHQsIHRwLT5zbmRfdW5hIC0gMSwg
MCk7DQorCQkJKHZvaWQpIG1fZnJlZShkdG9tKHRfdGVtcGxhdGUpKTsNCisJ
CX0NCiAJCWNhbGxvdXRfcmVzZXQodHAtPnR0X2tlZXAsIHRjcF9rZWVwaW50
dmwsIHRjcF90aW1lcl9rZWVwLCB0cCk7DQogCX0gZWxzZQ0KIAkJY2FsbG91
dF9yZXNldCh0cC0+dHRfa2VlcCwgdGNwX2tlZXBpZGxlLCB0Y3BfdGltZXJf
a2VlcCwgdHApOw0KZGlmZiAtdSAtciBuZXRpbmV0Lm9sZC90Y3BfdXNycmVx
LmMgbmV0aW5ldC90Y3BfdXNycmVxLmMNCi0tLSBuZXRpbmV0Lm9sZC90Y3Bf
dXNycmVxLmMJTW9uIEp1biAxOCAyMDo0NTowNyAyMDAxDQorKysgbmV0aW5l
dC90Y3BfdXNycmVxLmMJV2VkIEp1biAyMCAxNToxODozMyAyMDAxDQpAQCAt
NzQ5LDEyICs3NDksNiBAQA0KIAlpbnAtPmlucF9mcG9ydCA9IHNpbi0+c2lu
X3BvcnQ7DQogCWluX3BjYnJlaGFzaChpbnApOw0KIA0KLQl0cC0+dF90ZW1w
bGF0ZSA9IHRjcF90ZW1wbGF0ZSh0cCk7DQotCWlmICh0cC0+dF90ZW1wbGF0
ZSA9PSAwKSB7DQotCQlpbl9wY2JkaXNjb25uZWN0KGlucCk7DQotCQlyZXR1
cm4gRU5PQlVGUzsNCi0JfQ0KLQ0KIAkvKiBDb21wdXRlIHdpbmRvdyBzY2Fs
aW5nIHRvIHJlcXVlc3QuICAqLw0KIAl3aGlsZSAodHAtPnJlcXVlc3Rfcl9z
Y2FsZSA8IFRDUF9NQVhfV0lOU0hJRlQgJiYNCiAJICAgIChUQ1BfTUFYV0lO
IDw8IHRwLT5yZXF1ZXN0X3Jfc2NhbGUpIDwgc28tPnNvX3Jjdi5zYl9oaXdh
dCkNCkBAIC04NDAsMTIgKzgzNCw2IEBADQogCWlmICgoc2luNi0+c2luNl9m
bG93aW5mbyAmIElQVjZfRkxPV0lORk9fTUFTSykgIT0gTlVMTCkNCiAJCWlu
cC0+aW42cF9mbG93aW5mbyA9IHNpbjYtPnNpbjZfZmxvd2luZm87DQogCWlu
X3BjYnJlaGFzaChpbnApOw0KLQ0KLQl0cC0+dF90ZW1wbGF0ZSA9IHRjcF90
ZW1wbGF0ZSh0cCk7DQotCWlmICh0cC0+dF90ZW1wbGF0ZSA9PSAwKSB7DQot
CQlpbjZfcGNiZGlzY29ubmVjdChpbnApOw0KLQkJcmV0dXJuIEVOT0JVRlM7
DQotCX0NCiANCiAJLyogQ29tcHV0ZSB3aW5kb3cgc2NhbGluZyB0byByZXF1
ZXN0LiAgKi8NCiAJd2hpbGUgKHRwLT5yZXF1ZXN0X3Jfc2NhbGUgPCBUQ1Bf
TUFYX1dJTlNISUZUICYmDQpkaWZmIC11IC1yIG5ldGluZXQub2xkL3RjcF92
YXIuaCBuZXRpbmV0L3RjcF92YXIuaA0KLS0tIG5ldGluZXQub2xkL3RjcF92
YXIuaAlNb24gSnVuIDE4IDIwOjQ1OjA3IDIwMDENCisrKyBuZXRpbmV0L3Rj
cF92YXIuaAlXZWQgSnVuIDIwIDE1OjE3OjMxIDIwMDENCkBAIC02Niw3ICs2
Niw3IEBADQogc3RydWN0IHRjcGNiIHsNCiAJc3RydWN0CXRzZWdxZV9oZWFk
IHRfc2VncTsNCiAJaW50CXRfZHVwYWNrczsJCS8qIGNvbnNlY3V0aXZlIGR1
cCBhY2tzIHJlY2QgKi8NCi0Jc3RydWN0CXRjcHRlbXAJKnRfdGVtcGxhdGU7
CS8qIHNrZWxldGFsIHBhY2tldCBmb3IgdHJhbnNtaXQgKi8NCisJc3RydWN0
CXRjcHRlbXAJKnVudXNlZDsJLyogdW51c2VkICovDQogDQogCXN0cnVjdAlj
YWxsb3V0ICp0dF9yZXhtdDsJLyogcmV0cmFuc21pdCB0aW1lciAqLw0KIAlz
dHJ1Y3QJY2FsbG91dCAqdHRfcGVyc2lzdDsJLyogcmV0cmFuc21pdCBwZXJz
aXN0ZW5jZSAqLw0KQEAgLTQwMCw3ICs0MDAsOCBAQA0KIHZvaWQJIHRjcF9z
ZXRwZXJzaXN0IF9fUCgoc3RydWN0IHRjcGNiICopKTsNCiB2b2lkCSB0Y3Bf
c2xvd3RpbW8gX19QKCh2b2lkKSk7DQogc3RydWN0IHRjcHRlbXAgKg0KLQkg
dGNwX3RlbXBsYXRlIF9fUCgoc3RydWN0IHRjcGNiICopKTsNCisJIHRjcF9t
YWtldGVtcGxhdGUgX19QKChzdHJ1Y3QgdGNwY2IgKikpOw0KK3ZvaWQJIHRj
cF9maWxsaGVhZGVycyBfX1AoKHN0cnVjdCB0Y3BjYiAqLCB2b2lkICosIHZv
aWQgKikpOw0KIHN0cnVjdCB0Y3BjYiAqDQogCSB0Y3BfdGltZXJzIF9fUCgo
c3RydWN0IHRjcGNiICosIGludCkpOw0KIHZvaWQJIHRjcF90cmFjZSBfX1Ao
KGludCwgaW50LCBzdHJ1Y3QgdGNwY2IgKiwgdm9pZCAqLCBzdHJ1Y3QgdGNw
aGRyICosDQo=
--0-1535798151-993178715=:15327--

To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-net" in the body of the message




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