From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from smtpbguseast3.qq.com (smtpbguseast3.qq.com [54.243.244.52]) by sourceware.org (Postfix) with ESMTPS id 840BC3858D35 for ; Thu, 29 Jun 2023 09:53:02 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 840BC3858D35 Authentication-Results: sourceware.org; dmarc=none (p=none dis=none) header.from=rivai.ai Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=rivai.ai X-QQ-mid: bizesmtp77t1688032377tcz2n53z Received: from LAPTOP-EPITNQBU ( [58.60.1.5]) by bizesmtp.qq.com (ESMTP) with id ; Thu, 29 Jun 2023 17:52:55 +0800 (CST) X-QQ-SSF: 01400000000000G0T000000A0000000 X-QQ-FEAT: 2i+QW+6os+3hOk20jnhYOeLFICyEbjf9JhOuaO6noe3Sh1zgbBkfLsp1Yr5KL DJBYrviX6bI89rPZt7lPmTJF5eC52I/vjWoqAFBII5j3no1Kpvuh+KAwyUX9tYSuHQKJf9k A39JQjU7+nHIU64K1qidajXCC/YPQzmPhGNMSyC4/OL8pgzwD6yMq6rLKMkb7O7YkX1kJyC Lgp0CwZirWlEnJWG9A63YlHRlToRwegEhat6VYTOL618cujPoKsUfnfR1mko5nDfn74aWZB Gxl9JMOD0za0MiTGRtfJOwatOsqfu+Jn66PgodOuaAkKfPF+mpcyiNimvBkLYrBptSdSuUE w2qM+XUUt5VeNJzlaHiDA6QjoDwhtzKKMFRJydo3zW4/Pzoos6iET79hT2MztVEkhxQo6mT FX+48uLK+qRgbP427mVua3N/jTCruHJ1 X-QQ-GoodBg: 2 X-BIZMAIL-ID: 1375837597771867192 Date: Thu, 29 Jun 2023 17:52:56 +0800 From: "juzhe.zhong@rivai.ai" To: "Thomas Schwinge" Cc: pan2.li , gcc-patches , "Robin Dapp" , jeffreyalaw , yanzhang.wang , kito.cheng , rguenther , jakub , "Tobias Burnus" Subject: Re: Re: [PATCH v3] Streamer: Fix out of range memory access of machine mode References: <20230619080710.1536456-1-pan2.li@intel.com>, <20230621075824.1990571-1-pan2.li@intel.com>, <874jmqwr8q.fsf@euler.schwinge.homeip.net>, , <87pm5ed2hl.fsf@euler.schwinge.homeip.net> X-Priority: 3 X-GUID: F07088AC-AD7D-4EC0-A3C8-88F932A3A69A X-Has-Attach: no X-Mailer: Foxmail 7.2.16.188[cn] Mime-Version: 1.0 Message-ID: Content-Type: multipart/alternative; boundary="----=_001_NextPart033131324662_=----" X-QQ-SENDSIZE: 520 Feedback-ID: bizesmtp:rivai.ai:qybglogicsvrgz:qybglogicsvrgz7a-one-0 X-Spam-Status: No, score=-11.7 required=5.0 tests=BAYES_00,GIT_PATCH_0,HTML_MESSAGE,KAM_DMARC_STATUS,KAM_SHORT,RCVD_IN_DNSWL_NONE,RCVD_IN_MSPIKE_H4,RCVD_IN_MSPIKE_WL,SPF_HELO_PASS,SPF_PASS,TXREP,T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org List-Id: This is a multi-part message in MIME format. ------=_001_NextPart033131324662_=---- Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: base64 T2suIFRoYW5rcyBmb3IgdGFraW5nIGNhcmUgb2YgaXQhDQoNCj4+IFRoYXQg bG9va3MgbGlrZSBhIGRpZmZlcmVudCBpc3N1ZSwgdGhvdWdoPw0KWWVzLCBp dCdzIGRpZmZlcmVudCBpc3N1ZSBhbmQgSSBhbSB0cnlpbmcgdG8gZml4IGl0 IGluIFJJU0MtViBiYWNrZW5kLg0KDQpUaGFua3MgYSBsb3QuDQoNCg0KanV6 aGUuemhvbmdAcml2YWkuYWkNCiANCkZyb206IFRob21hcyBTY2h3aW5nZQ0K RGF0ZTogMjAyMy0wNi0yOSAxNzo0Nw0KVG86IGp1emhlLnpob25nQHJpdmFp LmFpDQpDQzogcGFuMi5saUBpbnRlbC5jb207IGdjYy1wYXRjaGVzQGdjYy5n bnUub3JnOyBSb2JpbiBEYXBwOyBqZWZmcmV5YWxhd0BnbWFpbC5jb207IHlh bnpoYW5nLndhbmdAaW50ZWwuY29tOyBraXRvLmNoZW5nQGdtYWlsLmNvbTsg cmd1ZW50aGVyQHN1c2UuZGU7IGpha3ViQHJlZGhhdC5jb207IFRvYmlhcyBC dXJudXMNClN1YmplY3Q6IFJlOiBSZTogW1BBVENIIHYzXSBTdHJlYW1lcjog Rml4IG91dCBvZiByYW5nZSBtZW1vcnkgYWNjZXNzIG9mIG1hY2hpbmUgbW9k ZQ0KSGkhDQogDQpPbiAyMDIzLTA2LTI5VDE3OjMzOjE0KzA4MDAsICJqdXpo ZS56aG9uZ0ByaXZhaS5haSIgPGp1emhlLnpob25nQHJpdmFpLmFpPiB3cm90 ZToNCj4gTm90IHN1cmUgd2hhdCBoYXBwZW5zIHlvdSBzYWlkIElDRXMgYWxs IG92ZXIgdGhlIHBsYWNlLi4uDQogDQpBaCwgc29ycnkgZm9yIG5vdCBwcm92 aWRpbmcgcHJvcGVyIGNvbnRleHQgaGVyZS4gIE15IGNvbW1lbnQgd2FzIGFi b3V0DQpoZXRlcm9nZW5lb3VzIEdDQyBjb25maWd1cmF0aW9ucyBpbnZvbHZp bmcgY29kZSBvZmZsb2FkaW5nLCBsaWtlOiB4ODZfNjQNCmhvc3Qgd2l0aCBH Q04sIG52cHR4IG9mZmxvYWQgdGFyZ2V0cywgd2hpY2ggSSdkIGJlZW4gYXNr ZWQgdG8gdGVzdCB0aGlzDQoiU3RyZWFtZXI6IEZpeCBvdXQgb2YgcmFuZ2Ug bWVtb3J5IGFjY2VzcyBvZiBtYWNoaW5lIG1vZGUiIGZvciAoaW4NCnByaXZh dGUgZW1haWwpIC0tIGZvciBnb29kIHJlYXNvbnMsIGFzIHdlJ3ZlIG5vdyBm b3VuZC4gIDstfA0KIA0KIA0KPiBBY3R1YWxseSwgZXZlbiB3aXRob3V0IHRo aXMgcGF0Y2gsIGN1cnJlbnQgdXBzdHJlYW0gR0NDIGluIFJJU0NWIHBvcnQg YWxyZWFkeSBJQ0UgYWxsIG92ZXIgdGhlIHBsYWNlOg0KPg0KPiBGQUlMOiBn Y2MudGFyZ2V0L3Jpc2N2L3J2di9hdXRvdmVjL3BhcnRpYWwvbXVsdGlwbGVf cmdyb3VwLTMuYyAoaW50ZXJuYWwgY29tcGlsZXIgZXJyb3I6IHRyZWUgY2hl Y2s6IGV4cGVjdGVkIG5vbmUgb2YgdmVjdG9yX3R5cGUsIGhhdmUgdmVjdG9y X3R5cGUgaW4gZGl2bW9kX2NhbmRpZGF0ZV9wLCBhdCB0cmVlLXNzYS1tYXRo LW9wdHMuY2M6NDk5OCkNCj4gRkFJTDogZ2NjLnRhcmdldC9yaXNjdi9ydnYv YXV0b3ZlYy9wYXJ0aWFsL211bHRpcGxlX3Jncm91cC0zLmMgKHRlc3QgZm9y IGV4Y2VzcyBlcnJvcnMpDQo+IEZBSUw6IGdjYy50YXJnZXQvcmlzY3YvcnZ2 L2F1dG92ZWMvcGFydGlhbC9zbHBfcnVuLTEuYyAoaW50ZXJuYWwgY29tcGls ZXIgZXJyb3I6IHRyZWUgY2hlY2s6IGV4cGVjdGVkIG5vbmUgb2YgdmVjdG9y X3R5cGUsIGhhdmUgdmVjdG9yX3R5cGUgaW4gZGl2bW9kX2NhbmRpZGF0ZV9w LCBhdCB0cmVlLXNzYS1tYXRoLW9wdHMuY2M6NDk5OCkNCj4gRkFJTDogZ2Nj LnRhcmdldC9yaXNjdi9ydnYvYXV0b3ZlYy9wYXJ0aWFsL3NscF9ydW4tMS5j ICh0ZXN0IGZvciBleGNlc3MgZXJyb3JzKQ0KPiBGQUlMOiBnY2MudGFyZ2V0 L3Jpc2N2L3J2di9hdXRvdmVjL3BhcnRpYWwvc2xwX3J1bi0xNy5jIChpbnRl cm5hbCBjb21waWxlciBlcnJvcjogdHJlZSBjaGVjazogZXhwZWN0ZWQgbm9u ZSBvZiB2ZWN0b3JfdHlwZSwgaGF2ZSB2ZWN0b3JfdHlwZSBpbiBkaXZtb2Rf Y2FuZGlkYXRlX3AsIGF0IHRyZWUtc3NhLW1hdGgtb3B0cy5jYzo0OTk4KQ0K PiBGQUlMOiBnY2MudGFyZ2V0L3Jpc2N2L3J2di9hdXRvdmVjL3BhcnRpYWwv c2xwX3J1bi0xNy5jICh0ZXN0IGZvciBleGNlc3MgZXJyb3JzKQ0KPiBGQUlM OiBnY2MudGFyZ2V0L3Jpc2N2L3J2di9hdXRvdmVjL3BhcnRpYWwvbXVsdGlw bGVfcmdyb3VwX3J1bi0zLmMgKGludGVybmFsIGNvbXBpbGVyIGVycm9yOiB0 cmVlIGNoZWNrOiBleHBlY3RlZCBub25lIG9mIHZlY3Rvcl90eXBlLCBoYXZl IHZlY3Rvcl90eXBlIGluIGRpdm1vZF9jYW5kaWRhdGVfcCwgYXQgdHJlZS1z c2EtbWF0aC1vcHRzLmNjOjQ5OTgpDQo+IEZBSUw6IGdjYy50YXJnZXQvcmlz Y3YvcnZ2L2F1dG92ZWMvcGFydGlhbC9tdWx0aXBsZV9yZ3JvdXBfcnVuLTMu YyAodGVzdCBmb3IgZXhjZXNzIGVycm9ycykNCj4gRkFJTDogZ2NjLnRhcmdl dC9yaXNjdi9ydnYvYXV0b3ZlYy9wYXJ0aWFsL3NscF9ydW4tMi5jIChpbnRl cm5hbCBjb21waWxlciBlcnJvcjogdHJlZSBjaGVjazogZXhwZWN0ZWQgbm9u ZSBvZiB2ZWN0b3JfdHlwZSwgaGF2ZSB2ZWN0b3JfdHlwZSBpbiBkaXZtb2Rf Y2FuZGlkYXRlX3AsIGF0IHRyZWUtc3NhLW1hdGgtb3B0cy5jYzo0OTk4KQ0K PiBGQUlMOiBnY2MudGFyZ2V0L3Jpc2N2L3J2di9hdXRvdmVjL3BhcnRpYWwv c2xwX3J1bi0yLmMgKHRlc3QgZm9yIGV4Y2VzcyBlcnJvcnMpDQo+IEZBSUw6 IGdjYy50YXJnZXQvcmlzY3YvcnZ2L2F1dG92ZWMvYmlub3AvbmFycm93X3J1 bi0xLmMgKGludGVybmFsIGNvbXBpbGVyIGVycm9yOiB0cmVlIGNoZWNrOiBl eHBlY3RlZCBub25lIG9mIHZlY3Rvcl90eXBlLCBoYXZlIHZlY3Rvcl90eXBl IGluIGRpdm1vZF9jYW5kaWRhdGVfcCwgYXQgdHJlZS1zc2EtbWF0aC1vcHRz LmNjOjQ5OTgpDQo+IEZBSUw6IGdjYy50YXJnZXQvcmlzY3YvcnZ2L2F1dG92 ZWMvYmlub3AvbmFycm93X3J1bi0xLmMgKHRlc3QgZm9yIGV4Y2VzcyBlcnJv cnMpDQo+IEZBSUw6IGdjYy50YXJnZXQvcmlzY3YvcnZ2L2F1dG92ZWMvcGFy dGlhbC9zbHBfcnVuLTE2LmMgKGludGVybmFsIGNvbXBpbGVyIGVycm9yOiB0 cmVlIGNoZWNrOiBleHBlY3RlZCBub25lIG9mIHZlY3Rvcl90eXBlLCBoYXZl IHZlY3Rvcl90eXBlIGluIGRpdm1vZF9jYW5kaWRhdGVfcCwgYXQgdHJlZS1z c2EtbWF0aC1vcHRzLmNjOjQ5OTgpDQo+IEZBSUw6IGdjYy50YXJnZXQvcmlz Y3YvcnZ2L2F1dG92ZWMvcGFydGlhbC9zbHBfcnVuLTE2LmMgKHRlc3QgZm9y IGV4Y2VzcyBlcnJvcnMpDQo+IEZBSUw6IGdjYy50YXJnZXQvcmlzY3YvcnZ2 L2F1dG92ZWMvcGFydGlhbC9zbHBfcnVuLTMuYyAoaW50ZXJuYWwgY29tcGls ZXIgZXJyb3I6IHRyZWUgY2hlY2s6IGV4cGVjdGVkIG5vbmUgb2YgdmVjdG9y X3R5cGUsIGhhdmUgdmVjdG9yX3R5cGUgaW4gZGl2bW9kX2NhbmRpZGF0ZV9w LCBhdCB0cmVlLXNzYS1tYXRoLW9wdHMuY2M6NDk5OCkNCj4gRkFJTDogZ2Nj LnRhcmdldC9yaXNjdi9ydnYvYXV0b3ZlYy9wYXJ0aWFsL3NscF9ydW4tMy5j ICh0ZXN0IGZvciBleGNlc3MgZXJyb3JzKQ0KIA0KVGhhdCBsb29rcyBsaWtl IGEgZGlmZmVyZW50IGlzc3VlLCB0aG91Z2g/DQogDQogDQpHcsO8w59lDQpU aG9tYXMNCiANCiANCj4gRnJvbTogVGhvbWFzIFNjaHdpbmdlDQo+IERhdGU6 IDIwMjMtMDYtMjkgMTc6MjkNCj4gVG86IFBhbiBMaQ0KPiBDQzogZ2NjLXBh dGNoZXNAZ2NjLmdudS5vcmc7IGp1emhlLnpob25nQHJpdmFpLmFpOyByZGFw cC5nY2NAZ21haWwuY29tOyBqZWZmcmV5YWxhd0BnbWFpbC5jb207IHlhbnpo YW5nLndhbmdAaW50ZWwuY29tOyBraXRvLmNoZW5nQGdtYWlsLmNvbTsgcmd1 ZW50aGVyQHN1c2UuZGU7IGpha3ViQHJlZGhhdC5jb207IFRvYmlhcyBCdXJu dXMNCj4gU3ViamVjdDogUmU6IFtQQVRDSCB2M10gU3RyZWFtZXI6IEZpeCBv dXQgb2YgcmFuZ2UgbWVtb3J5IGFjY2VzcyBvZiBtYWNoaW5lIG1vZGUNCj4g SGkhDQo+DQo+IE9uIDIwMjMtMDYtMjFUMTU6NTg6MjQrMDgwMCwgUGFuIExp IHZpYSBHY2MtcGF0Y2hlcyA8Z2NjLXBhdGNoZXNAZ2NjLmdudS5vcmc+IHdy b3RlOg0KPj4gV2UgZXh0ZW5kIHRoZSBtYWNoaW5lIG1vZGUgZnJvbSA4IHRv IDE2IGJpdHMgYWxyZWFkeS4gQnV0IHRoZXJlIHN0aWxsDQo+PiBvbmUgcGxh Y2luZyBtaXNzaW5nIGZyb20gdGhlIHN0cmVhbWVyLiBJdCBoYXMgb25lIGhh cmQgY29kZWQgYXJyYXkNCj4+IGZvciB0aGUgbWFjaGluZSBjb2RlIGxpa2Ug c2l6ZSAyNTYuDQo+Pg0KPj4gSW4gdGhlIGx0byBwYXNzLCB3ZSBtZW1zZXQg dGhlIGFycmF5IGJ5IE1BWF9NQUNISU5FX01PREUgY291bnQgYnV0IHRoZQ0K Pj4gdmFsdWUgb2YgdGhlIE1BWF9NQUNISU5FX01PREUgd2lsbCBncm93IGFz IG1vcmUgYW5kIG1vcmUgbW9kZXMgYXJlDQo+PiBhZGRlZC4gV2hpbGUgdGhl IG1hY2hpbmUgbW9kZSBhcnJheSBpbiB0cmVlLXN0cmVhbWVyIHN0aWxsIGxl YXZlIDI1NiBhcyBpcy4NCj4+DQo+PiBUaGVuLCB3aGVuIHRoZSBNQVhfTUFD SElORV9NT0RFIGlzIGdyZWF0ZXIgdGhhbiAyNTYsIHRoZSBtZW1zZXQgb2YN Cj4+IGx0b19vdXRwdXRfaW5pdF9tb2RlX3RhYmxlIHdpbGwgdG91Y2ggdGhl IG1lbW9yeSBvdXQgb2YgcmFuZ2UgdW5leHBlY3RlZC4NCj4NCj4gVWguICA6 LU8NCj4NCj4+IFRoaXMgcGF0Y2ggd291bGQgbGlrZSB0byB0YWtlIHRoZSBN QVhfTUFDSElORV9NT0RFIGFzIHRoZSBzaXplIG9mIHRoZQ0KPj4gYXJyYXkg aW4gc3RyZWFtZXIsIHRvIG1ha2Ugc3VyZSB0aGVyZSBpcyBubyBwb3RlbnRp YWwgdW5leHBlY3RlZA0KPj4gbWVtb3J5IGFjY2VzcyBpbiBmdXR1cmUuIE1l YW53aGlsZSwgdGhpcyBwYXRjaCBhbHNvIGFkanVzdCBzb21lIHBsYWNlDQo+ PiB3aGljaCBoYXMgTUFYX01BQ0hJTkVfTU9ERSA8PSAyNTYgYXNzdW1wdGlv bi4NCj4NCj4gVGhhbmtzIHRvIEpha3ViIGFuZCBSaWNoYXJkIGZvciBndWlk YW5jZSByZSB0aGUgb2ZmbG9hZGluZyBjb21waWxhdGlvbg0KPiBjYXNlLCB3 aGVyZSB3ZSd2ZSBnb3QgZGlmZmVyZW50ICdNQVhfTUFDSElORV9NT0RFJ3Mg YmV0d2VlbiBzdHJlYW0tb3V0DQo+IGFuZCBzdHJlYW0taW4sIGFuZCBhIG1v ZGVzIG1hcHBpbmcgdGFibGUuDQo+DQo+IEhvd2V2ZXIsIHdpdGggdGhpcyBw YXRjaCwgdGhlcmUgYXJlIElDRXMgYWxsIG92ZXIgdGhlIHBsYWNlLi4uICBJ J20NCj4gaGF2aW5nIGEgbG9vay4NCj4NCj4NCj4gR3LDvMOfZQ0KPiBUaG9t YXMNCj4NCj4NCj4+IGdjYy9DaGFuZ2VMb2c6DQo+Pg0KPj4gICAgICAgKiBs dG8tc3RyZWFtZXItaW4uY2MgKGx0b19pbnB1dF9tb2RlX3RhYmxlKTogU3Ry ZWFtIGluIHRoZSBtb2RlDQo+PiAgICAgICBiaXRzIGZvciBtYWNoaW5lIG1v ZGUgdGFibGUuDQo+PiAgICAgICAqIGx0by1zdHJlYW1lci1vdXQuY2MgKGx0 b193cml0ZV9tb2RlX3RhYmxlKTogU3RyZWFtIG91dCB0aGUNCj4+ICAgICAg IEhPU1QgbWFjaGluZSBtb2RlIGJpdHMuDQo+PiAgICAgICAqIGx0by1zdHJl YW1lci5oIChzdHJ1Y3QgbHRvX2ZpbGVfZGVjbF9kYXRhKTogTmV3IGZpZWxk cyBtb2RlX2JpdHMuDQo+PiAgICAgICAqIHRyZWUtc3RyZWFtZXIuY2MgKHN0 cmVhbWVyX21vZGVfdGFibGUpOiBUYWtlIE1BWF9NQUNISU5FX01PREUNCj4+ ICAgICAgIGFzIHRoZSB0YWJsZSBzaXplLg0KPj4gICAgICAgKiB0cmVlLXN0 cmVhbWVyLmggKHN0cmVhbWVyX21vZGVfdGFibGUpOiBEaXR0by4NCj4+ICAg ICAgIChicF9wYWNrX21hY2hpbmVfbW9kZSk6IFRha2UgMSA8PCBjZWlsX2xv ZzIgKE1BWF9NQUNISU5FX01PREUpDQo+PiAgICAgICBhcyB0aGUgcGFja2lu ZyBsaW1pdC4NCj4+ICAgICAgIChicF91bnBhY2tfbWFjaGluZV9tb2RlKTog RGl0dG8uDQo+PiAtLS0NCj4+ICBnY2MvbHRvLXN0cmVhbWVyLWluLmNjICB8 IDEyICsrKysrKysrLS0tLQ0KPj4gIGdjYy9sdG8tc3RyZWFtZXItb3V0LmNj IHwgMTEgKysrKysrKystLS0NCj4+ICBnY2MvbHRvLXN0cmVhbWVyLmggICAg ICB8ICAyICsrDQo+PiAgZ2NjL3RyZWUtc3RyZWFtZXIuY2MgICAgfCAgMiAr LQ0KPj4gIGdjYy90cmVlLXN0cmVhbWVyLmggICAgIHwgMTQgKysrKysrKysr LS0tLS0NCj4+ICA1IGZpbGVzIGNoYW5nZWQsIDI4IGluc2VydGlvbnMoKyks IDEzIGRlbGV0aW9ucygtKQ0KPj4NCj4+IGRpZmYgLS1naXQgYS9nY2MvbHRv LXN0cmVhbWVyLWluLmNjIGIvZ2NjL2x0by1zdHJlYW1lci1pbi5jYw0KPj4g aW5kZXggMmNiODM0MDZkYjUuLjJhMDcyMGI0ZTZmIDEwMDY0NA0KPj4gLS0t IGEvZ2NjL2x0by1zdHJlYW1lci1pbi5jYw0KPj4gKysrIGIvZ2NjL2x0by1z dHJlYW1lci1pbi5jYw0KPj4gQEAgLTE5ODUsOCArMTk4NSw2IEBAIGx0b19p bnB1dF9tb2RlX3RhYmxlIChzdHJ1Y3QgbHRvX2ZpbGVfZGVjbF9kYXRhICpm aWxlX2RhdGEpDQo+PiAgICAgIGludGVybmFsX2Vycm9yICgiY2Fubm90IHJl YWQgTFRPIG1vZGUgdGFibGUgZnJvbSAlcyIsDQo+PiAgICAgICAgICAgICAg ICAgICBmaWxlX2RhdGEtPmZpbGVfbmFtZSk7DQo+Pg0KPj4gLSAgdW5zaWdu ZWQgY2hhciAqdGFibGUgPSBnZ2NfY2xlYXJlZF92ZWNfYWxsb2M8dW5zaWdu ZWQgY2hhcj4gKDEgPDwgOCk7DQo+PiAtICBmaWxlX2RhdGEtPm1vZGVfdGFi bGUgPSB0YWJsZTsNCj4+ICAgIGNvbnN0IHN0cnVjdCBsdG9fc2ltcGxlX2hl YWRlcl93aXRoX3N0cmluZ3MgKmhlYWRlcg0KPj4gICAgICA9IChjb25zdCBz dHJ1Y3QgbHRvX3NpbXBsZV9oZWFkZXJfd2l0aF9zdHJpbmdzICopIGRhdGE7 DQo+PiAgICBpbnQgc3RyaW5nX29mZnNldDsNCj4+IEBAIC0xOTk4LDE2ICsx OTk2LDIyIEBAIGx0b19pbnB1dF9tb2RlX3RhYmxlIChzdHJ1Y3QgbHRvX2Zp bGVfZGVjbF9kYXRhICpmaWxlX2RhdGEpDQo+PiAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICBoZWFkZXItPnN0cmluZ19zaXplLCB2TlVMTCk7DQo+ PiAgICBiaXRwYWNrX2QgYnAgPSBzdHJlYW1lcl9yZWFkX2JpdHBhY2sgKCZp Yik7DQo+Pg0KPj4gKyAgdW5zaWduZWQgbW9kZV9iaXRzID0gYnBfdW5wYWNr X3ZhbHVlICgmYnAsIDUpOw0KPj4gKyAgdW5zaWduZWQgY2hhciAqdGFibGUg PSBnZ2NfY2xlYXJlZF92ZWNfYWxsb2M8dW5zaWduZWQgY2hhcj4gKDEgPDwg bW9kZV9iaXRzKTsNCj4+ICsNCj4+ICsgIGZpbGVfZGF0YS0+bW9kZV90YWJs ZSA9IHRhYmxlOw0KPj4gKyAgZmlsZV9kYXRhLT5tb2RlX2JpdHMgPSBtb2Rl X2JpdHM7DQo+PiArDQo+PiAgICB0YWJsZVtWT0lEbW9kZV0gPSBWT0lEbW9k ZTsNCj4+ICAgIHRhYmxlW0JMS21vZGVdID0gQkxLbW9kZTsNCj4+ICAgIHVu c2lnbmVkIGludCBtOw0KPj4gLSAgd2hpbGUgKChtID0gYnBfdW5wYWNrX3Zh bHVlICgmYnAsIDgpKSAhPSBWT0lEbW9kZSkNCj4+ICsgIHdoaWxlICgobSA9 IGJwX3VucGFja192YWx1ZSAoJmJwLCBtb2RlX2JpdHMpKSAhPSBWT0lEbW9k ZSkNCj4+ICAgICAgew0KPj4gICAgICAgIGVudW0gbW9kZV9jbGFzcyBtY2xh c3MNCj4+ICAgICAgID0gYnBfdW5wYWNrX2VudW0gKCZicCwgbW9kZV9jbGFz cywgTUFYX01PREVfQ0xBU1MpOw0KPj4gICAgICAgIHBvbHlfdWludDE2IHNp emUgPSBicF91bnBhY2tfcG9seV92YWx1ZSAoJmJwLCAxNik7DQo+PiAgICAg ICAgcG9seV91aW50MTYgcHJlYyA9IGJwX3VucGFja19wb2x5X3ZhbHVlICgm YnAsIDE2KTsNCj4+IC0gICAgICBtYWNoaW5lX21vZGUgaW5uZXIgPSAobWFj aGluZV9tb2RlKSBicF91bnBhY2tfdmFsdWUgKCZicCwgOCk7DQo+PiArICAg ICAgbWFjaGluZV9tb2RlIGlubmVyID0gKG1hY2hpbmVfbW9kZSkgYnBfdW5w YWNrX3ZhbHVlICgmYnAsIG1vZGVfYml0cyk7DQo+PiAgICAgICAgcG9seV91 aW50MTYgbnVuaXRzID0gYnBfdW5wYWNrX3BvbHlfdmFsdWUgKCZicCwgMTYp Ow0KPj4gICAgICAgIHVuc2lnbmVkIGludCBpYml0ID0gMCwgZmJpdCA9IDA7 DQo+PiAgICAgICAgdW5zaWduZWQgaW50IHJlYWxfZm10X2xlbiA9IDA7DQo+ PiBkaWZmIC0tZ2l0IGEvZ2NjL2x0by1zdHJlYW1lci1vdXQuY2MgYi9nY2Mv bHRvLXN0cmVhbWVyLW91dC5jYw0KPj4gaW5kZXggNWFiMmViNDMwMWUuLjM2 ODk5MjgzZGVkIDEwMDY0NA0KPj4gLS0tIGEvZ2NjL2x0by1zdHJlYW1lci1v dXQuY2MNCj4+ICsrKyBiL2djYy9sdG8tc3RyZWFtZXItb3V0LmNjDQo+PiBA QCAtMzE5Niw2ICszMTk2LDExIEBAIGx0b193cml0ZV9tb2RlX3RhYmxlICh2 b2lkKQ0KPj4gICAgICAgaWYgKGlubmVyX20gIT0gbSkNCj4+ICAgICAgICAg c3RyZWFtZXJfbW9kZV90YWJsZVsoaW50KSBpbm5lcl9tXSA9IDE7DQo+PiAg ICAgICAgfQ0KPj4gKw0KPj4gKyAgLyogUGFjayB0aGUgbW9kZV9iaXRzIHZh bHVlIHdpdGhpbiA1IGJpdHMgKHVwIHRvIDMxKSBpbiB0aGUgYmVnaW5uaW5n LiAgKi8NCj4+ICsgIHVuc2lnbmVkIG1vZGVfYml0cyA9IGNlaWxfbG9nMiAo TUFYX01BQ0hJTkVfTU9ERSk7DQo+PiArICBicF9wYWNrX3ZhbHVlICgmYnAs IG1vZGVfYml0cywgNSk7DQo+PiArDQo+PiAgICAvKiBGaXJzdCBzdHJlYW0g bW9kZXMgdGhhdCBoYXZlIEdFVF9NT0RFX0lOTkVSIChtKSA9PSBtLA0KPj4g ICAgICAgc28gdGhhdCB3ZSBjYW4gcmVmZXIgdG8gdGhlbSBhZnRlcndhcmRz LiAgKi8NCj4+ICAgIGZvciAoaW50IHBhc3MgPSAwOyBwYXNzIDwgMjsgcGFz cysrKQ0KPj4gQEAgLTMyMDUsMTEgKzMyMTAsMTEgQEAgbHRvX3dyaXRlX21v ZGVfdGFibGUgKHZvaWQpDQo+PiAgICAgICAgIG1hY2hpbmVfbW9kZSBtID0g KG1hY2hpbmVfbW9kZSkgaTsNCj4+ICAgICAgICAgaWYgKChHRVRfTU9ERV9J Tk5FUiAobSkgPT0gbSkgXiAocGFzcyA9PSAwKSkNCj4+ICAgICAgICAgICBj b250aW51ZTsNCj4+IC0gICAgICAgYnBfcGFja192YWx1ZSAoJmJwLCBtLCA4 KTsNCj4+ICsgICAgICAgYnBfcGFja192YWx1ZSAoJmJwLCBtLCBtb2RlX2Jp dHMpOw0KPj4gICAgICAgICBicF9wYWNrX2VudW0gKCZicCwgbW9kZV9jbGFz cywgTUFYX01PREVfQ0xBU1MsIEdFVF9NT0RFX0NMQVNTIChtKSk7DQo+PiAg ICAgICAgIGJwX3BhY2tfcG9seV92YWx1ZSAoJmJwLCBHRVRfTU9ERV9TSVpF IChtKSwgMTYpOw0KPj4gICAgICAgICBicF9wYWNrX3BvbHlfdmFsdWUgKCZi cCwgR0VUX01PREVfUFJFQ0lTSU9OIChtKSwgMTYpOw0KPj4gLSAgICAgICBi cF9wYWNrX3ZhbHVlICgmYnAsIEdFVF9NT0RFX0lOTkVSIChtKSwgOCk7DQo+ PiArICAgICAgIGJwX3BhY2tfdmFsdWUgKCZicCwgR0VUX01PREVfSU5ORVIg KG0pLCBtb2RlX2JpdHMpOw0KPj4gICAgICAgICBicF9wYWNrX3BvbHlfdmFs dWUgKCZicCwgR0VUX01PREVfTlVOSVRTIChtKSwgMTYpOw0KPj4gICAgICAg ICBzd2l0Y2ggKEdFVF9NT0RFX0NMQVNTIChtKSkNCj4+ICAgICAgICAgICB7 DQo+PiBAQCAtMzIyOSw3ICszMjM0LDcgQEAgbHRvX3dyaXRlX21vZGVfdGFi bGUgKHZvaWQpDQo+PiAgICAgICAgICAgfQ0KPj4gICAgICAgICBicF9wYWNr X3N0cmluZyAob2IsICZicCwgR0VUX01PREVfTkFNRSAobSksIHRydWUpOw0K Pj4gICAgICAgfQ0KPj4gLSAgYnBfcGFja192YWx1ZSAoJmJwLCBWT0lEbW9k ZSwgOCk7DQo+PiArICBicF9wYWNrX3ZhbHVlICgmYnAsIFZPSURtb2RlLCBt b2RlX2JpdHMpOw0KPj4NCj4+ICAgIHN0cmVhbWVyX3dyaXRlX2JpdHBhY2sg KCZicCk7DQo+Pg0KPj4gZGlmZiAtLWdpdCBhL2djYy9sdG8tc3RyZWFtZXIu aCBiL2djYy9sdG8tc3RyZWFtZXIuaA0KPj4gaW5kZXggZmM3MTMzZDA3YmEu LjQ0M2YwY2Q2MTZlIDEwMDY0NA0KPj4gLS0tIGEvZ2NjL2x0by1zdHJlYW1l ci5oDQo+PiArKysgYi9nY2MvbHRvLXN0cmVhbWVyLmgNCj4+IEBAIC02MDQs NiArNjA0LDggQEAgc3RydWN0IEdUWSgoKSkgbHRvX2ZpbGVfZGVjbF9kYXRh DQo+PiAgICBpbnQgb3JkZXJfYmFzZTsNCj4+DQo+PiAgICBpbnQgdW5pdF9i YXNlOw0KPj4gKw0KPj4gKyAgdW5zaWduZWQgbW9kZV9iaXRzOw0KPj4gIH07 DQo+Pg0KPj4gIHR5cGVkZWYgc3RydWN0IGx0b19maWxlX2RlY2xfZGF0YSAq bHRvX2ZpbGVfZGVjbF9kYXRhX3B0cjsNCj4+IGRpZmYgLS1naXQgYS9nY2Mv dHJlZS1zdHJlYW1lci5jYyBiL2djYy90cmVlLXN0cmVhbWVyLmNjDQo+PiBp bmRleCBlZDY1YTc2OTJlMy4uYTI4ZWY5Yzc5MjAgMTAwNjQ0DQo+PiAtLS0g YS9nY2MvdHJlZS1zdHJlYW1lci5jYw0KPj4gKysrIGIvZ2NjL3RyZWUtc3Ry ZWFtZXIuY2MNCj4+IEBAIC0zNSw3ICszNSw3IEBAIGFsb25nIHdpdGggR0ND OyBzZWUgdGhlIGZpbGUgQ09QWUlORzMuICBJZiBub3Qgc2VlDQo+PiAgICAg RHVyaW5nIHN0cmVhbWluZyBpbiwgd2UgdHJhbnNsYXRlIHRoZSBvbiB0aGUg ZGlzayBtb2RlIHVzaW5nIHRoaXMNCj4+ICAgICB0YWJsZS4gIEZvciBub3Jt YWwgTFRPIGl0IGlzIHNldCB0byBpZGVudGl0eSwgZm9yIEFDQ0VMX0NPTVBJ TEVSDQo+PiAgICAgZGVwZW5kaW5nIG9uIHRoZSBtb2RlX3RhYmxlIGNvbnRl bnQuICAqLw0KPj4gLXVuc2lnbmVkIGNoYXIgc3RyZWFtZXJfbW9kZV90YWJs ZVsxIDw8IDhdOw0KPj4gK3Vuc2lnbmVkIGNoYXIgc3RyZWFtZXJfbW9kZV90 YWJsZVtNQVhfTUFDSElORV9NT0RFXTsNCj4+DQo+PiAgLyogQ2hlY2sgdGhh dCBhbGwgdGhlIFRTXyogc3RydWN0dXJlcyBoYW5kbGVkIGJ5IHRoZSBzdHJl YW1lcl93cml0ZV8qIGFuZA0KPj4gICAgIHN0cmVhbWVyX3JlYWRfKiByb3V0 aW5lcyBhcmUgZXhhY3RseSBBTEwgdGhlIHN0cnVjdHVyZXMgZGVmaW5lZCBp bg0KPj4gZGlmZiAtLWdpdCBhL2djYy90cmVlLXN0cmVhbWVyLmggYi9nY2Mv dHJlZS1zdHJlYW1lci5oDQo+PiBpbmRleCAxNzBkNjFjZjIwYi4uZmY4YmNj ZjkwMWEgMTAwNjQ0DQo+PiAtLS0gYS9nY2MvdHJlZS1zdHJlYW1lci5oDQo+ PiArKysgYi9nY2MvdHJlZS1zdHJlYW1lci5oDQo+PiBAQCAtNzUsNyArNzUs NyBAQCB2b2lkIHN0cmVhbWVyX3dyaXRlX3RyZWVfYm9keSAoc3RydWN0IG91 dHB1dF9ibG9jayAqLCB0cmVlKTsNCj4+ICB2b2lkIHN0cmVhbWVyX3dyaXRl X2ludGVnZXJfY3N0IChzdHJ1Y3Qgb3V0cHV0X2Jsb2NrICosIHRyZWUpOw0K Pj4NCj4+ICAvKiBJbiB0cmVlLXN0cmVhbWVyLmNjLiAgKi8NCj4+IC1leHRl cm4gdW5zaWduZWQgY2hhciBzdHJlYW1lcl9tb2RlX3RhYmxlWzEgPDwgOF07 DQo+PiArZXh0ZXJuIHVuc2lnbmVkIGNoYXIgc3RyZWFtZXJfbW9kZV90YWJs ZVtNQVhfTUFDSElORV9NT0RFXTsNCj4+ICB2b2lkIHN0cmVhbWVyX2NoZWNr X2hhbmRsZWRfdHNfc3RydWN0dXJlcyAodm9pZCk7DQo+PiAgYm9vbCBzdHJl YW1lcl90cmVlX2NhY2hlX2luc2VydCAoc3RydWN0IHN0cmVhbWVyX3RyZWVf Y2FjaGVfZCAqLCB0cmVlLA0KPj4gICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIGhhc2h2YWxfdCwgdW5zaWduZWQgKik7DQo+PiBAQCAtMTA4LDE1 ICsxMDgsMTkgQEAgaW5saW5lIHZvaWQNCj4+ICBicF9wYWNrX21hY2hpbmVf bW9kZSAoc3RydWN0IGJpdHBhY2tfZCAqYnAsIG1hY2hpbmVfbW9kZSBtb2Rl KQ0KPj4gIHsNCj4+ICAgIHN0cmVhbWVyX21vZGVfdGFibGVbbW9kZV0gPSAx Ow0KPj4gLSAgYnBfcGFja19lbnVtIChicCwgbWFjaGluZV9tb2RlLCAxIDw8 IDgsIG1vZGUpOw0KPj4gKyAgaW50IGxhc3QgPSAxIDw8IGNlaWxfbG9nMiAo TUFYX01BQ0hJTkVfTU9ERSk7DQo+PiArDQo+PiArICBicF9wYWNrX2VudW0g KGJwLCBtYWNoaW5lX21vZGUsIGxhc3QsIG1vZGUpOw0KPj4gIH0NCj4+DQo+ PiAgaW5saW5lIG1hY2hpbmVfbW9kZQ0KPj4gIGJwX3VucGFja19tYWNoaW5l X21vZGUgKHN0cnVjdCBiaXRwYWNrX2QgKmJwKQ0KPj4gIHsNCj4+IC0gIHJl dHVybiAobWFjaGluZV9tb2RlKQ0KPj4gLSAgICAgICAgKChjbGFzcyBsdG9f aW5wdXRfYmxvY2sgKikNCj4+IC0gICAgICAgICBicC0+c3RyZWFtKS0+bW9k ZV90YWJsZVticF91bnBhY2tfZW51bSAoYnAsIG1hY2hpbmVfbW9kZSwgMSA8 PCA4KV07DQo+PiArICBpbnQgbGFzdCA9IDEgPDwgY2VpbF9sb2cyIChNQVhf TUFDSElORV9NT0RFKTsNCj4+ICsgIGx0b19pbnB1dF9ibG9jayAqaW5wdXRf YmxvY2sgPSAoY2xhc3MgbHRvX2lucHV0X2Jsb2NrICopIGJwLT5zdHJlYW07 DQo+PiArICBpbnQgaW5kZXggPSBicF91bnBhY2tfZW51bSAoYnAsIG1hY2hp bmVfbW9kZSwgbGFzdCk7DQo+PiArDQo+PiArICByZXR1cm4gKG1hY2hpbmVf bW9kZSkgaW5wdXRfYmxvY2stPm1vZGVfdGFibGVbaW5kZXhdOw0KPj4gIH0N Cj4+DQo+PiAgI2VuZGlmICAvKiBHQ0NfVFJFRV9TVFJFQU1FUl9IICAqLw0K Pj4gLS0NCj4+IDIuMzQuMQ0KLS0tLS0tLS0tLS0tLS0tLS0NClNpZW1lbnMg RWxlY3Ryb25pYyBEZXNpZ24gQXV0b21hdGlvbiBHbWJIOyBBbnNjaHJpZnQ6 IEFybnVsZnN0cmHDn2UgMjAxLCA4MDYzNCBNw7xuY2hlbjsgR2VzZWxsc2No YWZ0IG1pdCBiZXNjaHLDpG5rdGVyIEhhZnR1bmc7IEdlc2Now6RmdHNmw7xo cmVyOiBUaG9tYXMgSGV1cnVuZywgRnJhbmsgVGjDvHJhdWY7IFNpdHogZGVy IEdlc2VsbHNjaGFmdDogTcO8bmNoZW47IFJlZ2lzdGVyZ2VyaWNodCBNw7xu Y2hlbiwgSFJCIDEwNjk1NQ0KIA0K ------=_001_NextPart033131324662_=------