Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 28 Mar 1999 17:43:45 -0800 (PST)
From:      Julian Elischer <julian@whistle.com>
To:        Alfred Perlstein <bright@rush.net>
Cc:        hackers@FreeBSD.ORG, mckusick@mckusick.com
Subject:   Re: serial console AND remote gdb possible? 
Message-ID:  <Pine.BSF.4.05.9903281515540.254-200000@s204m82.isp.whistle.com>
In-Reply-To: <Pine.BSF.3.96.990328074346.4169i-100000@cygnus.rush.net>

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-1692368948-922671825=:254
Content-Type: TEXT/PLAIN; charset=US-ASCII



Here's a patch that compiles cleanly, but that I can't check here (no 2nd
machine at home). It purports to add support for running gdb out a
different sio port from the one the console is running out.

Select the port by adding 0x80 to the flags for that port.
If no port is so selected it will default to the serial console.

The gdb speed can be set with the definition of GDB_BAUD
or after booting, with sysctl machdep.gdbspeed


let me know how this works as I'm flying blind on this one..
:-)

julian






On Sun, 28 Mar 1999, Alfred Perlstein wrote:

> On Sun, 28 Mar 1999, Julian Elischer wrote:
> 
> > On Sat, 27 Mar 1999, Jordan K. Hubbard wrote:
> > 
> > > > I've been trying several combinations of flags to get 
> > > > one serial port to be my DDB/system console and 
> > > > the other to be my remote GDB port.
> > > 
> > > ddb/gdb go on the same port - you can't split functionalty along those
> > > lines.
> > > 
> > > - Jordan
> > > 
> > > 
> > > To Unsubscribe: send mail to majordomo@FreeBSD.org
> > > with "unsubscribe freebsd-hackers" in the body of the message
> > Well that's true for now, but kirk and I have been thinking about being
> > able to specify a separate port for gdb..
> > 
> > in fact I think he may be working on it this weekend..
> > if not I may do it next week.
> 
> Please just give me a spec on how you want to specify which port,
> what i'm going to try is setting the port via flags, and perhaps
> a variable passed in for the bootloeader.
> 
> Should have this done by tonight.
> 
> -Alfred
> 
> 
> 

--0-1692368948-922671825=:254
Content-Type: TEXT/PLAIN; charset=US-ASCII; name="sio_gdb.diff"
Content-Transfer-Encoding: BASE64
Content-ID: <Pine.BSF.4.05.9903281743450.254@s204m82.isp.whistle.com>
Content-Description: 
Content-Disposition: attachment; filename="sio_gdb.diff"

