From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ian Campbell Subject: Re: [PATCH DOCDAY] netif.h: describe request/response structures in terms of binary layout Date: Wed, 25 Feb 2015 13:19:26 +0000 Message-ID: <1424870366.20243.94.camel@citrix.com> References: <1424866610-27163-1-git-send-email-ian.campbell@citrix.com> <54EDC743.3000207@citrix.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <54EDC743.3000207@citrix.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Sender: xen-devel-bounces@lists.xen.org Errors-To: xen-devel-bounces@lists.xen.org To: Andrew Cooper Cc: Wei Liu , ian.jackson@eu.citrix.com, tim@xen.org, xen-devel@lists.xen.org, jbeulich@suse.com, keir@xen.org, Roger Pau =?ISO-8859-1?Q?Monn=E9?= List-Id: xen-devel@lists.xenproject.org T24gV2VkLCAyMDE1LTAyLTI1IGF0IDEyOjU5ICswMDAwLCBBbmRyZXcgQ29vcGVyIHdyb3RlOgo+ IE9uIDI1LzAyLzE1IDEyOjE2LCBJYW4gQ2FtcGJlbGwgd3JvdGU6Cj4gPiBJbiBSRkMgc3R5bGUs IHJhdGhlciB0aGFuIHJlbHlpbmcgb24gdGhlIGltcGxpY2l0IGFzc3VtcHRpb25zIG9mIGEKPiA+ IHBhcnRpY3VsYXIgQyBBQkkuCj4gPgo+ID4gSSBoYXZlIGFsc28gY29uZmlybWVkLCB1c2luZyB0 aGUgUHl0aG9uIGdkYiBleHRlbnNpb24gdGVjaG5pcXVlIGluCj4gPiBbMF0sIHRoYXQgdGhlIHN0 cnVjdCBvZmZzZXRzIChpbiBhIExpbnV4IGJpbmFyeSBhdCBsZWFzdCkgYXJlIHRoZSBzYW1lCj4g PiBhcyBkZXNjcmliZWQgaGVyZS4KPiA+Cj4gPiBJIHRvb2sgdGhlIG9wcG9ydHVuaXR5IHRvIGFs c28gY29uZmlybSB0aGF0IHg4Nl8zMiwgeDg2XzY0LCBhcm0zMiBhbmQKPiA+IGFybTY0IGFyZSBh bGwgdGhlIHNhbWUuCj4gPgo+ID4gVGhpcyBoaWdobGlnaHRlZCB0aGF0IHN0cnVjdCBuZXRpZl9y eF9yZXF1ZXN0IHdhcyBtaXNzaW5nIHNvbWUKPiA+IGV4cGxpY2l0IHBhZGRpbmcsIHdoaWNoIGlz IGFkZGVkIGhlcmUuCj4gPgo+ID4gTGFzdGx5LCBmaXh1cCBzb21lIHN0cnVjdCBuYW1lcyB0byBh bGxvdyB0aGUgZ2VuZXJhdGVkIGRvY3MgdG8KPiA+IHByb3Blcmx5IGh5cGVybGluaywgbWFpbmx5 IGJ5IGFkZGluZyB0aGUgX3QgdG8gdHlwZSBuYW1lcyB3aGVyZQo+ID4gYXBwcm9wcmlhdGUsIGJ1 dCBhbHNvIHMvbmV0aWZfdHhfZXh0cmEvbmV0aWZfZXh0cmFfaW5mb190Ly4KPiA+Cj4gPiBbXSBo dHRwOi8vc3RhY2tvdmVyZmxvdy5jb20vcXVlc3Rpb25zLzk3ODg2NzkvaG93LXRvLWdldC10aGUt cmVsYXRpdmUtYWRyZXNzLW9mLWEtZmllbGQtaW4tYS1zdHJ1Y3R1cmUtZHVtcC1jLAo+ID4KPiA+ IFNpZ25lZC1vZmYtYnk6IElhbiBDYW1wYmVsbCA8aWFuLmNhbXBiZWxsQGNpdHJpeC5jb20+Cj4g PiBDYzogUm9nZXIgUGF1IE1vbm7DqSA8cm9nZXIucGF1QGNpdHJpeC5jb20+Cj4gPiBDYzogV2Vp IExpdSA8d2VpLmxpdTJAY2l0cml4LmNvbT4KPiAKPiBJIGRvbid0IHNlZSBhbnkgbWVudGlvbiBv ZiBlbmRpYW5uZXNzLCBlaXRoZXIgcHJlZXhpc3RpbmcgaW4gdGhlIGZpbGUsCj4gb3IgcGFydCBv ZiB0aGlzIHBhdGNoLgoKSSBndWVzcyB0aGF0IGlzIG1vcmUgYSBwcm9wZXJ0eSBvZiB0aGUgWEVO X0lPX1BST1RPX0FCSV8qIG5lZ290aWF0ZWQgYnkKZnJvbnQgYW5kIGJhY2sgdGhhbiB0aGUgaW5k aXZpZHVhbCBwdiBwcm90b2NvbHMgKGF0IGxlYXN0IGJ5IGRlZmF1bHQsCmkuZS4gdW5sZXNzIHRo ZSBzcGVjaWZpYyBmb29pZi5oIHNheXMgb3RoZXJ3aXNlKS4KClRoZXJlIGlzIHByb2JhYmx5IHNw YWNlIHRvIG1ha2UgdGhhdCBjbGVhcmVyIG92ZXJhbGwsIGJ1dCBJIHRoaW5rIHRoYXQncwpvcnRo b2dvbmFsIHRvIHRoaXMgcGF0Y2guCgo+IAo+IE90aGVyIHRoYW4gdGhhdCwgdGhlIGNoYW5nZXMg bG9vayBnb29kLgoKVGhhbmtzLgoKPiAKPiB+QW5kcmV3Cj4gCj4gPiAtLS0KPiA+ICB4ZW4vaW5j bHVkZS9wdWJsaWMvaW8vbmV0aWYuaCB8ICAxMzcgKysrKysrKysrKysrKysrKysrKysrKysrKysr KysrKysrKysrKystLS0KPiA+ICAxIGZpbGUgY2hhbmdlZCwgMTI3IGluc2VydGlvbnMoKyksIDEw IGRlbGV0aW9ucygtKQo+ID4KPiA+IGRpZmYgLS1naXQgYS94ZW4vaW5jbHVkZS9wdWJsaWMvaW8v bmV0aWYuaCBiL3hlbi9pbmNsdWRlL3B1YmxpYy9pby9uZXRpZi5oCj4gPiBpbmRleCA2MWU5YWVh Li4wM2IxNGZlIDEwMDY0NAo+ID4gLS0tIGEveGVuL2luY2x1ZGUvcHVibGljL2lvL25ldGlmLmgK PiA+ICsrKyBiL3hlbi9pbmNsdWRlL3B1YmxpYy9pby9uZXRpZi5oCj4gPiBAQCAtMTM3LDEzICsx MzcsMTI5IEBACj4gPiAgCj4gPiAgLyoKPiA+ICAgKiBUaGlzIGlzIHRoZSAnd2lyZScgZm9ybWF0 IGZvciBwYWNrZXRzOgo+ID4gLSAqICBSZXF1ZXN0IDE6IG5ldGlmX3R4X3JlcXVlc3QgLS0gTkVU VFhGXyogKGFueSBmbGFncykKPiA+IC0gKiBbUmVxdWVzdCAyOiBuZXRpZl90eF9leHRyYV0gIChv bmx5IGlmIHJlcXVlc3QgMSBoYXMgTkVUVFhGX2V4dHJhX2luZm8pCj4gPiAtICogW1JlcXVlc3Qg MzogbmV0aWZfdHhfZXh0cmFdICAob25seSBpZiByZXF1ZXN0IDIgaGFzIFhFTl9ORVRJRl9FWFRS QV9NT1JFKQo+ID4gLSAqICBSZXF1ZXN0IDQ6IG5ldGlmX3R4X3JlcXVlc3QgLS0gTkVUVFhGX21v cmVfZGF0YQo+ID4gLSAqICBSZXF1ZXN0IDU6IG5ldGlmX3R4X3JlcXVlc3QgLS0gTkVUVFhGX21v cmVfZGF0YQo+ID4gKyAqICBSZXF1ZXN0IDE6IG5ldGlmX3R4X3JlcXVlc3RfdCAtLSBORVRUWEZf KiAoYW55IGZsYWdzKQo+ID4gKyAqIFtSZXF1ZXN0IDI6IG5ldGlmX2V4dHJhX2luZm9fdF0gKG9u bHkgaWYgcmVxdWVzdCAxIGhhcyBORVRUWEZfZXh0cmFfaW5mbykKPiA+ICsgKiBbUmVxdWVzdCAz OiBuZXRpZl9leHRyYV9pbmZvX3RdIChvbmx5IGlmIHJlcXVlc3QgMiBoYXMgWEVOX05FVElGX0VY VFJBX01PUkUpCj4gPiArICogIFJlcXVlc3QgNDogbmV0aWZfdHhfcmVxdWVzdF90IC0tIE5FVFRY Rl9tb3JlX2RhdGEKPiA+ICsgKiAgUmVxdWVzdCA1OiBuZXRpZl90eF9yZXF1ZXN0X3QgLS0gTkVU VFhGX21vcmVfZGF0YQo+ID4gICAqICAuLi4KPiA+IC0gKiAgUmVxdWVzdCBOOiBuZXRpZl90eF9y ZXF1ZXN0IC0tIDAKPiA+ICsgKiAgUmVxdWVzdCBOOiBuZXRpZl90eF9yZXF1ZXN0X3QgLS0gMAo+ ID4gKyAqLwo+ID4gKwo+ID4gKy8qCj4gPiArICogR3Vlc3QgdHJhbnNtaXQKPiA+ICsgKiA9PT09 PT09PT09PT09PQo+ID4gKyAqCj4gPiArICogUmluZyBzbG90IHNpemUgaXMgMTIgb2N0ZXRzLCBo b3dldmVyIG5vdCBhbGwgcmVxdWVzdC9yZXNwb25zZQo+ID4gKyAqIHN0cnVjdHMgdXNlIHRoZSBm dWxsIHNpemUuCj4gPiArICoKPiA+ICsgKiB0eCByZXF1ZXN0IGRhdGEgKG5ldGlmX3R4X3JlcXVl c3RfdCkKPiA+ICsgKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KPiA+ICsg Kgo+ID4gKyAqICAgIDAgICAgIDEgICAgIDIgICAgIDMgICAgIDQgICAgIDUgICAgIDYgICAgIDcg IG9jdGV0Cj4gPiArICogKy0tLS0tKy0tLS0tKy0tLS0tKy0tLS0tKy0tLS0tKy0tLS0tKy0tLS0t Ky0tLS0tKwo+ID4gKyAqIHwgZ3JhbnQgcmVmICAgICAgICAgICAgIHwgb2Zmc2V0ICAgIHwgZmxh Z3MgICAgIHwKPiA+ICsgKiArLS0tLS0rLS0tLS0rLS0tLS0rLS0tLS0rLS0tLS0rLS0tLS0rLS0t LS0rLS0tLS0rCj4gPiArICogfCBpZCAgICAgICAgfCBzaXplICAgICAgfAo+ID4gKyAqICstLS0t LSstLS0tLSstLS0tLSstLS0tLSsKPiA+ICsgKgo+ID4gKyAqIGdyYW50IHJlZjogUmVmZXJlbmNl IHRvIGJ1ZmZlciBwYWdlLgo+ID4gKyAqIG9mZnNldDogT2Zmc2V0IHdpdGhpbiBidWZmZXIgcGFn ZS4KPiA+ICsgKiBmbGFnczogTkVUVFhGXyouCj4gPiArICogaWQ6IHJlcXVlc3QgaWRlbnRpZmll ciwgZWNob2VkIGluIHJlc3BvbnNlLgo+ID4gKyAqIHNpemU6IHBhY2tldCBzaXplIGluIGJ5dGVz Lgo+ID4gKyAqCj4gPiArICogdHggcmVzcG9uc2UgKG5ldGlmX3R4X3Jlc3BvbnNlX3QpCj4gPiAr ICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCj4gPiArICoKPiA+ICsgKiAgICAw ICAgICAxICAgICAyICAgICAzICAgICA0ICAgICA1ICAgICA2ICAgICA3ICBvY3RldAo+ID4gKyAq ICstLS0tLSstLS0tLSstLS0tLSstLS0tLSstLS0tLSstLS0tLSstLS0tLSstLS0tLSsKPiA+ICsg KiB8IGlkICAgICAgICB8IHN0YXR1cyAgICB8IHVudXNlZCAgICAgICAgICAgICAgICB8Cj4gPiAr ICogKy0tLS0tKy0tLS0tKy0tLS0tKy0tLS0tKy0tLS0tKy0tLS0tKy0tLS0tKy0tLS0tKwo+ID4g KyAqIHwgdW51c2VkICAgICAgICAgICAgICAgIHwKPiA+ICsgKiArLS0tLS0rLS0tLS0rLS0tLS0r LS0tLS0rCj4gPiArICoKPiA+ICsgKiBpZDogcmVmbGVjdHMgaWQgaW4gdHJhbnNtaXQgcmVxdWVz dAo+ID4gKyAqIHN0YXR1czogTkVUSUZfUlNQXyoKPiA+ICsgKgo+ID4gKyAqIEd1ZXN0IHJlY2Vp dmUKPiA+ICsgKiA9PT09PT09PT09PT09Cj4gPiArCj4gPiArICogUmluZyBzbG90IHNpemUgaXMg OCBvY3RldHMuCj4gPiArICoKPiA+ICsgKiByeCByZXF1ZXN0IChuZXRpZl9yeF9yZXF1ZXN0X3Qp Cj4gPiArICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQo+ID4gKyAqCj4gPiArICog ICAgMCAgICAgMSAgICAgMiAgICAgMyAgICAgNCAgICAgNSAgICAgNiAgICAgNyAgb2N0ZXQKPiA+ ICsgKiArLS0tLS0rLS0tLS0rLS0tLS0rLS0tLS0rLS0tLS0rLS0tLS0rLS0tLS0rLS0tLS0rCj4g PiArICogfCBpZCAgICAgICAgfCBwYWQgICAgICAgfCBncmVmICAgICAgICAgICAgICAgICAgfAo+ ID4gKyAqICstLS0tLSstLS0tLSstLS0tLSstLS0tLSstLS0tLSstLS0tLSstLS0tLSstLS0tLSsK PiA+ICsgKgo+ID4gKyAqIGlkOiByZXF1ZXN0IGlkZW50aWZpZXIsIGVjaG9lZCBpbiByZXNwb25z ZS4KPiA+ICsgKiBncmVmOiByZWZlcmVuY2UgdG8gaW5jb21pbmcgZ3JhbnRlZCBmcmFtZS4KPiA+ ICsgKgo+ID4gKyAqIHJ4IHJlc3BvbnNlIChuZXRpZl9yeF9yZXNwb25zZV90KQo+ID4gKyAqIC0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQo+ID4gKyAqCj4gPiArICogICAgMCAgICAg MSAgICAgMiAgICAgMyAgICAgNCAgICAgNSAgICAgNiAgICAgNyAgb2N0ZXQKPiA+ICsgKiArLS0t LS0rLS0tLS0rLS0tLS0rLS0tLS0rLS0tLS0rLS0tLS0rLS0tLS0rLS0tLS0rCj4gPiArICogfCBp ZCAgICAgICAgfCBvZmZzZXQgICAgfCBmbGFncyAgICAgfCBzdGF0dXMgICAgfAo+ID4gKyAqICst LS0tLSstLS0tLSstLS0tLSstLS0tLSstLS0tLSstLS0tLSstLS0tLSstLS0tLSsKPiA+ICsgKgo+ ID4gKyAqIGlkOiByZWZsZWN0cyBpZCBpbiByZWNlaXZlIHJlcXVlc3QKPiA+ICsgKiBvZmZzZXQ6 IG9mZnNldCBpbiBwYWdlIG9mIHN0YXJ0IG9mIHJlY2VpdmVkIHBhY2tldAo+ID4gKyAqIGZsYWdz OiBORVRSWEZfKgo+ID4gKyAqIHN0YXR1czogLXZlOiBORVRJRl9SU1BfKjsgK3ZlOiBSeCdlZCBw a3Qgc2l6ZS4KPiA+ICsgKgo+ID4gKyAqIEV4dHJhIEluZm8KPiA+ICsgKiA9PT09PT09PT09Cj4g PiArICoKPiA+ICsgKiBDYW4gYmUgcHJlc2VudCBpZiBpbml0aWFsIHJlcXVlc3QgaGFzIE5FVHtU LFJ9WEZfZXh0cmFfaW5mbywgb3IKPiA+ICsgKiBwcmV2aW91cyBleHRyYSByZXF1ZXN0IGhhcyBY RU5fTkVUSUZfRVhUUkFfTU9SRS4KPiA+ICsgKgo+ID4gKyAqIFRoZSBzdHJ1Y3QgdGhlcmVmb3Jl IG5lZWRzIHRvIGZpdCBpbnRvIGVpdGhlciBhIHR4IG9yIHJ4IHNsb3QgYW5kCj4gPiArICogaXMg dGhlcmVmb3JlIGxpbWl0ZWQgdG8gOCBvY3RldHMuCj4gPiArICoKPiA+ICsgKiBleHRyYSBpbmZv IChuZXRpZl9leHRyYV9pbmZvX3QpCj4gPiArICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLQo+ID4gKyAqCj4gPiArICogR2VuZXJhbCBmb3JtYXQ6Cj4gPiArICoKPiA+ICsgKiAgICAw ICAgICAxICAgICAyICAgICAzICAgICA0ICAgICA1ICAgICA2ICAgICA3ICBvY3RldAo+ID4gKyAq ICstLS0tLSstLS0tLSstLS0tLSstLS0tLSstLS0tLSstLS0tLSstLS0tLSstLS0tLSsKPiA+ICsg KiB8dHlwZSB8ZmxhZ3N8IHR5cGUgc3BlY2ZpYyBkYXRhICAgICAgICAgICAgICAgICB8Cj4gPiAr ICogKy0tLS0tKy0tLS0tKy0tLS0tKy0tLS0tKy0tLS0tKy0tLS0tKy0tLS0tKy0tLS0tKwo+ID4g KyAqIHwgcGFkZGluZyBmb3IgdHggICAgICAgIHwKPiA+ICsgKiArLS0tLS0rLS0tLS0rLS0tLS0r LS0tLS0rCj4gPiArICoKPiA+ICsgKiB0eXBlOiBYRU5fTkVUSUZfRVhUUkFfVFlQRV8qCj4gPiAr ICogZmxhZ3M6IFhFTl9ORVRJRl9FWFRSQV9GTEFHXyoKPiA+ICsgKiBwYWRkaW5nIGZvciB0eDog cHJlc2VudCBvbmx5IGluIHRoZSB0eCBjYXNlIGR1ZSB0byA4IG9jdGV0IGxpbWl0Cj4gPiArICog ICAgIGZyb20gcnggY2FzZS4gTm90IHNob3duIGluIHR5cGUgc3BlY2lmaWMgZW50cmllcyBiZWxv dy4KPiA+ICsgKgo+ID4gKyAqIFhFTl9ORVRJRl9FWFRSQV9UWVBFX0dTTzoKPiA+ICsgKgo+ID4g KyAqICAgIDAgICAgIDEgICAgIDIgICAgIDMgICAgIDQgICAgIDUgICAgIDYgICAgIDcgIG9jdGV0 Cj4gPiArICogKy0tLS0tKy0tLS0tKy0tLS0tKy0tLS0tKy0tLS0tKy0tLS0tKy0tLS0tKy0tLS0t Kwo+ID4gKyAqIHx0eXBlIHxmbGFnc3wgc2l6ZSAgICAgIHx0eXBlIHwgcGFkIHwgZmVhdHVyZXMg IHwKPiA+ICsgKiArLS0tLS0rLS0tLS0rLS0tLS0rLS0tLS0rLS0tLS0rLS0tLS0rLS0tLS0rLS0t LS0rCj4gPiArICoKPiA+ICsgKiB0eXBlOiBNdXN0IGJlIFhFTl9ORVRJRl9FWFRSQV9UWVBFX0dT Two+ID4gKyAqIGZsYWdzOiBYRU5fTkVUSUZfRVhUUkFfRkxBR18qCj4gPiArICogc2l6ZTogTWF4 aW11bSBwYXlsb2FkIHNpemUgb2YgZWFjaCBzZWdtZW50Lgo+ID4gKyAqIHR5cGU6IFhFTl9ORVRJ Rl9HU09fVFlQRV8qCj4gPiArICogZmVhdHVyZXM6IEVOX05FVElGX0dTT19GRUFUXyoKPiA+ICsg Kgo+ID4gKyAqIFhFTl9ORVRJRl9FWFRSQV9UWVBFX01DQVNUX3tBREQsREVMfToKPiA+ICsgKgo+ ID4gKyAqICAgIDAgICAgIDEgICAgIDIgICAgIDMgICAgIDQgICAgIDUgICAgIDYgICAgIDcgIG9j dGV0Cj4gPiArICogKy0tLS0tKy0tLS0tKy0tLS0tKy0tLS0tKy0tLS0tKy0tLS0tKy0tLS0tKy0t LS0tKwo+ID4gKyAqIHx0eXBlIHxmbGFnc3wgYWRkciAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIHwKPiA+ICsgKiArLS0tLS0rLS0tLS0rLS0tLS0rLS0tLS0rLS0tLS0rLS0tLS0rLS0tLS0r LS0tLS0rCj4gPiArICoKPiA+ICsgKiB0eXBlOiBNdXN0IGJlIFhFTl9ORVRJRl9FWFRSQV9UWVBF X01DQVNUX3tBREQsREVMfQo+ID4gKyAqIGZsYWdzOiBYRU5fTkVUSUZfRVhUUkFfRkxBR18qCj4g PiArICogYWRkcjogYWRkcnNzIHRvIGFkZC9yZW1vdmUKPiA+ICAgKi8KPiA+ICAKPiA+ICAvKiBQ cm90b2NvbCBjaGVja3N1bSBmaWVsZCBpcyBibGFuayBpbiB0aGUgcGFja2V0IChoYXJkd2FyZSBv ZmZsb2FkKT8gKi8KPiA+IEBAIC0xNzksNyArMjk1LDcgQEAgdHlwZWRlZiBzdHJ1Y3QgbmV0aWZf dHhfcmVxdWVzdCBuZXRpZl90eF9yZXF1ZXN0X3Q7Cj4gPiAgI2RlZmluZSBYRU5fTkVUSUZfRVhU UkFfVFlQRV9NQ0FTVF9ERUwgKDMpICAvKiB1Lm1jYXN0ICovCj4gPiAgI2RlZmluZSBYRU5fTkVU SUZfRVhUUkFfVFlQRV9NQVggICAgICAgKDQpCj4gPiAgCj4gPiAtLyogbmV0aWZfZXh0cmFfaW5m byBmbGFncy4gKi8KPiA+ICsvKiBuZXRpZl9leHRyYV9pbmZvX3QgZmxhZ3MuICovCj4gPiAgI2Rl ZmluZSBfWEVOX05FVElGX0VYVFJBX0ZMQUdfTU9SRSAoMCkKPiA+ICAjZGVmaW5lIFhFTl9ORVRJ Rl9FWFRSQV9GTEFHX01PUkUgICgxVTw8X1hFTl9ORVRJRl9FWFRSQV9GTEFHX01PUkUpCj4gPiAg Cj4gPiBAQCAtMTg5LDggKzMwNSw4IEBAIHR5cGVkZWYgc3RydWN0IG5ldGlmX3R4X3JlcXVlc3Qg bmV0aWZfdHhfcmVxdWVzdF90Owo+ID4gICNkZWZpbmUgWEVOX05FVElGX0dTT19UWVBFX1RDUFY2 ICAgICAgICAoMikKPiA+ICAKPiA+ICAvKgo+ID4gLSAqIFRoaXMgc3RydWN0dXJlIG5lZWRzIHRv IGZpdCB3aXRoaW4gYm90aCBuZXRpZl90eF9yZXF1ZXN0IGFuZAo+ID4gLSAqIG5ldGlmX3J4X3Jl c3BvbnNlIGZvciBjb21wYXRpYmlsaXR5Lgo+ID4gKyAqIFRoaXMgc3RydWN0dXJlIG5lZWRzIHRv IGZpdCB3aXRoaW4gYm90aCBuZXRpZl90eF9yZXF1ZXN0X3QgYW5kCj4gPiArICogbmV0aWZfcnhf cmVzcG9uc2VfdCBmb3IgY29tcGF0aWJpbGl0eS4KPiA+ICAgKi8KPiA+ICBzdHJ1Y3QgbmV0aWZf ZXh0cmFfaW5mbyB7Cj4gPiAgICAgIHVpbnQ4X3QgdHlwZTsgIC8qIFhFTl9ORVRJRl9FWFRSQV9U WVBFXyogKi8KPiA+IEBAIC0yNTEsNiArMzY3LDcgQEAgdHlwZWRlZiBzdHJ1Y3QgbmV0aWZfdHhf cmVzcG9uc2UgbmV0aWZfdHhfcmVzcG9uc2VfdDsKPiA+ICAKPiA+ICBzdHJ1Y3QgbmV0aWZfcnhf cmVxdWVzdCB7Cj4gPiAgICAgIHVpbnQxNl90ICAgIGlkOyAgICAgICAgLyogRWNob2VkIGluIHJl c3BvbnNlIG1lc3NhZ2UuICAgICAgICAqLwo+ID4gKyAgICB1aW50MTZfdCAgICBwYWQ7Cj4gPiAg ICAgIGdyYW50X3JlZl90IGdyZWY7ICAgICAgLyogUmVmZXJlbmNlIHRvIGluY29taW5nIGdyYW50 ZWQgZnJhbWUgKi8KPiA+ICB9Owo+ID4gIHR5cGVkZWYgc3RydWN0IG5ldGlmX3J4X3JlcXVlc3Qg bmV0aWZfcnhfcmVxdWVzdF90Owo+ID4gQEAgLTI4OSw3ICs0MDYsNyBAQCBERUZJTkVfUklOR19U WVBFUyhuZXRpZl9yeCwgc3RydWN0IG5ldGlmX3J4X3JlcXVlc3QsIHN0cnVjdCBuZXRpZl9yeF9y ZXNwb25zZSk7Cj4gPiAgI2RlZmluZSBORVRJRl9SU1BfRFJPUFBFRCAgICAgICAgIC0yCj4gPiAg I2RlZmluZSBORVRJRl9SU1BfRVJST1IgICAgICAgICAgIC0xCj4gPiAgI2RlZmluZSBORVRJRl9S U1BfT0tBWSAgICAgICAgICAgICAwCj4gPiAtLyogTm8gcmVzcG9uc2U6IHVzZWQgZm9yIGF1eGls aWFyeSByZXF1ZXN0cyAoZS5nLiwgbmV0aWZfdHhfZXh0cmEpLiAqLwo+ID4gKy8qIE5vIHJlc3Bv bnNlOiB1c2VkIGZvciBhdXhpbGlhcnkgcmVxdWVzdHMgKGUuZy4sIG5ldGlmX2V4dHJhX2luZm9f dCkuICovCj4gPiAgI2RlZmluZSBORVRJRl9SU1BfTlVMTCAgICAgICAgICAgICAxCj4gPiAgCj4g PiAgI2VuZGlmCj4gCgoKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fClhlbi1kZXZlbCBtYWlsaW5nIGxpc3QKWGVuLWRldmVsQGxpc3RzLnhlbi5vcmcKaHR0 cDovL2xpc3RzLnhlbi5vcmcveGVuLWRldmVsCg==