Re: Simple patches for Linux as a guest OS in a plex86 VM (please consider)

Kevin Lawton (kevinlawton2001@yahoo.com)
Wed, 22 Jan 2003 21:11:19 -0800 (PST)


This is a MIME-formatted message. If you see this text it means that your
E-mail software does not support MIME-formatted messages.

--=_courier-30183-1043298760-0001-2
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
Content-Disposition: inline

OK, here's my re-submit of patches, after some great
clean-up/simplification ideas from Andrew Morton and Andi Kleen.

There are now no mods to any *.{c,S,h} files. Here's
a summary of the mods:

o Added 'Documentation/x86-hal.txt'
o Simple mods to 'Makefile'
o Added menu entry to 'arch/i386/Kconfig'
o Simple mod to 'arch/i386/boot/Makefile'
o Added 'include/asm-i386/if.h'

Only when compiling after enabling this new option,
the Makefile forces inclusion of the 'if.h' file, which
macro'izes the use of PUSHF/POPF instructions, substituting
a few lines of code which fix the broken-ness of such
logic when running with PVI (protected mode virtual interrupts).
No of this would be necessary if the VME (for vm86) semantics
were carried over to PVI.

Also, I'm including the 'Documentation/x86-hal.txt' to
state my case for getting these mods in sooner than later,
and to familiarize folks with what they're for. My bad,
not explaining it better the 1st time.

-Kevin

__________________________________________________
Do you Yahoo!?
New DSL Internet Access from SBC & Yahoo!
http://sbc.yahoo.com
--=_courier-30183-1043298760-0001-2
Content-Type: application/octet-stream; name="linux-2.5.59-hal.diffs"
Content-Transfer-Encoding: base64
Content-Description: linux-2.5.59-hal.diffs
Content-Disposition: attachment; filename="linux-2.5.59-hal.diffs"