SW5kZXg6IHNpby5jDQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09DQpSQ1MgZmls
ZTogL2N2cy9mcmVlYnNkL3NyYy9zeXMvaTM4Ni9pc2Evc2lvLmMsdg0KcmV0
cmlldmluZyByZXZpc2lvbiAxLjIyOQ0KZGlmZiAtYyAtcjEuMjI5IHNpby5j
DQoqKiogc2lvLmMJMTk5OS8wMy8wMyAxNDozODowNwkxLjIyOQ0KLS0tIHNp
by5jCTE5OTkvMDMvMjkgMDE6MzU6NDENCioqKioqKioqKioqKioqKg0KKioq
IDEzMSwxMzcgKioqKg0KICANCiAgI2RlZmluZQlDT01fQ09OU09MRShkZXYp
CSgoZGV2KS0+aWRfZmxhZ3MgJiAweDEwKQ0KICAjZGVmaW5lCUNPTV9GT1JD
RUNPTlNPTEUoZGV2KQkoKGRldiktPmlkX2ZsYWdzICYgMHgyMCkNCiEgI2Rl
ZmluZQlDT01fTExDT05TT0xFKGRldikJKChkZXYpLT5pZF9mbGFncyAmIDB4
NDApDQogICNkZWZpbmUJQ09NX0xPU0VTT1VUSU5UUyhkZXYpCSgoZGV2KS0+
aWRfZmxhZ3MgJiAweDA4KQ0KICAjZGVmaW5lCUNPTV9OT0ZJRk8oZGV2KQkJ
KChkZXYpLT5pZF9mbGFncyAmIDB4MDIpDQogICNkZWZpbmUgQ09NX1NUMTY2
NTBBKGRldikJKChkZXYpLT5pZF9mbGFncyAmIDB4MjAwMDApDQotLS0gMTMx
LDEzOCAtLS0tDQogIA0KICAjZGVmaW5lCUNPTV9DT05TT0xFKGRldikJKChk
ZXYpLT5pZF9mbGFncyAmIDB4MTApDQogICNkZWZpbmUJQ09NX0ZPUkNFQ09O
U09MRShkZXYpCSgoZGV2KS0+aWRfZmxhZ3MgJiAweDIwKQ0KISAjZGVmaW5l
CUNPTV9MTENPTlNPTEUoZGV2KQkoKGRldiktPmlkX2ZsYWdzICYgMHg0MCkg
LyogZG9uJ3QgcHJvYmUgKi8NCiEgI2RlZmluZQlDT01fREVCVUdHRVIoZGV2
KQkoKGRldiktPmlkX2ZsYWdzICYgMHg4MCkgLyogZGVidWdnZXIgaGVyZSAq
Lw0KICAjZGVmaW5lCUNPTV9MT1NFU09VVElOVFMoZGV2KQkoKGRldiktPmlk
X2ZsYWdzICYgMHgwOCkNCiAgI2RlZmluZQlDT01fTk9GSUZPKGRldikJCSgo
ZGV2KS0+aWRfZmxhZ3MgJiAweDAyKQ0KICAjZGVmaW5lIENPTV9TVDE2NjUw
QShkZXYpCSgoZGV2KS0+aWRfZmxhZ3MgJiAweDIwMDAwKQ0KKioqKioqKioq
KioqKioqDQoqKiogMzM4LDM0NyAqKioqDQotLS0gMzM5LDM1NCAtLS0tDQog
IAlEX1RUWSwNCiAgfTsNCiAgDQorICNpZm5kZWYJR0RCX0JBVUQNCisgI2Rl
ZmluZSBHREJfQkFVRCBDT05TUEVFRDsNCisgI2VuZGlmDQorIA0KICBzdGF0
aWMJaW50CWNvbWNvbnNvbGUgPSAtMTsNCiAgc3RhdGljCXZvbGF0aWxlIHNw
ZWVkX3QJY29tZGVmYXVsdHJhdGUgPSBDT05TUEVFRDsNCisgc3RhdGljCXZv
bGF0aWxlIHNwZWVkX3QJY29tZ2RicmF0ZSA9IENPTlNQRUVEOw0KICBzdGF0
aWMJdV9pbnQJY29tX2V2ZW50czsJLyogaW5wdXQgY2hhcnMgKyB3ZWlnaHRl
ZCBvdXRwdXQgY29tcGxldGlvbnMgKi8NCiAgc3RhdGljCVBvcnRfdAlzaW9j
bmlvYmFzZTsNCisgc3RhdGljCVBvcnRfdAlzaW9kYmlvYmFzZTsNCiAgc3Rh
dGljCWJvb2xfdAlzaW9fcmVnaXN0ZXJlZDsNCiAgc3RhdGljCWludAlzaW9f
dGltZW91dDsNCiAgc3RhdGljCWludAlzaW9fdGltZW91dHNfdW50aWxfbG9n
Ow0KKioqKioqKioqKioqKioqDQoqKiogNDQyLDQ0NyAqKioqDQotLS0gNDQ5
LDQ3OSAtLS0tDQogIFNZU0NUTF9QUk9DKF9tYWNoZGVwLCBPSURfQVVUTywg
Y29uc3BlZWQsIENUTFRZUEVfSU5UIHwgQ1RMRkxBR19SVywNCiAgCSAgICAw
LCAwLCBzeXNjdGxfbWFjaGRlcF9jb21kZWZhdWx0cmF0ZSwgIkkiLCAiIik7
DQogIA0KKyAvKg0KKyAgKiBoYW5kbGUgc3lzY3RsIHJlYWQvd3JpdGUgcmVx
dWVzdHMgZm9yIGRlYnVnZ2VyIHNwZWVkDQorICAqIA0KKyAgKi8NCisgDQor
IHN0YXRpYyBpbnQNCisgc3lzY3RsX21hY2hkZXBfY29tZ2RicmF0ZSBTWVND
VExfSEFORExFUl9BUkdTDQorIHsNCisgCWludCBlcnJvcjsNCisgCXNwZWVk
X3QgbmV3c3BlZWQ7DQorIA0KKyAJbmV3c3BlZWQgPSBjb21nZGJyYXRlOw0K
KyANCisgCWVycm9yID0gc3lzY3RsX2hhbmRsZV9vcGFxdWUob2lkcCwgJm5l
d3NwZWVkLCBzaXplb2YgbmV3c3BlZWQsIHJlcSk7DQorIAlpZiAoZXJyb3Ig
fHwgIXJlcS0+bmV3cHRyKQ0KKyAJCXJldHVybiAoZXJyb3IpOw0KKyANCisg
CWNvbWdkYnJhdGUgPSBuZXdzcGVlZDsNCisgCXJldHVybiAoMCk7DQorIA0K
KyB9DQorIA0KKyBTWVNDVExfUFJPQyhfbWFjaGRlcCwgT0lEX0FVVE8sIGdk
YnNwZWVkLCBDVExUWVBFX0lOVCB8IENUTEZMQUdfUlcsDQorIAkgICAgMCwg
MCwgc3lzY3RsX21hY2hkZXBfY29tZ2RicmF0ZSwgIkkiLCAiIik7DQorIA0K
ICAjaWYgTkNBUkQgPiAwDQogIC8qDQogICAqCVBDLUNhcmQgKFBDTUNJQSkg
c3BlY2lmaWMgY29kZS4NCioqKioqKioqKioqKioqKg0KKioqIDYyNyw2MzMg
KioqKg0KICAJICogWFhYIHdoYXQgYWJvdXQgdGhlIFVBUlQgYnVnIGF2b2lk
ZWQgYnkgd2FpdGluZyBpbiBjb21wYXJhbSgpPw0KICAJICogV2UgZG9uJ3Qg
d2FudCB0byB0byB3YWl0IGxvbmcgZW5vdWdoIHRvIGRyYWluIGF0IDIgYnBz
Lg0KICAJICovDQohIAlpZiAoaW9iYXNlID09IHNpb2NuaW9iYXNlKQ0KICAJ
CURFTEFZKCgxNiArIDEpICogMTAwMDAwMCAvIChjb21kZWZhdWx0cmF0ZSAv
IDEwKSk7DQogIAllbHNlIHsNCiAgCQlvdXRiKGlvYmFzZSArIGNvbV9jZmNy
LCBDRkNSX0RMQUIgfCBDRkNSXzhCSVRTKTsNCi0tLSA2NTksNjY1IC0tLS0N
CiAgCSAqIFhYWCB3aGF0IGFib3V0IHRoZSBVQVJUIGJ1ZyBhdm9pZGVkIGJ5
IHdhaXRpbmcgaW4gY29tcGFyYW0oKT8NCiAgCSAqIFdlIGRvbid0IHdhbnQg
dG8gdG8gd2FpdCBsb25nIGVub3VnaCB0byBkcmFpbiBhdCAyIGJwcy4NCiAg
CSAqLw0KISAJaWYgKChpb2Jhc2UgPT0gc2lvY25pb2Jhc2UpIHx8IChpb2Jh
c2UgPT0gc2lvZGJpb2Jhc2UpKQ0KICAJCURFTEFZKCgxNiArIDEpICogMTAw
MDAwMCAvIChjb21kZWZhdWx0cmF0ZSAvIDEwKSk7DQogIAllbHNlIHsNCiAg
CQlvdXRiKGlvYmFzZSArIGNvbV9jZmNyLCBDRkNSX0RMQUIgfCBDRkNSXzhC
SVRTKTsNCioqKioqKioqKioqKioqKg0KKioqIDEzMjQsMTMzMCAqKioqDQog
IAl7DQogIAkJb3V0Yihpb2Jhc2UgKyBjb21faWVyLCAwKTsNCiAgCQl0cCA9
IGNvbS0+dHA7DQohIAkJaWYgKHRwLT50X2NmbGFnICYgSFVQQ0wNCiAgCQkg
ICAgLyoNCiAgCQkgICAgICogWFhYIHdlIHdpbGwgbWlzcyBhbnkgY2Fycmll
ciBkcm9wIGJldHdlZW4gaGVyZSBhbmQgdGhlDQogIAkJICAgICAqIG5leHQg
b3Blbi4gIFBlcmhhcHMgd2Ugc2hvdWxkIHdhdGNoIERDRCBldmVuIHdoZW4g
dGhlDQotLS0gMTM1NiwxMzYyIC0tLS0NCiAgCXsNCiAgCQlvdXRiKGlvYmFz
ZSArIGNvbV9pZXIsIDApOw0KICAJCXRwID0gY29tLT50cDsNCiEgCQlpZiAo
KHRwLT50X2NmbGFnICYgSFVQQ0wpDQogIAkJICAgIC8qDQogIAkJICAgICAq
IFhYWCB3ZSB3aWxsIG1pc3MgYW55IGNhcnJpZXIgZHJvcCBiZXR3ZWVuIGhl
cmUgYW5kIHRoZQ0KICAJCSAgICAgKiBuZXh0IG9wZW4uICBQZXJoYXBzIHdl
IHNob3VsZCB3YXRjaCBEQ0QgZXZlbiB3aGVuIHRoZQ0KKioqKioqKioqKioq
KioqDQoqKiogMTMzMiwxMzQxICoqKioNCiAgCQkgICAgICogdGhlIG5leHQg
b3BlbiBiZWNhdXNlIGl0IG1pZ2h0IGdvIHVwIGFuZCBkb3duIHdoaWxlDQog
IAkJICAgICAqIHdlJ3JlIG5vdCB3YXRjaGluZy4NCiAgCQkgICAgICovDQoh
IAkJICAgIHx8ICFjb20tPmFjdGl2ZV9vdXQNCiAgCQkgICAgICAgJiYgIShj
b20tPnByZXZfbW9kZW1fc3RhdHVzICYgTVNSX0RDRCkNCiEgCQkgICAgICAg
JiYgIShjb20tPml0X2luLmNfY2ZsYWcgJiBDTE9DQUwpDQohIAkJICAgIHx8
ICEodHAtPnRfc3RhdGUgJiBUU19JU09QRU4pKSB7DQogIAkJCSh2b2lkKWNv
bW1jdGwoY29tLCBUSU9DTV9EVFIsIERNQklDKTsNCiAgCQkJaWYgKGNvbS0+
ZHRyX3dhaXQgIT0gMCAmJiAhKGNvbS0+c3RhdGUgJiBDU19EVFJfT0ZGKSkg
ew0KICAJCQkJdGltZW91dChzaW9kdHJ3YWtldXAsIGNvbSwgY29tLT5kdHJf
d2FpdCk7DQotLS0gMTM2NCwxMzczIC0tLS0NCiAgCQkgICAgICogdGhlIG5l
eHQgb3BlbiBiZWNhdXNlIGl0IG1pZ2h0IGdvIHVwIGFuZCBkb3duIHdoaWxl
DQogIAkJICAgICAqIHdlJ3JlIG5vdCB3YXRjaGluZy4NCiAgCQkgICAgICov
DQohIAkJICAgIHx8ICghY29tLT5hY3RpdmVfb3V0DQogIAkJICAgICAgICYm
ICEoY29tLT5wcmV2X21vZGVtX3N0YXR1cyAmIE1TUl9EQ0QpDQohIAkJICAg
ICAgICYmICEoY29tLT5pdF9pbi5jX2NmbGFnICYgQ0xPQ0FMKSkNCiEgCQkg
ICAgfHwgKCEodHAtPnRfc3RhdGUgJiBUU19JU09QRU4pKSkgew0KICAJCQko
dm9pZCljb21tY3RsKGNvbSwgVElPQ01fRFRSLCBETUJJQyk7DQogIAkJCWlm
IChjb20tPmR0cl93YWl0ICE9IDAgJiYgIShjb20tPnN0YXRlICYgQ1NfRFRS
X09GRikpIHsNCiAgCQkJCXRpbWVvdXQoc2lvZHRyd2FrZXVwLCBjb20sIGNv
bS0+ZHRyX3dhaXQpOw0KKioqKioqKioqKioqKioqDQoqKiogMTk5NywyMDAz
ICoqKioNCiAgDQogIAkvKiBjaGVjayByZXF1ZXN0ZWQgcGFyYW1ldGVycyAq
Lw0KICAJZGl2aXNvciA9IHR0c3BlZWR0YWIodC0+Y19vc3BlZWQsIGNvbXNw
ZWVkdGFiKTsNCiEgCWlmIChkaXZpc29yIDwgMCB8fCBkaXZpc29yID4gMCAm
JiB0LT5jX2lzcGVlZCAhPSB0LT5jX29zcGVlZCkNCiAgCQlyZXR1cm4gKEVJ
TlZBTCk7DQogIA0KICAJLyogcGFyYW1ldGVycyBhcmUgT0ssIGNvbnZlcnQg
dGhlbSB0byB0aGUgY29tIHN0cnVjdCBhbmQgdGhlIGRldmljZSAqLw0KLS0t
IDIwMjksMjAzNSAtLS0tDQogIA0KICAJLyogY2hlY2sgcmVxdWVzdGVkIHBh
cmFtZXRlcnMgKi8NCiAgCWRpdmlzb3IgPSB0dHNwZWVkdGFiKHQtPmNfb3Nw
ZWVkLCBjb21zcGVlZHRhYik7DQohIAlpZiAoKGRpdmlzb3IgPCAwKSB8fCAo
KGRpdmlzb3IgPiAwKSAmJiAodC0+Y19pc3BlZWQgIT0gdC0+Y19vc3BlZWQp
KSkNCiAgCQlyZXR1cm4gKEVJTlZBTCk7DQogIA0KICAJLyogcGFyYW1ldGVy
cyBhcmUgT0ssIGNvbnZlcnQgdGhlbSB0byB0aGUgY29tIHN0cnVjdCBhbmQg
dGhlIGRldmljZSAqLw0KKioqKioqKioqKioqKioqDQoqKiogMjUzOSwyNTQ0
ICoqKioNCi0tLSAyNTcxLDI1NzggLS0tLQ0KICAgKi8NCiAgI2luY2x1ZGUg
PG1hY2hpbmUvY29ucy5oPg0KICANCisgI2RlZmluZSBHRVRTSU9DTkJBU0Uo
ZGV2KSAoZGV2ID8gc2lvY25pb2Jhc2UgOiBzaW9kYmlvYmFzZSkNCisgDQog
IHN0cnVjdCBzaW9jbnN0YXRlIHsNCiAgCXVfY2hhcglkbGJsOw0KICAJdV9j
aGFyCWRsYmg7DQoqKioqKioqKioqKioqKioNCioqKiAyNTQ4LDI1NTYgKioq
Kg0KICB9Ow0KICANCiAgc3RhdGljIHNwZWVkX3Qgc2lvY25nZXRzcGVlZCBf
X1AoKFBvcnRfdCwgc3RydWN0IHNwZWVkdGFiICopKTsNCiEgc3RhdGljIHZv
aWQgc2lvY25jbG9zZQlfX1AoKHN0cnVjdCBzaW9jbnN0YXRlICpzcCkpOw0K
ISBzdGF0aWMgdm9pZCBzaW9jbm9wZW4JX19QKChzdHJ1Y3Qgc2lvY25zdGF0
ZSAqc3ApKTsNCiEgc3RhdGljIHZvaWQgc2lvY250eHdhaXQJX19QKCh2b2lk
KSk7DQogIA0KICAvKg0KICAgKiBYWFg6IHNjaW9jbmdldCgpIGFuZCBzY2lv
Y25wdXRjKCkgYXJlIG5vdCBkZWNsYXJlZCBzdGF0aWMsIGFzIHRoZXkgYXJl
DQotLS0gMjU4MiwyNTkwIC0tLS0NCiAgfTsNCiAgDQogIHN0YXRpYyBzcGVl
ZF90IHNpb2NuZ2V0c3BlZWQgX19QKChQb3J0X3QsIHN0cnVjdCBzcGVlZHRh
YiAqKSk7DQohIHN0YXRpYyB2b2lkIHNpb2NuY2xvc2UJX19QKChkZXZfdCBk
ZXYsIHN0cnVjdCBzaW9jbnN0YXRlICpzcCkpOw0KISBzdGF0aWMgdm9pZCBz
aW9jbm9wZW4JX19QKChkZXZfdCBkZXYsIHN0cnVjdCBzaW9jbnN0YXRlICpz
cCkpOw0KISBzdGF0aWMgdm9pZCBzaW9jbnR4d2FpdAlfX1AoKGRldl90IGRl
dikpOw0KICANCiAgLyoNCiAgICogWFhYOiBzY2lvY25nZXQoKSBhbmQgc2Np
b2NucHV0YygpIGFyZSBub3QgZGVjbGFyZWQgc3RhdGljLCBhcyB0aGV5IGFy
ZQ0KKioqKioqKioqKioqKioqDQoqKiogMjU2NSwyNTcxICoqKioNCiAgQ09O
U19EUklWRVIoc2lvLCBzaW9jbnByb2JlLCBzaW9jbmluaXQsIHNpb2NuZ2V0
Yywgc2lvY25jaGVja2MsIHNpb2NucHV0Yyk7DQogIA0KICBzdGF0aWMgdm9p
ZA0KISBzaW9jbnR4d2FpdCgpDQogIHsNCiAgCWludAl0aW1vOw0KICANCi0t
LSAyNTk5LDI2MDYgLS0tLQ0KICBDT05TX0RSSVZFUihzaW8sIHNpb2NucHJv
YmUsIHNpb2NuaW5pdCwgc2lvY25nZXRjLCBzaW9jbmNoZWNrYywgc2lvY25w
dXRjKTsNCiAgDQogIHN0YXRpYyB2b2lkDQohIHNpb2NudHh3YWl0KGRldikN
CiEgZGV2X3QJCWRldjsNCiAgew0KICAJaW50CXRpbW87DQogIA0KKioqKioq
KioqKioqKioqDQoqKiogMjU3NSwyNTgxICoqKioNCiAgCSAqIHRyYW5zbWl0
cy4NCiAgCSAqLw0KICAJdGltbyA9IDEwMDAwMDsNCiEgCXdoaWxlICgoaW5i
KHNpb2NuaW9iYXNlICsgY29tX2xzcikgJiAoTFNSX1RTUkUgfCBMU1JfVFhS
RFkpKQ0KICAJICAgICAgICE9IChMU1JfVFNSRSB8IExTUl9UWFJEWSkgJiYg
LS10aW1vICE9IDApDQogIAkJOw0KICB9DQotLS0gMjYxMCwyNjE2IC0tLS0N
CiAgCSAqIHRyYW5zbWl0cy4NCiAgCSAqLw0KICAJdGltbyA9IDEwMDAwMDsN
CiEgCXdoaWxlICgoaW5iKEdFVFNJT0NOQkFTRShkZXYpICsgY29tX2xzcikg
JiAoTFNSX1RTUkUgfCBMU1JfVFhSRFkpKQ0KICAJICAgICAgICE9IChMU1Jf
VFNSRSB8IExTUl9UWFJEWSkgJiYgLS10aW1vICE9IDApDQogIAkJOw0KICB9
DQoqKioqKioqKioqKioqKioNCioqKiAyNjE3LDI2MjMgKioqKg0KICB9DQog
IA0KICBzdGF0aWMgdm9pZA0KISBzaW9jbm9wZW4oc3ApDQogIAlzdHJ1Y3Qg
c2lvY25zdGF0ZQkqc3A7DQogIHsNCiAgCWludAlkaXZpc29yOw0KLS0tIDI2
NTIsMjY1OSAtLS0tDQogIH0NCiAgDQogIHN0YXRpYyB2b2lkDQohIHNpb2Nu
b3BlbihkZXYsIHNwKQ0KISAJZGV2X3QJCQlkZXY7DQogIAlzdHJ1Y3Qgc2lv
Y25zdGF0ZQkqc3A7DQogIHsNCiAgCWludAlkaXZpc29yOw0KKioqKioqKioq
KioqKioqDQoqKiogMjYzMCwyNjM5ICoqKioNCiAgCSAqIGFuZCBzZXQgb3Vy
IGRlZmF1bHQgb25lcyAoY3M4IC1wYXJlbmIgc3BlZWQ9Y29tZGVmYXVsdHJh
dGUpLg0KICAJICogV2UgY2FuJ3Qgc2F2ZSB0aGUgZmlmbyByZWdpc3RlciBz
aW5jZSBpdCBpcyByZWFkLW9ubHkuDQogIAkgKi8NCiEgCWlvYmFzZSA9IHNp
b2NuaW9iYXNlOw0KICAJc3AtPmllciA9IGluYihpb2Jhc2UgKyBjb21faWVy
KTsNCiAgCW91dGIoaW9iYXNlICsgY29tX2llciwgMCk7CS8qIHNwbHR0eSgp
IGRvZXNuJ3Qgc3RvcCBzaW9pbnRyKCkgKi8NCiEgCXNpb2NudHh3YWl0KCk7
DQogIAlzcC0+Y2ZjciA9IGluYihpb2Jhc2UgKyBjb21fY2Zjcik7DQogIAlv
dXRiKGlvYmFzZSArIGNvbV9jZmNyLCBDRkNSX0RMQUIgfCBDRkNSXzhCSVRT
KTsNCiAgCXNwLT5kbGJsID0gaW5iKGlvYmFzZSArIGNvbV9kbGJsKTsNCi0t
LSAyNjY2LDI2NzUgLS0tLQ0KICAJICogYW5kIHNldCBvdXIgZGVmYXVsdCBv
bmVzIChjczggLXBhcmVuYiBzcGVlZD1jb21kZWZhdWx0cmF0ZSkuDQogIAkg
KiBXZSBjYW4ndCBzYXZlIHRoZSBmaWZvIHJlZ2lzdGVyIHNpbmNlIGl0IGlz
IHJlYWQtb25seS4NCiAgCSAqLw0KISAJaW9iYXNlID0gR0VUU0lPQ05CQVNF
KGRldik7DQogIAlzcC0+aWVyID0gaW5iKGlvYmFzZSArIGNvbV9pZXIpOw0K
ICAJb3V0Yihpb2Jhc2UgKyBjb21faWVyLCAwKTsJLyogc3BsdHR5KCkgZG9l
c24ndCBzdG9wIHNpb2ludHIoKSAqLw0KISAJc2lvY250eHdhaXQoZGV2KTsN
CiAgCXNwLT5jZmNyID0gaW5iKGlvYmFzZSArIGNvbV9jZmNyKTsNCiAgCW91
dGIoaW9iYXNlICsgY29tX2NmY3IsIENGQ1JfRExBQiB8IENGQ1JfOEJJVFMp
Ow0KICAJc3AtPmRsYmwgPSBpbmIoaW9iYXNlICsgY29tX2RsYmwpOw0KKioq
KioqKioqKioqKioqDQoqKiogMjY0NCwyNjUwICoqKioNCiAgCSAqIGRhdGEg
aW5wdXQgcmVnaXN0ZXIuICBUaGlzIGFsc28gcmVkdWNlcyB0aGUgZWZmZWN0
cyBvZiB0aGUNCiAgCSAqIFVNQzg2NjlGIGJ1Zy4NCiAgCSAqLw0KISAJZGl2
aXNvciA9IHR0c3BlZWR0YWIoY29tZGVmYXVsdHJhdGUsIGNvbXNwZWVkdGFi
KTsNCiAgCWRsYmwgPSBkaXZpc29yICYgMHhGRjsNCiAgCWlmIChzcC0+ZGxi
bCAhPSBkbGJsKQ0KICAJCW91dGIoaW9iYXNlICsgY29tX2RsYmwsIGRsYmwp
Ow0KLS0tIDI2ODAsMjY4NiAtLS0tDQogIAkgKiBkYXRhIGlucHV0IHJlZ2lz
dGVyLiAgVGhpcyBhbHNvIHJlZHVjZXMgdGhlIGVmZmVjdHMgb2YgdGhlDQog
IAkgKiBVTUM4NjY5RiBidWcuDQogIAkgKi8NCiEgCWRpdmlzb3IgPSB0dHNw
ZWVkdGFiKChkZXYgPyBjb21kZWZhdWx0cmF0ZSA6IGNvbWdkYnJhdGUpLCBj
b21zcGVlZHRhYik7DQogIAlkbGJsID0gZGl2aXNvciAmIDB4RkY7DQogIAlp
ZiAoc3AtPmRsYmwgIT0gZGxibCkNCiAgCQlvdXRiKGlvYmFzZSArIGNvbV9k
bGJsLCBkbGJsKTsNCioqKioqKioqKioqKioqKg0KKioqIDI2NjIsMjY2OCAq
KioqDQogIH0NCiAgDQogIHN0YXRpYyB2b2lkDQohIHNpb2NuY2xvc2Uoc3Ap
DQogIAlzdHJ1Y3Qgc2lvY25zdGF0ZQkqc3A7DQogIHsNCiAgCVBvcnRfdAlp
b2Jhc2U7DQotLS0gMjY5OCwyNzA1IC0tLS0NCiAgfQ0KICANCiAgc3RhdGlj
IHZvaWQNCiEgc2lvY25jbG9zZShkZXYsIHNwKQ0KISAJZGV2X3QJCQlkZXY7
DQogIAlzdHJ1Y3Qgc2lvY25zdGF0ZQkqc3A7DQogIHsNCiAgCVBvcnRfdAlp
b2Jhc2U7DQoqKioqKioqKioqKioqKioNCioqKiAyNjcwLDI2NzcgKioqKg0K
ICAJLyoNCiAgCSAqIFJlc3RvcmUgdGhlIGRldmljZSBjb250cm9sIHJlZ2lz
dGVycy4NCiAgCSAqLw0KISAJc2lvY250eHdhaXQoKTsNCiEgCWlvYmFzZSA9
IHNpb2NuaW9iYXNlOw0KICAJb3V0Yihpb2Jhc2UgKyBjb21fY2ZjciwgQ0ZD
Ul9ETEFCIHwgQ0ZDUl84QklUUyk7DQogIAlpZiAoc3AtPmRsYmwgIT0gaW5i
KGlvYmFzZSArIGNvbV9kbGJsKSkNCiAgCQlvdXRiKGlvYmFzZSArIGNvbV9k
bGJsLCBzcC0+ZGxibCk7DQotLS0gMjcwNywyNzE0IC0tLS0NCiAgCS8qDQog
IAkgKiBSZXN0b3JlIHRoZSBkZXZpY2UgY29udHJvbCByZWdpc3RlcnMuDQog
IAkgKi8NCiEgCXNpb2NudHh3YWl0KGRldik7DQohIAlpb2Jhc2UgPSBHRVRT
SU9DTkJBU0UoZGV2KTsNCiAgCW91dGIoaW9iYXNlICsgY29tX2NmY3IsIENG
Q1JfRExBQiB8IENGQ1JfOEJJVFMpOw0KICAJaWYgKHNwLT5kbGJsICE9IGlu
Yihpb2Jhc2UgKyBjb21fZGxibCkpDQogIAkJb3V0Yihpb2Jhc2UgKyBjb21f
ZGxibCwgc3AtPmRsYmwpOw0KKioqKioqKioqKioqKioqDQoqKiogMjcxMCwy
NzE5ICoqKioNCiAgCSAqIGRvbid0IG5lZWQgdG8gcHJvYmUuDQogIAkgKi8N
CiAgCWNwLT5jbl9wcmkgPSBDTl9ERUFEOw0KISAJZm9yIChkdnAgPSBpc2Ff
ZGV2dGFiX3R0eTsgZHZwLT5pZF9kcml2ZXIgIT0gTlVMTDsgZHZwKyspDQoh
IAkJaWYgKGR2cC0+aWRfZHJpdmVyID09ICZzaW9kcml2ZXIgJiYgZHZwLT5p
ZF9lbmFibGVkDQogIAkJICAgICYmIENPTV9DT05TT0xFKGR2cCkpIHsNCiAg
CQkJc2lvY25pb2Jhc2UgPSBkdnAtPmlkX2lvYmFzZTsNCiAgCQkJcyA9IHNw
bHR0eSgpOw0KICAJCQlpZiAoYm9vdGhvd3RvICYgUkJfU0VSSUFMKSB7DQog
IAkJCQlib290X3NwZWVkID0gc2lvY25nZXRzcGVlZChzaW9jbmlvYmFzZSwN
Ci0tLSAyNzQ3LDI3NjIgLS0tLQ0KICAJICogZG9uJ3QgbmVlZCB0byBwcm9i
ZS4NCiAgCSAqLw0KICAJY3AtPmNuX3ByaSA9IENOX0RFQUQ7DQohIAlmb3Ig
KGR2cCA9IGlzYV9kZXZ0YWJfdHR5OyBkdnAtPmlkX2RyaXZlciAhPSBOVUxM
OyBkdnArKykgew0KISAJCWlmICgoZHZwLT5pZF9kcml2ZXIgPT0gJnNpb2Ry
aXZlcikgJiYgKGR2cC0+aWRfZW5hYmxlZCkNCiAgCQkgICAgJiYgQ09NX0NP
TlNPTEUoZHZwKSkgew0KICAJCQlzaW9jbmlvYmFzZSA9IGR2cC0+aWRfaW9i
YXNlOw0KKyAJCQkvKiANCisgCQkJICogSWYgdGhpcyBpcyBhbHNvIHdoZXJl
IHRoZSBkZWJ1Z2VyIGdvZXMsDQorIAkJCSAqIHRoZW4gc2V0IGl0IGhlcmUg
dG8gc2F2ZSBkdXBsaWNhdGUgaW5pdGlhbGlzYXRpb25zLg0KKyAJCQkgKi8N
CisgCQkJaWYgKCBDT01fREVCVUdHRVIoZHZwKSkNCisgCQkJCXNpb2RiaW9i
YXNlID0gc2lvY25pb2Jhc2U7DQogIAkJCXMgPSBzcGx0dHkoKTsNCiAgCQkJ
aWYgKGJvb3Rob3d0byAmIFJCX1NFUklBTCkgew0KICAJCQkJYm9vdF9zcGVl
ZCA9IHNpb2NuZ2V0c3BlZWQoc2lvY25pb2Jhc2UsDQoqKioqKioqKioqKioq
KioNCioqKiAyNzM5LDI3NDUgKioqKg0KICAJCQkgICAgICh1X2ludCkgQ09N
QlJEKGNvbWRlZmF1bHRyYXRlKSA+PiA4KTsNCiAgCQkJb3V0YihzaW9jbmlv
YmFzZSArIGNvbV9jZmNyLCBjZmNyKTsNCiAgDQohIAkJCXNpb2Nub3Blbigm
c3ApOw0KICAJCQlzcGx4KHMpOw0KICAJCQlpZiAoIUNPTV9MTENPTlNPTEUo
ZHZwKSkgew0KICAJCQkJY3AtPmNuX2RldiA9IG1ha2VkZXYoQ0RFVl9NQUpP
UiwgZHZwLT5pZF91bml0KTsNCi0tLSAyNzgyLDI3ODggLS0tLQ0KICAJCQkg
ICAgICh1X2ludCkgQ09NQlJEKGNvbWRlZmF1bHRyYXRlKSA+PiA4KTsNCiAg
CQkJb3V0YihzaW9jbmlvYmFzZSArIGNvbV9jZmNyLCBjZmNyKTsNCiAgDQoh
IAkJCXNpb2Nub3BlbihtYWtlZGV2KENERVZfTUFKT1IsIGR2cC0+aWRfdW5p
dCksICZzcCk7DQogIAkJCXNwbHgocyk7DQogIAkJCWlmICghQ09NX0xMQ09O
U09MRShkdnApKSB7DQogIAkJCQljcC0+Y25fZGV2ID0gbWFrZWRldihDREVW
X01BSk9SLCBkdnAtPmlkX3VuaXQpOw0KKioqKioqKioqKioqKioqDQoqKiog
Mjc0OSwyNzU0ICoqKioNCi0tLSAyNzkyLDI4MjggLS0tLQ0KICAJCQl9DQog
IAkJCWJyZWFrOw0KICAJCX0NCisgCX0NCisgCS8qIA0KKyAJICogSWYgd2Ug
c3RpbGwgZG9uJ3QgaGF2ZSBhIGRlYnVnZ2VyIHBvcnQsDQorIAkgKiBTY2Fu
IGFsbCB0dHkgZGV2aWNlcyB0aWxsIHdlIGZpbmQgb25lIHRoYXQgd2FudHMg
dG8gYmUgdGhlDQorIAkgKiBkZWJ1Z2dlciBwb3J0LiBJZiB3ZSBkb24ndCwg
d2UnbGwgdXNlIHRoZSBjb25zb2xlIHBvcnQuDQorIAkgKi8NCisgCWlmICgh
c2lvZGJpb2Jhc2UpIHsNCisgCQlmb3IgKGR2cCA9IGlzYV9kZXZ0YWJfdHR5
OyBkdnAtPmlkX2RyaXZlciAhPSBOVUxMOyBkdnArKykgew0KKyAJCQlpZiAo
KGR2cC0+aWRfZHJpdmVyID09ICZzaW9kcml2ZXIpICYmIChkdnAtPmlkX2Vu
YWJsZWQpDQorIAkJICAgIAkmJiBDT01fREVCVUdHRVIoZHZwKSkgew0KKyAJ
CQkJc2lvZGJpb2Jhc2UgPSBkdnAtPmlkX2lvYmFzZTsNCisgCQkJCXMgPSBz
cGx0dHkoKTsNCisgCQkJCWNmY3IgPSBpbmIoc2lvZGJpb2Jhc2UgKyBjb21f
Y2Zjcik7DQorIAkJCQlvdXRiKHNpb2RiaW9iYXNlICsgY29tX2NmY3IsIENG
Q1JfRExBQiB8IGNmY3IpOw0KKyAJCQkJb3V0YihzaW9kYmlvYmFzZSArIGNv
bV9kbGJsLA0KKyAJCQkJCQlDT01CUkQoY29tZ2RicmF0ZSkgJiAweGZmKTsN
CisgCQkJCW91dGIoc2lvZGJpb2Jhc2UgKyBjb21fZGxiaCwNCisgCQkJCQko
dV9pbnQpIENPTUJSRChjb21nZGJyYXRlKSA+PiA4KTsNCisgCQkJCW91dGIo
c2lvZGJpb2Jhc2UgKyBjb21fY2ZjciwgY2Zjcik7DQorIAkJDQorIAkJCQlz
aW9jbm9wZW4obWFrZWRldigwLCAwKSwgJnNwKTsNCisgCQkJCXNwbHgocyk7
DQorIAkJCQlicmVhazsNCisgCQkJfQ0KKyAJCX0NCisgCX0NCisgCWlmICgh
c2lvZGJpb2Jhc2UpDQorIAkJc2lvZGJpb2Jhc2UgPSBzaW9jbmlvYmFzZTsN
CisgDQorIAlpZiAoc2lvZGJpb2Jhc2UgPT0gc2lvY25pb2Jhc2UpDQorIAkJ
Y29tZ2RicmF0ZSA9IGNvbWRlZmF1bHRyYXRlOw0KICB9DQogIA0KICBzdGF0
aWMgdm9pZA0KKioqKioqKioqKioqKioqDQoqKiogMjc2NywyNzgwICoqKioN
CiAgCWludAlzOw0KICAJc3RydWN0IHNpb2Nuc3RhdGUJc3A7DQogIA0KISAJ
aW9iYXNlID0gc2lvY25pb2Jhc2U7DQogIAlzID0gc3BsdHR5KCk7DQohIAlz
aW9jbm9wZW4oJnNwKTsNCiAgCWlmIChpbmIoaW9iYXNlICsgY29tX2xzcikg
JiBMU1JfUlhSRFkpDQogIAkJYyA9IGluYihpb2Jhc2UgKyBjb21fZGF0YSk7
DQogIAllbHNlDQogIAkJYyA9IC0xOw0KISAJc2lvY25jbG9zZSgmc3ApOw0K
ICAJc3BseChzKTsNCiAgCXJldHVybiAoYyk7DQogIH0NCi0tLSAyODQxLDI4
NTQgLS0tLQ0KICAJaW50CXM7DQogIAlzdHJ1Y3Qgc2lvY25zdGF0ZQlzcDsN
CiAgDQohIAlpb2Jhc2UgPSBHRVRTSU9DTkJBU0UoZGV2KTsNCiAgCXMgPSBz
cGx0dHkoKTsNCiEgCXNpb2Nub3BlbihkZXYsICZzcCk7DQogIAlpZiAoaW5i
KGlvYmFzZSArIGNvbV9sc3IpICYgTFNSX1JYUkRZKQ0KICAJCWMgPSBpbmIo
aW9iYXNlICsgY29tX2RhdGEpOw0KICAJZWxzZQ0KICAJCWMgPSAtMTsNCiEg
CXNpb2NuY2xvc2UoZGV2LCAmc3ApOw0KICAJc3BseChzKTsNCiAgCXJldHVy
biAoYyk7DQogIH0NCioqKioqKioqKioqKioqKg0KKioqIDI3ODksMjgwMSAq
KioqDQogIAlpbnQJczsNCiAgCXN0cnVjdCBzaW9jbnN0YXRlCXNwOw0KICAN
CiEgCWlvYmFzZSA9IHNpb2NuaW9iYXNlOw0KICAJcyA9IHNwbHR0eSgpOw0K
ISAJc2lvY25vcGVuKCZzcCk7DQogIAl3aGlsZSAoIShpbmIoaW9iYXNlICsg
Y29tX2xzcikgJiBMU1JfUlhSRFkpKQ0KICAJCTsNCiAgCWMgPSBpbmIoaW9i
YXNlICsgY29tX2RhdGEpOw0KISAJc2lvY25jbG9zZSgmc3ApOw0KICAJc3Bs
eChzKTsNCiAgCXJldHVybiAoYyk7DQogIH0NCi0tLSAyODYzLDI4NzUgLS0t
LQ0KICAJaW50CXM7DQogIAlzdHJ1Y3Qgc2lvY25zdGF0ZQlzcDsNCiAgDQoh
IAlpb2Jhc2UgPSBHRVRTSU9DTkJBU0UoZGV2KTsNCiAgCXMgPSBzcGx0dHko
KTsNCiEgCXNpb2Nub3BlbihkZXYsICZzcCk7DQogIAl3aGlsZSAoIShpbmIo
aW9iYXNlICsgY29tX2xzcikgJiBMU1JfUlhSRFkpKQ0KICAJCTsNCiAgCWMg
PSBpbmIoaW9iYXNlICsgY29tX2RhdGEpOw0KISAJc2lvY25jbG9zZShkZXYs
ICZzcCk7DQogIAlzcGx4KHMpOw0KICAJcmV0dXJuIChjKTsNCiAgfQ0KKioq
KioqKioqKioqKioqDQoqKiogMjgwOSwyODE4ICoqKioNCiAgCXN0cnVjdCBz
aW9jbnN0YXRlCXNwOw0KICANCiAgCXMgPSBzcGx0dHkoKTsNCiEgCXNpb2Nu
b3Blbigmc3ApOw0KISAJc2lvY250eHdhaXQoKTsNCiEgCW91dGIoc2lvY25p
b2Jhc2UgKyBjb21fZGF0YSwgYyk7DQohIAlzaW9jbmNsb3NlKCZzcCk7DQog
IAlzcGx4KHMpOw0KICB9DQogIA0KLS0tIDI4ODMsMjg5MiAtLS0tDQogIAlz
dHJ1Y3Qgc2lvY25zdGF0ZQlzcDsNCiAgDQogIAlzID0gc3BsdHR5KCk7DQoh
IAlzaW9jbm9wZW4oZGV2LCAmc3ApOw0KISAJc2lvY250eHdhaXQoZGV2KTsN
CiEgCW91dGIoR0VUU0lPQ05CQVNFKGRldikgKyBjb21fZGF0YSwgYyk7DQoh
IAlzaW9jbmNsb3NlKGRldiwgJnNwKTsNCiAgCXNwbHgocyk7DQogIH0NCiAg
DQo=
--0-1692368948-922671825=:254--


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




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