ZGlmZiAtdXJOIGxpbnV4LTIuNS41OS9Eb2N1bWVudGF0aW9uL3g4Ni1oYWwu
dHh0IGxpbnV4LTIuNS41OS1oYWwvRG9jdW1lbnRhdGlvbi94ODYtaGFsLnR4
dAotLS0gbGludXgtMi41LjU5L0RvY3VtZW50YXRpb24veDg2LWhhbC50eHQJ
V2VkIERlYyAzMSAxOTowMDowMCAxOTY5CisrKyBsaW51eC0yLjUuNTktaGFs
L0RvY3VtZW50YXRpb24veDg2LWhhbC50eHQJV2VkIEphbiAyMiAxODozNzo0
NCAyMDAzCkBAIC0wLDAgKzEsMTE0IEBACit4ODYgSGFyZHdhcmUgQWJzdHJh
Y3Rpb24gTGF5ZXIKKz09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQor
CitNYWludGFpbmVkIGJ5IEtldmluIFAuIExhd3RvbiA8a2V2aW5sYXd0b24y
MDAxQHlhaG9vLmNvbT4KK0xhc3QgdXBkYXRlZDogV2VkIEphbiAyMiAxNzow
NTowNSBFU1QgMjAwMworCitUaGUgZ29hbCBvZiB0aGUgeDg2IGhhcmR3YXJl
IGFic3RyYWN0aW9uIGxheWVyIGlzIHRvIHByb3ZpZGUKK2Egd2F5IHRvIHJ1
biB0aGUgbWFpbnN0cmVhbSB4ODYgTGludXgga2VybmVsIGFzIGEgZ3Vlc3Qg
T1MsIGluCithIGxpZ2h0d2VpZ2h0IFZpcnR1YWwgTWFjaGluZSAoVk0pLCBw
cm92aWRlZCBieSBhIG5ldyBjdXQtZG93bgorcGxleDg2IHBvcnQuICBGb3Ig
cmVmZXJlbmNlLCBzZWUgdGhlIHNlY3Rpb24gb24gcGxleDg2LgorCitUaGUg
aWRlYSBiZWluZywgdG8gaGF2ZSB0aGUgYWJpbGl0eSB0byBjb25maWd1cmUv
Y29tcGlsZSB4ODYgTGludXgKKyJvdXQtb2YtdGhlLWJveCIsIGRpc2FibGlu
ZyBsb3RzIG9mIHVubmVjZXNzYXJ5IGhvc3Qtb3JpZW50ZWQKK2hhcmR3YXJl
IHN1cHBvcnQsIGFuZCBydW5uaW5nIGl0IHVucGF0Y2hlZCBpbnNpZGUgYSBz
cGVjaWFsCitWTSBjb250YWluZXIuCisKK0JlY2F1c2UgdGhlIFZNIHVuZGVy
c3RhbmRzIHRoYXQgYSBWTSdhYmxlIGd1ZXN0IE9TIGlzIHJ1bm5pbmcsCitf
bWFueV8gb2YgdGhlIGhlYXZ5IHg4NiBWTSB0ZWNobmlxdWVzIGFyZSB1bm5l
c3NhcnksIGFuZCBvbmx5Cit0aGUgY29yZSBzZXQgb2YgSU8gZnVuY3Rpb25h
bGl0eSBuZWVkcyB0byBiZSBlbXVsYXRlZDsgdGhpbmdzCitsaWtlIHRoZSBp
bnRlcnJ1cHQgY29udHJvbGxlciwgdGltZXJzLCBzdHJhaWdodCB0ZXh0LW1v
ZGUKK1ZHQSBmcmFtZSBidWZmZXIsIGFuZCBvdGhlciB0aGluZ3Mgd2hpY2gg
YXJlIHZlcnkgbGlnaHR3ZWlnaHQKK3RvIGVtdWxhdGUuICBSZWZlcmVuY2Vz
IHRvIHRoZXNlIGRldmljZXMgY2FuIGJlIGVhc2lseSBtb25pdG9yZWQKK2J5
IGEgVk0gbW9uaXRvciwgd2l0aG91dCBtb2RpZmljYXRpb24gdG8gdGhlIExp
bnV4IGtlcm5lbC4KKworVGhlIGZ1bmN0aW9uYWxpdHkgb2YgaGVhdnkgSU8g
ZGV2aWNlcyBsaWtlIGRpc2svbmV0d29yaywgYXJlCitiZXN0IGhhbmRsZWQg
YnkgZWZmaWNpZW50IGxvYWRhYmxlIGtlcm5lbCBtb2R1bGVzIGRlc2lnbmVk
IGZvcgorTGludXggYXMgYSBndWVzdC4gIFRoZXNlIG1vZHVsZXMgY2FuIGNv
bW11bmljYXRlIGEgaGFyZHdhcmUKK2Fic3RyYWN0aW9uIGxheWVyIHByb3Rv
Y29sIHRvIHRoZSBob3N0IE9TIG91dHNpZGUgdGhlIFZNCit0byBoYW5kbGUg
dGhlIElPIHdvcmtsb2FkIGluZGVwZW5kZW50bHkgYnkgdGhlIGhvc3QgT1Ms
Cit3aGljaCBpcyBsaWtlbHkgTGludXggKG9mIGNvdXJzZSEpLgorCisKK1do
eSBhIExpbnV4IFZNPworPT09PT09PT09PT09PT09CisKKyAgbyBBYmlsaXR5
IHRvIGhhdmUgbXVsdGlwbGUgTGludXggaW5zdGFsbGF0aW9ucyBvbiBvbmUg
bWFjaGluZQorICAgIGF0IHlvdXIgZGlzcG9zYWwsIHdpdGggdmFyaW91cyBz
b2Z0d2FyZSBjb25maWd1YXRpb25zLgorICAgIFRoaXMgaXMgZ3JlYXQgZm9y
IGRldmVsb3BlcnMsIGFuZCBjYWxsLWluIHN1cHBvcnQgY2VudGVycworICAg
IHdobyBuZWVkIHRvIGhhdmUgYSBtYXRyaXggb2YgT1MvYXBwbGljYXRpb24g
dmVyc2lvbnMKKyAgICBhdmFpbGFibGUuCisKKyAgbyBTZWN1cml0eS4gIFRo
ZXJlIGFyZSB0b25zIG9mIGFwcGxpY2F0aW9ucyBoZXJlLiAgRmlyZXdhbGxp
bmcKKyAgICBvZiBjZXJ0YWluIGFwcGxpY2F0aW9ucywgaG9uZXktcG90cywg
Li4uICBJJ2xsIGxldCB0aGUKKyAgICBzZWN1cml0eSBndXlzIGZpbGwgaW4g
dGhpcyBjYXRlZ29yeS4KKworICBvIFByb3Zpc2lvbmluZyBvZiBzZXJ2ZXIg
cmVzb3VyY2VzLiAgSGF2aW5nIHRoZSBhYmlsaXR5IHRvCisgICAgY29uc29s
aWRhdGUgc2VydmVycyB0byBvcHRpbWl6ZSB0aGUgdXNlIG9mIGVhY2ggQ1BV
LiAgQW5kCisgICAgdG8gZHluYW1pY2FsbHkgc3BpbiB1cCBzZXJ2ZXJzIG9u
LWRlbWFuZC4gIExvdHMgb2YKKyAgICBjb25zb2xpYXRpb24gYW5kIGxvYWQt
YmFsYW5jaW5nIHBsYXlzIGhlcmUuCisKKyAgbyBBYmlsaXR5IHRvIGxvZyBp
bnRvIGEgc3BlY2lmaWMvcGVyc29uYWwgVk0gImNvbnRleHQiCisgICAgZnJv
bSBhY3Jvc3MgdGhlIEludGVybmV0LCBidXQgdG8gaGF2ZSB0aGUgVk0gY2Vu
dHJhbGx5CisgICAgbG9jYXRlZCAoYW5kIG1haW50YWluZWQpIG9uIHNlcnZl
cnMuICBUaGUgImNvbnRleHQiCisgICAgaXMgdGhlIHBhcnRpY3VsYXIgTGlu
dXggaW5zdGFsbCB3aXRoIGFsbCBvZiB0aGUKKyAgICB1c2VyLXNwZWNpZmlj
IGZpbGVzLgorCisKK1doYXQgaXMgcGxleDg2PworPT09PT09PT09PT09PT09
CisKK1BsZXg4NiBpcyBhbiB4ODYgdmlydHVhbCBtYWNoaW5lIHByb2plY3Qu
ICBUaG91Z2ggaXQncyBhIHNlcGFyYXRlCitlbnRpdHksIGl0IGlzIGN1cnJl
bnRseSBhIHN1YmRpcmVjdG9yeSBvZiAiYm9jaHMiLCBhbiB4ODYgUEMKK2Vt
dWxhdGlvbiBwcm9qZWN0IHdoaWNoIGNhbiBiZSBmb3VuZCBvbgorCisgIGh0
dHA6Ly9ib2Nocy5zb3VyY2Vmb3JnZS5uZXQvCisKK09yaWdpbmFsbHksIHRo
ZSBnb2FscyBvZiBwbGV4ODYgd2VyZSB0byBydW4gYW55IGd1ZXN0IE9TCitp
bnNpZGUgdGhlIFZNLCB3aGljaCByZXF1aXJlZCBzb21lIGhlYXZ5IHRyaWNr
ZXJ5LiAgSQorY29tcGxldGVseSBndXR0ZWQgcGxleDg2LCBhbmQgbm93IGl0
IGlzIGFuIGluY3JlZGlibHkKK3NtYWxsIGFuZCBsaWdodHdlaWdodCB4ODYg
Vk0sIG1lYW50IHRvIHJ1biBjb2RlIHdoaWNoCitpcyAiVk0gZnJpZW5kbHki
LiAgT3IgaW4gb3RoZXIgd29yZHMsIGlmIHlvdSBkb24ndCBuZWVkIHRvCity
dW4gbm9uLUxpbnV4LCB5b3UgZG9uJ3QgbmVlZCA5OSUgb2YgdGhlIFZNIGJh
Z2dhZ2UuCisKK1BsZXg4NiBpcyBub3QgcmVhZHkgeWV0IGZvciBydW5uaW5n
IExpbnV4IGFzIGEgZ3Vlc3QsIGJ1dCBJIGRvCitoYXZlIGl0IHdvcmtpbmcg
aW4gdGFuZGVtIHdpdGggYm9jaHMgdG8gcnVuIExpbnV4IHVzZXItbGV2ZWwK
K2NvZGUgaW5zaWRlIHRoZSBWTS4KKworCitIb3cgbXVjaCBkb2VzIGl0IGNv
c3Q/Cis9PT09PT09PT09PT09PT09PT09PT09CisKK05vdGhpbmcsIGl0J3Mg
T3BlbiBTb3VyY2UuICBMaW51eCBpcyBvYnZpb3VzbHkgYSBHUEwnZCBwcm9n
cmFtLgorUGxleDg2IGlzIGFuIExHUEwnZCBrZXJuZWwgbW9kdWxlLiAgVGhv
dWdoIGl0J3MgYSBzZXBhcmF0ZQorCisKK1doYXQga2luZCBvZiBtb2RpZmlj
YXRpb25zIHRvIHRoZSBMaW51eCBrZXJuZWwgYXJlIG5lZWRlZD8KKz09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KKworVGhlIGlkZWFsIGFuc3dlciB3b3VsZCBiZSBub25lLiAg
VGhlIGdvYWwgaXMgdG8gcnVuIHRoZQorYWN0dWFsIHg4NiBjb2RlYmFzZSwg
d2l0aCB0aGUgYWltIGZvciB0aGlzIHRvIGJlIHVzYWJsZSBpbgorZW50ZXJw
cmlzZS1sZXZlbCBzZXR0aW5ncy4gIFRodXMsIGl0J3MgbXVjaCBtb3JlIGFw
cGVhbGluZworbm90IHRvIGhhdmUgbW9kaWZpY2F0aW9ucywgYnV0IHRvIGxl
dmVyYWdlIGFsbCB0aGUKK3Rlc3RpbmcgdGhhdCB0aGUgbWFpbiBjb2RlYmFz
ZSBnb2VzIHRocm91Z2guCisKK1NvIGZhciwgdGhlcmUgYXJlIGp1c3QgYSBj
b3VwbGUgeDg2IGluc3RydWN0aW9ucyB3aGljaAorY2FuIGJlIGVhc2lseSBt
YWNybydpemVkIHRvIGNoYW5nZSB0aGVpciBiZWhhdmlvdXIsIHJlbGF0aW5n
Cit0byBtYW5pcHVsYXRpb24gb2YgdGhlIGludGVycnVwdCBmbGFnLiAgVGhp
cyBpcyBkdWUgdG8KK2EgZGVmaWNpZW5jeSBpbiB0aGUgaGFuZGxpbmcgb2Yg
Y29kZSBydW5uaW5nIHdpdGggUHJvdGVjdGVkCittb2RlIFZpcnR1YWwgSW50
ZXJydXB0cyAoUFZJKS4gIFRodXMgZmFyLCB0aGUgY29kZSBpbXBhY3QKK2lz
IG9uZSBleHRyYSBoZWFkZXIgZmlsZSwgYW5kIGEgZmV3IGxpbmVzIHRvIGNv
bmRpdGlvbmFsbHkKK2luY2x1ZGUgaXQhCisKK0kgYW0gX3JlYWxseV8gaG9w
aW5nIHRoZXNlIHNtYWxsIG1vZHMgbWFrZSBpdCBpbnRvIHRoZSBtYWluCitr
ZXJuZWwgYmFzZSBiZWZvcmUgTGludXggMi42LjAuICBJIGJlbGlldmUgdGhl
cmUgd2lsbCBiZQorY29tbWVyY2lhbCB0aHJ1c3QgYmVoaW5kIHJ1bm5pbmcg
TGludXggVk1zLCBhbmQgd291bGQgbGlrZQordG8gc2VlIHRoZSBhYmlsaXR5
IHRvIGNvbXBpbGUga2VybmVsIHNvdXJjZSBpbmNsdWRlZCB3aXRoCit0aGUg
bWFqb3IgTGludXggZGlzdHJvcywgYXMtaXMgd2l0aCBubyBleHRyYSBwYXRj
aGVzLgorCitGb3Iga2VybmVsIG1vZHVsZXMgd2hpY2ggYXJlIGRldmVsb3Bl
ZCB0byBmYWNpbGl0YXRlIGEKK0xpbnV4IFZNIGNvbW11bmljYXRpbmcgSEFM
IHByb3RvY29sIHRvIHRoZSBob3N0IExpbnV4LAorSSBoYXZlIG5vIHJlbGln
aW9uLiAgVGhleSBjYW4gYmUgbWFpbnRhaW5lZCB3aGVyZXZlciBtYWtlcwor
c2Vuc2UuCisKKy1LZXZpbgpkaWZmIC11ck4gbGludXgtMi41LjU5L01ha2Vm
aWxlIGxpbnV4LTIuNS41OS1oYWwvTWFrZWZpbGUKLS0tIGxpbnV4LTIuNS41
OS9NYWtlZmlsZQlXZWQgSmFuIDIyIDEyOjI1OjU4IDIwMDMKKysrIGxpbnV4
LTIuNS41OS1oYWwvTWFrZWZpbGUJV2VkIEphbiAyMiAyMjozNjowMCAyMDAz
CkBAIC0yNjQsNiArMjY0LDE4IEBACiBDRkxBR1MJCSs9IC1mb21pdC1mcmFt
ZS1wb2ludGVyCiBlbmRpZgogCitpZmRlZiBDT05GSUdfWDg2X0hBTAorIyBP
biB4ODYsIGlmIGNvbXBpbGluZyBmb3IgdGhlIEhhcmR3YXJlIEFic3RyYWN0
aW9uIExheWVyCisjIChydW5uaW5nIExpbnV4IGFzIGEgZ3Vlc3QgT1MgaW4g
YSBWaXJ0dWFsIE1hY2hpbmUpLAorIyB3ZSBuZWVkIHRvIGluc2VydCBzb21l
IGFzbSBtYWNyb3Mgd2hpY2ggcmVkZWZpbmUKKyMgdGhlIGJlaGF2aW91ciBv
ZiBpbnN0cnVjdGlvbnMgd2hpY2ggbW9kaWZ5IHRoZQorIyBpbnRlcnJ1cHQg
ZmxhZy4gIFlvdSBhcmUgcHJvYmFibHkgbm90IGNvbmZpZ3VyaW5nIGZvcgor
IyB0aGlzIG1vZGUuICBGb3IgbW9yZSBpbmZvLCByZWFkICdEb2N1bWVudGF0
aW9uL3g4Ni1oYWwudHh0Jy4KKyMgVGhpcyBuZWVkcyB0byBiZSB0aGUgZmly
c3QgaW5jbHVkZSBhbnkgbW9kdWxlIHNlZXMuCitDRkxBR1MJCSs9IC1pbmNs
dWRlIGluY2x1ZGUvYXNtL2lmLmgKK0FGTEFHUwkJKz0gLWluY2x1ZGUgaW5j
bHVkZS9hc20vaWYuaAorZW5kaWYKKwogIwogIyBJTlNUQUxMX1BBVEggc3Bl
Y2lmaWVzIHdoZXJlIHRvIHBsYWNlIHRoZSB1cGRhdGVkIGtlcm5lbCBhbmQg
c3lzdGVtIG1hcAogIyBpbWFnZXMuICBVbmNvbW1lbnQgaWYgeW91IHdhbnQg
dG8gcGxhY2UgdGhlbSBhbnl3aGVyZSBvdGhlciB0aGFuIHJvb3QuCkBAIC00
MDksNiArNDIxLDEwIEBACiAjCXRoZWlyIHZtbGludXgubGRzLlMgZmlsZQog
CiBBRkxBR1Nfdm1saW51eC5sZHMubyArPSAtUCAtQyAtVSQoQVJDSCkKKwor
aWZkZWYgQ09ORklHX1g4Nl9IQUwKK0FGTEFHU192bWxpbnV4Lmxkcy5vICs9
IC1ETk9fWDg2X0hBTF9JTkNMVURFUworZW5kaWYKIAogYXJjaC8kKEFSQ0gp
L3ZtbGludXgubGRzLnM6ICUuczogJS5TIHNjcmlwdHMgRk9SQ0UKIAkkKGNh
bGwgaWZfY2hhbmdlZF9kZXAsYXNfc19TKQpkaWZmIC11ck4gbGludXgtMi41
LjU5L2FyY2gvaTM4Ni9LY29uZmlnIGxpbnV4LTIuNS41OS1oYWwvYXJjaC9p
Mzg2L0tjb25maWcKLS0tIGxpbnV4LTIuNS41OS9hcmNoL2kzODYvS2NvbmZp
ZwlXZWQgSmFuIDIyIDEyOjI1OjU5IDIwMDMKKysrIGxpbnV4LTIuNS41OS1o
YWwvYXJjaC9pMzg2L0tjb25maWcJV2VkIEphbiAyMiAyMzo0MToxMSAyMDAz
CkBAIC0xNjYxLDMgKzE2NjEsMjAgQEAKIAlib29sCiAJZGVwZW5kcyBvbiBT
TVAKIAlkZWZhdWx0IHkKKworbWVudSAiSGFyZHdhcmUgQWJzdHJhY3Rpb24g
TGF5ZXIiCisKK2NvbmZpZyBYODZfSEFMCisJYm9vbCAiQ29tcGlsZSBmb3Ig
SEFMIChleHBlcmltZW50YWwpIgorCWRlcGVuZHMgb24gIUhJR0hNRU0gJiYg
IVNNUCAmJiAhTTQ4NiAmJiAhTTM4NiAmJiAhWDg2X1VQX0FQSUMgJiYgIVg4
Nl9VUF9JT0FQSUMKKwloZWxwCisgICAgRXhwZXJpbWVudGFsOiBTYXkgWSBo
ZXJlIF9vbmx5XyBpZiB5b3UgYXJlIGNvbXBpbGluZyBMaW51eCB0byBydW4g
aW5zaWRlCisgICAgYW4gZXhwZXJpbWVudGFsIEhhcmR3YXJlIEFic3RyYWN0
aW9uIExheWVyLiAgVGhpcyBpcyBvbmx5IHVzZWZ1bAorICAgIGZvciBydW5u
aW5nIExpbnV4IGFzIGEgZ3Vlc3QgT1MgaW4gYSBzcGVjaWFsIHZpcnR1YWwg
bWFjaGluZS4KKyAgICBTYXkgTiBoZXJlIHVubGVzcyB5b3UgYWJzb2x1dGVs
eSBrbm93IHdoYXQgdGhpcyBpcyBmb3IuICBUaGlzCisgICAgd2lsbCBicmVh
ayBMaW51eCBydW5uaW5nIG9uIGEgcmVhbCBtYWNoaW5lIGZvciBzdXJlLiAg
VGhpcyBvcHRpb24KKyAgICBoYXMgdGhlIGZvbGxvd2luZyBjb25maWd1cmF0
aW9uIGNvbnN0cmFpbnRzOiBQZW50aXVtIG9yIGhpZ2hlciwKKyAgICB1bmlw
cm9jZXNzb3IgbW9kZSwgbm8gYXBpYyBzdXBwb3J0LiAgRm9yIG1vcmUgaW5m
byBzZWUKKyAgICA8ZmlsZTpEb2N1bWVudGF0aW9uL3g4Ni1oYWwudHh0Pi4K
KworZW5kbWVudQpkaWZmIC11ck4gbGludXgtMi41LjU5L2FyY2gvaTM4Ni9i
b290L01ha2VmaWxlIGxpbnV4LTIuNS41OS1oYWwvYXJjaC9pMzg2L2Jvb3Qv
TWFrZWZpbGUKLS0tIGxpbnV4LTIuNS41OS9hcmNoL2kzODYvYm9vdC9NYWtl
ZmlsZQlUdWUgSmFuIDE0IDAwOjU4OjM1IDIwMDMKKysrIGxpbnV4LTIuNS41
OS1oYWwvYXJjaC9pMzg2L2Jvb3QvTWFrZWZpbGUJV2VkIEphbiAyMiAyMjo1
Mjo0MCAyMDAzCkBAIC0zMiw2ICszMiwxMCBAQAogCiBob3N0LXByb2dzCTo9
IHRvb2xzL2J1aWxkCiAKK2lmZGVmIENPTkZJR19YODZfSEFMCitBRkxBR1Mg
Kz0gLUROT19YODZfSEFMX0lOQ0xVREVTCitlbmRpZgorCiAjIC0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogCiAkKG9iaikvekltYWdlOiAgSU1B
R0VfT0ZGU0VUIDo9IDB4MTAwMApkaWZmIC11ck4gbGludXgtMi41LjU5L2lu
Y2x1ZGUvYXNtLWkzODYvaWYuaCBsaW51eC0yLjUuNTktaGFsL2luY2x1ZGUv
YXNtLWkzODYvaWYuaAotLS0gbGludXgtMi41LjU5L2luY2x1ZGUvYXNtLWkz
ODYvaWYuaAlXZWQgRGVjIDMxIDE5OjAwOjAwIDE5NjkKKysrIGxpbnV4LTIu
NS41OS1oYWwvaW5jbHVkZS9hc20taTM4Ni9pZi5oCVdlZCBKYW4gMjIgMjI6
MzU6MDIgMjAwMwpAQCAtMCwwICsxLDE1NyBAQAorI2lmbmRlZiBOT19YODZf
SEFMX0lOQ0xVREVTCisvKgorICoJUm91dGluZXMgdG8gbWFuaXB1bGF0ZSB0
aGUgaW50ZXJydXB0IGZsYWcgKEVGTEFHUy5JRikuICBBYnN0cmFjdGluZwor
ICoJdGhlbSwgbWFrZXMgaXQgZWFzaWVyIHRvIGNvbXBpbGUgZm9yIGEgaGFy
ZHdhcmUgYWJzdHJhY3Rpb24gbGF5ZXIgKEhBTCkuCisgKgorICoJKGMpIDIw
MDMgS2V2aW4gUC4gTGF3dG9uIDxrZXZpbmxhd3RvbjIwMDFAeWFob28uY29t
PgorICovCisKKyNpZm5kZWYgX0xJTlVYX0FTTV9JRl9IXworI2RlZmluZSBf
TElOVVhfQVNNX0lGX0hfCisKKworLyogTk9URTogVGhpcyBmaWxlIGlzIGRp
cmVjdGx5IGluY2x1ZGVkIHZpYSB0aGUgIi1pbmNsdWRlIGluY2x1ZGUvYXNt
L2lmLmgiCisgKiBvcHRpb24gY29uZGl0aW9uYWxseSBhZGRlZCB0byB0aGUg
Y29tcGlsZXIgZmxhZ3MgYnkgdGhlIHRvcCBNYWtlZmlsZSB3aGVuCisgKiBD
T05GSUdfWDg2X0hBTCBpcyBkZWZpbmVkLiAgTm9uZSBvZiB0aGUgaGVhZGVy
IGZpbGVzIGhhdmUgYmVlbiBpbmNsdWRlZAorICogYXQgdGhpcyBwb2ludC4K
KyAqLworCisvKiBGb3IgYSBIQUwgKEhhcmR3YXJlIEFic3RyYWN0aW9uIExh
eWVyKSBjb21waWxlLCB0aGUga2VybmVsIGlzIGV4ZWN1dGVkCisgKiBhdCBQ
TD0zIHVzaW5nIFBWSSAoUHJvdGVjdGVkIG1vZGUgVmlydHVhbCBJbnRlcnJ1
cHRzKSwgd2hpY2ggYXJlIHRoZQorICogYW5hbG9nIHRvIFZNRSBmb3Igdjg2
IGNvZGUuICBGb3Igc29tZSByZWFzb24sIFRoZSBDcmVhdG9ycyBzdG9wcGVk
IHNob3J0IG9mCisgKiBpbXBsZW1lbnRpbmcgcHJvcGVyIElGIGhhbmRsaW5n
IGZvciBQVVNIRi9QT1BGIGZvciBQVkksIGJ1dCBTVEkvQ0xJIGFyZQorICog
ZmluZS4gIFNvIHdlIGhhdmUgdG8gY29tcGxldGUgdGhlIFBWSSBzZW1hbnRp
Y3MgdXNpbmcgdGhlIGZvbGxvd2luZworICogc2VxdWVuY2VzLgorICovCisK
Ky8qIFNoaWVsZCB5b3VyIGV5ZXMuICBUaGVzZSBtYWNyb3MgbWFrZSBpdCBw
b3NzaWJsZSB0byB1c2UgdGhlIHNhbWUKKyAqIGNvZGUgZm9yIGFzbSBvciBD
IGlubGluZSBhc20sIHdpdGggYWxsIHRoZSBxdW90aW5nLCBjb21tYSwgYW5k
CisgKiBuZXdsaW5lIGlzc3Vlcy4gIFExIGlzIGZvciBsaW5lcyB3aXRoIG5v
IGNvbW1hcywgYW5kIFEyIGlzIGZvciBsaW5lcworICogd2l0aCBvbmUgY29t
bWEuCisgKi8KKyNpZmRlZiBfX0FTU0VNQkxZX18KKyNkZWZpbmUgUTEoczAp
ICAgICBzMAorI2RlZmluZSBRMihzMCwgczEpIHMwLCBzMQorI2Vsc2UKKyNk
ZWZpbmUgUTEoczApICAgICAjczAgIlxuXHQiCisjZGVmaW5lIFEyKHMwLCBz
MSkgI3MwICIsIiAjczEgIlxuXHQiCisjZW5kaWYKKworCisjaWZuZGVmIF9f
QVNTRU1CTFlfXworX19hc21fXyAoCisjZW5kaWYKKworICBRMSgubWFjcm8g
IGNsaSkKKyAgUTEoLmJ5dGUgMHhmYSkgICAgIC8qIGNsaSAobmF0aXZlIGlu
c3RydWN0aW9uIHdvcmtzIGZpbmUgaW4gUFZJKSAqLworICBRMSguZW5kbSkK
KworICBRMSgubWFjcm8gIHN0aSkKKyAgUTEoLmJ5dGUgMHhmYikgICAgIC8q
IHN0aSAobmF0aXZlIGluc3RydWN0aW9uIHdvcmtzIGZpbmUgaW4gUFZJKSAq
LworICBRMSguZW5kbSkKKworI2lmbmRlZiBfX0FTU0VNQkxZX18KKyAgKTsK
KyNlbmRpZgorCisKKworLyogUFVTSEZMOgorICogV2hlbiBleGVjdXRpb24g
aXMgbW9uaXRvcmVkIHVzaW5nIFBWSSAoUHJvdGVjdGVkIG1vZGUgVmlydHVh
bCBJbnRlcnJ1cHRzKSwKKyAqIHdlIGhhdmUgdG8gY29tcGxldGUgdGhlIFBW
SSBzZW1hbnRpY3Mgb2YgdGhlIFBVU0hGTCBpbnN0cnVjdGlvbiwgYXMKKyAq
IHBlciBiZWhhdmlvdXIgb2YgVk1FLgorICoKKyAqICAgICAgICAgICAgICAg
ICAgICAgICAgYjE5ICAgICAgICAgICBiOQorICogQ1BVICAgaW1hZ2Ugb2Yg
ZWZsYWdzOiBWSUYgICAgICAgICAgIElGCisgKiAgICAgICAgICAgICAgICAg
ICAgICAgICB8CisgKiAgICAgICAgICAgICAgICAgICAgICAgICArLS0tLS0t
LS0tLS0tKworICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIHwKKyAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICB2CisgKiBTdGFjayBpbWFnZSBvZiBlZmxhZ3M6IFZJRiAgICAgICAgICAg
SUYKKyAqCisgKiBOb3RlczogVklGIG9uIHRoZSBzdGFjayBpbWFnZSBjb3Vs
ZCBiZSBjbGVhcmVkLCBpZiBpdCBtYXR0ZXJzLgorICovCisKKyNpZm5kZWYg
X19BU1NFTUJMWV9fCitfX2FzbV9fICgKKyNlbmRpZgorCisgIFExKCAgLm1h
Y3JvIHB1c2hmbCkKKyAgUTEoICAuYnl0ZSAweDljKSAgICAgICAgICAgICAg
ICAvKiAocHVzaGZsKSBGaW5hbCBlZmxhZ3Mgc3RhY2sgaW1hZ2UuICovCisg
IFExKCAgLmJ5dGUgMHg5YykgICAgICAgICAgICAgICAgLyogKHB1c2hmbCkg
Rm9yIHJlc3RvcmluZyBhcml0aCBmbGFncy4gKi8KKyAgUTIoICB0ZXN0bCAk
KDE8PDE5KSwgNCglZXNwKSkgICAvKiBXYXMgVklGIGJpdCBzZXQ/ICovCisg
IFExKCAganogNjkwMDFmKQorICBRMiggIG9ybCAgICQoMTw8OSksIDQoJWVz
cCkpICAgIC8qIFllczogc2V0IHN0YWNrIGltYWdlIG9mIElGLiAqLworICBR
MSggIGptcCA2OTAwMmYpCisgIFExKDY5MDAxOikgICAgICAgICAgICAgICAg
ICAgICAgLyogVXNlIHRoZSB6aXAgb2YgTHlvbiBGcmFuY2UgOl59ICovCisg
IFEyKCAgYW5kbCAgJH4oMTw8OSksIDQoJWVzcCkpICAgLyogTm86IGNsZWFy
IHN0YWNrIGltYWdlIG9mIElGLiAqLworICBRMSg2OTAwMjopCisgIFExKCAg
LmJ5dGUgMHg5ZCkgICAgICAgICAgICAgICAgLyogKHBvcGZsKSBSZXN0b3Jl
IGFyaXRobWV0aWMgZmxhZ3MuICovCisgIFExKCAgLmVuZG0pCisKKyAgLyog
VGhlIHVzZXIgbWF5IHVzZSBwdXNoZiB3aXRoIGFuIGltcGxpY2l0IHNpemUu
ICBKdXN0IGV4cGFuZCB0aGF0CisgICAqIHRvIHRoZSBwcmV2aW91cyBtYWNy
by4KKyAgICovCisgIFExKC5tYWNybyBwdXNoZikKKyAgUTEocHVzaGZsKQor
ICBRMSguZW5kbSkKKworI2lmbmRlZiBfX0FTU0VNQkxZX18KKyAgKTsKKyNl
bmRpZgorCisKKworLyogUE9QRkw6CisgKiBXaGVuIGV4ZWN1dGlvbiBpcyBt
b25pdG9yZWQgdXNpbmcgUFZJIChQcm90ZWN0ZWQgbW9kZSBWaXJ0dWFsIElu
dGVycnVwdHMpLAorICogd2UgaGF2ZSB0byBjb21wbGV0ZSB0aGUgUFZJIHNl
bWFudGljcyBvZiB0aGUgUE9QRkwgaW5zdHJ1Y3Rpb24sIGFzCisgKiBwZXIg
YmVoYXZpb3VyIG9mIFZNRS4KKyAqCisgKiAgICAgICAgICAgICAgICAgICAg
ICAgIGIxOSAgICAgICAgICAgYjkKKyAqIFN0YWNrIGltYWdlIG9mIGVmbGFn
czogVklGICAgICAgICAgICBJRgorICogICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIHwKKyAqICAgICAgICAgICAgICAgICAgICAgICAg
ICstLS0tLS0tLS0tLS0rCisgKiAgICAgICAgICAgICAgICAgICAgICAgICB8
CisgKiAgICAgICAgICAgICAgICAgICAgICAgICB2CisgKiBDUFUgICBpbWFn
ZSBvZiBlZmxhZ3M6IFZJRiAgICAgICAgICAgSUYKKyAqCisgKiBOb3Rlczog
SUYgb2YgdGhlIGVmbGFncyByZWdpc3RlciByZXRhaW5zIGl0cyBwcmV2aW91
cyB2YWx1ZSwgd2hpY2gKKyAqICAgc2hvdWxkIGJlIDEgKHdoZW4gbW9uaXRv
cmVkIGRvd24gdG8gUEwzLCB0aGUgcHJvY2Vzc29yIGlnbm9yZXMgdGhpcwor
ICogICBiaXQgaW4gYSBQT1BGKS4KKyAqLworCisjaWZuZGVmIF9fQVNTRU1C
TFlfXworX19hc21fXyAoCisjZW5kaWYKKworICBRMSggIC5tYWNybyBwb3Bm
bCkKKyAgUTIoICB0ZXN0bCAkKDE8PDkpLCAwKCVlc3ApKSAgICAvKiBJcyBJ
RiBzZXQgb24gc3RhY2sgaW1hZ2U/ICovCisgIFExKCAganogNjkwMDNmKQor
ICBRMSggIC5ieXRlIDB4OWQpICAgICAgICAgICAgICAgIC8qIChwb3BmbCkg
WWVzOiByZXN0b3JlIGZyb20gc3RhY2sgYW5kICovCisgIFExKCAgc3RpKSAg
ICAgICAgICAgICAgICAgICAgICAgLyogZm9yY2UgVklGPTEuICovCisgIFEx
KCAgam1wIDY5MDA0ZikKKyAgUTEoNjkwMDM6KQorICBRMSggIC5ieXRlIDB4
OWQpICAgICAgICAgICAgICAgIC8qIChwb3BmbCkgTm86IHJlc3RvcmUgZnJv
bSBzdGFjayBhbmQgKi8KKyAgUTEoICBjbGkpICAgICAgICAgICAgICAgICAg
ICAgICAvKiBmb3JjZSBWSUY9MC4gKi8KKyAgUTEoNjkwMDQ6KQorICBRMSgg
IC5lbmRtKQorCisgIC8qIFRoZSB1c2VyIG1heSB1c2UgcG9wZiB3aXRoIGFu
IGltcGxpY2l0IHNpemUuICBKdXN0IGV4cGFuZCB0aGF0CisgICAqIHRvIHRo
ZSBwcmV2aW91cyBtYWNyby4KKyAgICovCisgIFExKC5tYWNybyBwb3BmKQor
ICBRMShwb3BmbCkKKyAgUTEoLmVuZG0pCisKKyNpZm5kZWYgX19BU1NFTUJM
WV9fCisgICk7CisjZW5kaWYKKworLyogR2V0IHJpZCBvZiBxdW90aW5nIG1h
Y3JvcyAtIGdvb2QgaG91c2VrZWVwaW5nLiAqLworI3VuZGVmIFExCisjdW5k
ZWYgUTIKKworCisjZW5kaWYgIC8qIF9MSU5VWF9BU01fSUZfSF8gKi8KKwor
I2VuZGlmICAvKiAgTk9fWDg2X0hBTF9JTkNMVURFUyAqLwo=

--=_courier-30183-1043298760-0001-2--