From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ville =?iso-8859-1?Q?Syrj=E4l=E4?= Subject: Re: [Intel-gfx] [PATCH 15/23] drm: Stop updating plane->crtc/fb/old_fb on atomic drivers Date: Tue, 27 Mar 2018 12:44:56 +0300 Message-ID: <20180327094456.GJ5453@intel.com> References: <20180322152313.6561-1-ville.syrjala@linux.intel.com> <20180322152313.6561-16-ville.syrjala@linux.intel.com> <20180327075741.GL14155@phenom.ffwll.local> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Content-Disposition: inline In-Reply-To: <20180327075741.GL14155@phenom.ffwll.local> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: Daniel Vetter Cc: intel-gfx@lists.freedesktop.org, dri-devel@lists.freedesktop.org List-Id: dri-devel@lists.freedesktop.org T24gVHVlLCBNYXIgMjcsIDIwMTggYXQgMDk6NTc6NDFBTSArMDIwMCwgRGFuaWVsIFZldHRlciB3 cm90ZToKPiBPbiBUaHUsIE1hciAyMiwgMjAxOCBhdCAwNToyMzowNVBNICswMjAwLCBWaWxsZSBT eXJqYWxhIHdyb3RlOgo+ID4gRnJvbTogVmlsbGUgU3lyasOkbMOkIDx2aWxsZS5zeXJqYWxhQGxp bnV4LmludGVsLmNvbT4KPiA+IAo+ID4gU3RvcCBwbGF5aW5nIGFyb3VuZCB3aXRoIHBsYW5lLT5j cnRjL2ZiL29sZF9mYiB3aXRoIGF0b21pYwo+ID4gZHJpdmVycy4gTWFrZSBsaWZlIGEgbG90IHNp bXBsZXIgd2hlbiB3ZSBkb24ndCBoYXZlIHRvIGRvIHRoZQo+ID4gbWFnaWMgb2xkX2ZiIHZzLiBm YiBkYW5jZSBhcm91bmQgcGxhbmUgdXBkYXRlcy4gVGhhdCB3YXkgd2UKPiA+IGNhbid0IHJpc2sg cGxhbmUtPmZiIGdldHRpbmcgb3V0IG9mIHN5bmMgd2l0aCBwbGFuZS0+c3RhdGUtPmZiCj4gPiBh bmQgd2UncmUgbGVzcyBsaWtlbHkgdG8gbGVhayBhbnkgcmVmY291bnRzIGFzIHdlbGwuCj4gPiAK PiA+IFNpZ25lZC1vZmYtYnk6IFZpbGxlIFN5cmrDpGzDpCA8dmlsbGUuc3lyamFsYUBsaW51eC5p bnRlbC5jb20+Cj4gCj4gV2hhdCdzIHRoZSByZWFzb24gZm9yIHRoaXMgcGF0Y2ggYmVpbmcgaW4g dGhlIG1pZGRsZSBvZiB0aGUgcGF0Y2ggc2VyaWVzPwo+IEkgZmlndXJlZCBpdCdzIHNhdmVzdCBp ZiB3ZSBwdXQgdGhpcyBhdCB0aGUgZW5kPyBJZiB5b3UgbmVlZCBwYXJ0cyBvZiB0aGlzCj4gaGVy ZSwgd2UgZGVmaW5pdGVseSBuZWVkIHRvIHNwbGl0IG91dCB0aGUgV0FSTl9PTiBodW5rLCBzaW5j ZSB5b3UgaGF2ZW4ndAo+IGZpeGVkIHVwIGV2ZXJ5dGhpbmcgeWV0IGF0IHRoaXMgcG9pbnQgaGVy ZS4KClllYWgsIHRoZSBvcmRlcmluZyBpcyBwcm9iYWJseSBub3QgZ3JlYXQuIEkgdGhpbmsgSSBo YWQgc29tZSBpZGVhIHdoeQpJIGhhZCB0byBkbyAiY2xlYW51cCBkcml2ZXJzIGEgYml0LCBkbyBj b3JlL2hlbHBlciBzdHVmZiwgY2xlYW51cCBzb21lCm1vcmUgZHJpdmVycywgZG8gb3RoZXIgY29y ZS9oZWxwZXIgc3R1ZmYiLiBCdXQgSSBjYW4ndCBldmVuIHJlY2FsbCB0aGF0CnJlYXNvbiBub3cu IE1vc3QgbGlrZWx5IEkgaGFkIGp1c3QgbWFuYWdlZCB0byBjb25mdXNlIG15c2VsZiBieSB0aGF0 CnRpbWUuCgo+IC1EYW5pZWwKPiAKPiA+IC0tLQo+ID4gIGRyaXZlcnMvZ3B1L2RybS9kcm1fYXRv bWljLmMgICAgICAgIHwgNTUgKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQo+ ID4gIGRyaXZlcnMvZ3B1L2RybS9kcm1fYXRvbWljX2hlbHBlci5jIHwgMTUgKy0tLS0tLS0tLQo+ ID4gIGRyaXZlcnMvZ3B1L2RybS9kcm1fY3J0Yy5jICAgICAgICAgIHwgIDggKysrKy0tCj4gPiAg ZHJpdmVycy9ncHUvZHJtL2RybV9mYl9oZWxwZXIuYyAgICAgfCAgNyAtLS0tLQo+ID4gIGRyaXZl cnMvZ3B1L2RybS9kcm1fZnJhbWVidWZmZXIuYyAgIHwgIDUgLS0tLQo+ID4gIGRyaXZlcnMvZ3B1 L2RybS9kcm1fcGxhbmUuYyAgICAgICAgIHwgMTQgKysrKysrLS0tLQo+ID4gIGRyaXZlcnMvZ3B1 L2RybS9kcm1fcGxhbmVfaGVscGVyLmMgIHwgIDQgKystCj4gPiAgaW5jbHVkZS9kcm0vZHJtX2F0 b21pYy5oICAgICAgICAgICAgfCAgMyAtLQo+ID4gIDggZmlsZXMgY2hhbmdlZCwgMjQgaW5zZXJ0 aW9ucygrKSwgODcgZGVsZXRpb25zKC0pCj4gPiAKPiA+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dw dS9kcm0vZHJtX2F0b21pYy5jIGIvZHJpdmVycy9ncHUvZHJtL2RybV9hdG9taWMuYwo+ID4gaW5k ZXggN2QyNWM0MmYyMmRiLi5iMTZjYzM3ZTJhZGYgMTAwNjQ0Cj4gPiAtLS0gYS9kcml2ZXJzL2dw dS9kcm0vZHJtX2F0b21pYy5jCj4gPiArKysgYi9kcml2ZXJzL2dwdS9kcm0vZHJtX2F0b21pYy5j Cj4gPiBAQCAtNjkyLDYgKzY5MiwxMSBAQCBkcm1fYXRvbWljX2dldF9wbGFuZV9zdGF0ZShzdHJ1 Y3QgZHJtX2F0b21pY19zdGF0ZSAqc3RhdGUsCj4gPiAgCj4gPiAgCVdBUk5fT04oIXN0YXRlLT5h Y3F1aXJlX2N0eCk7Cj4gPiAgCj4gPiArCS8qIHRoZSBsZWdhY3kgcG9pbnRlcnMgc2hvdWxkIG5l dmVyIGJlIHNldCAqLwo+ID4gKwlXQVJOX09OKHBsYW5lLT5mYik7Cj4gPiArCVdBUk5fT04ocGxh bmUtPm9sZF9mYik7Cj4gPiArCVdBUk5fT04ocGxhbmUtPmNydGMpOwo+ID4gKwo+ID4gIAlwbGFu ZV9zdGF0ZSA9IGRybV9hdG9taWNfZ2V0X2V4aXN0aW5nX3BsYW5lX3N0YXRlKHN0YXRlLCBwbGFu ZSk7Cj4gPiAgCWlmIChwbGFuZV9zdGF0ZSkKPiA+ICAJCXJldHVybiBwbGFuZV9zdGF0ZTsKPiA+ IEBAIC0yMDIxLDQ1ICsyMDI2LDYgQEAgaW50IGRybV9hdG9taWNfc2V0X3Byb3BlcnR5KHN0cnVj dCBkcm1fYXRvbWljX3N0YXRlICpzdGF0ZSwKPiA+ICAJcmV0dXJuIHJldDsKPiA+ICB9Cj4gPiAg Cj4gPiAtLyoqCj4gPiAtICogZHJtX2F0b21pY19jbGVhbl9vbGRfZmIgLS0gVW5zZXQgb2xkX2Zi IHBvaW50ZXJzIGFuZCBzZXQgcGxhbmUtPmZiIHBvaW50ZXJzLgo+ID4gLSAqCj4gPiAtICogQGRl djogZHJtIGRldmljZSB0byBjaGVjay4KPiA+IC0gKiBAcGxhbmVfbWFzazogcGxhbmUgbWFzayBm b3IgcGxhbmVzIHRoYXQgd2VyZSB1cGRhdGVkLgo+ID4gLSAqIEByZXQ6IHJldHVybiB2YWx1ZSwg Y2FuIGJlIC1FREVBRExLIGZvciBhIHJldHJ5Lgo+ID4gLSAqCj4gPiAtICogQmVmb3JlIGRvaW5n IGFuIHVwZGF0ZSAmZHJtX3BsYW5lLm9sZF9mYiBpcyBzZXQgdG8gJmRybV9wbGFuZS5mYiwgYnV0 IGJlZm9yZQo+ID4gLSAqIGRyb3BwaW5nIHRoZSBsb2NrcyBvbGRfZmIgbmVlZHMgdG8gYmUgc2V0 IHRvIE5VTEwgYW5kIHBsYW5lLT5mYiB1cGRhdGVkLiBUaGlzCj4gPiAtICogaXMgYSBjb21tb24g b3BlcmF0aW9uIGZvciBlYWNoIGF0b21pYyB1cGRhdGUsIHNvIHRoaXMgY2FsbCBpcyBzcGxpdCBv ZmYgYXMgYQo+ID4gLSAqIGhlbHBlci4KPiA+IC0gKi8KPiA+IC12b2lkIGRybV9hdG9taWNfY2xl YW5fb2xkX2ZiKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYsCj4gPiAtCQkJICAgICB1bnNpZ25lZCBw bGFuZV9tYXNrLAo+ID4gLQkJCSAgICAgaW50IHJldCkKPiA+IC17Cj4gPiAtCXN0cnVjdCBkcm1f cGxhbmUgKnBsYW5lOwo+ID4gLQo+ID4gLQkvKiBpZiBzdWNjZWVkZWQsIGZpeHVwIGxlZ2FjeSBw bGFuZSBjcnRjL2ZiIHB0cnMgYmVmb3JlIGRyb3BwaW5nCj4gPiAtCSAqIGxvY2tzIChpZS4gd2hp bGUgaXQgaXMgc3RpbGwgc2FmZSB0byBkZXJlZiBwbGFuZS0+c3RhdGUpLiAgV2UKPiA+IC0JICog bmVlZCB0byBkbyB0aGlzIGhlcmUgYmVjYXVzZSB0aGUgZHJpdmVyIGVudHJ5IHBvaW50cyBjYW5u b3QKPiA+IC0JICogZGlzdGluZ3Vpc2ggYmV0d2VlbiBsZWdhY3kgYW5kIGF0b21pYyBpb2N0bHMu Cj4gPiAtCSAqLwo+ID4gLQlkcm1fZm9yX2VhY2hfcGxhbmVfbWFzayhwbGFuZSwgZGV2LCBwbGFu ZV9tYXNrKSB7Cj4gPiAtCQlpZiAocmV0ID09IDApIHsKPiA+IC0JCQlzdHJ1Y3QgZHJtX2ZyYW1l YnVmZmVyICpuZXdfZmIgPSBwbGFuZS0+c3RhdGUtPmZiOwo+ID4gLQkJCWlmIChuZXdfZmIpCj4g PiAtCQkJCWRybV9mcmFtZWJ1ZmZlcl9nZXQobmV3X2ZiKTsKPiA+IC0JCQlwbGFuZS0+ZmIgPSBu ZXdfZmI7Cj4gPiAtCQkJcGxhbmUtPmNydGMgPSBwbGFuZS0+c3RhdGUtPmNydGM7Cj4gPiAtCj4g PiAtCQkJaWYgKHBsYW5lLT5vbGRfZmIpCj4gPiAtCQkJCWRybV9mcmFtZWJ1ZmZlcl9wdXQocGxh bmUtPm9sZF9mYik7Cj4gPiAtCQl9Cj4gPiAtCQlwbGFuZS0+b2xkX2ZiID0gTlVMTDsKPiA+IC0J fQo+ID4gLX0KPiA+IC1FWFBPUlRfU1lNQk9MKGRybV9hdG9taWNfY2xlYW5fb2xkX2ZiKTsKPiA+ IC0KPiA+ICAvKioKPiA+ICAgKiBET0M6IGV4cGxpY2l0IGZlbmNpbmcgcHJvcGVydGllcwo+ID4g ICAqCj4gPiBAQCAtMjI4MCw5ICsyMjQ2LDcgQEAgaW50IGRybV9tb2RlX2F0b21pY19pb2N0bChz dHJ1Y3QgZHJtX2RldmljZSAqZGV2LAo+ID4gIAl1bnNpZ25lZCBpbnQgY29waWVkX29ianMsIGNv cGllZF9wcm9wczsKPiA+ICAJc3RydWN0IGRybV9hdG9taWNfc3RhdGUgKnN0YXRlOwo+ID4gIAlz dHJ1Y3QgZHJtX21vZGVzZXRfYWNxdWlyZV9jdHggY3R4Owo+ID4gLQlzdHJ1Y3QgZHJtX3BsYW5l ICpwbGFuZTsKPiA+ICAJc3RydWN0IGRybV9vdXRfZmVuY2Vfc3RhdGUgKmZlbmNlX3N0YXRlOwo+ ID4gLQl1bnNpZ25lZCBwbGFuZV9tYXNrOwo+ID4gIAlpbnQgcmV0ID0gMDsKPiA+ICAJdW5zaWdu ZWQgaW50IGksIGosIG51bV9mZW5jZXM7Cj4gPiAgCj4gPiBAQCAtMjMyMiw3ICsyMjg2LDYgQEAg aW50IGRybV9tb2RlX2F0b21pY19pb2N0bChzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LAo+ID4gIAlz dGF0ZS0+YWxsb3dfbW9kZXNldCA9ICEhKGFyZy0+ZmxhZ3MgJiBEUk1fTU9ERV9BVE9NSUNfQUxM T1dfTU9ERVNFVCk7Cj4gPiAgCj4gPiAgcmV0cnk6Cj4gPiAtCXBsYW5lX21hc2sgPSAwOwo+ID4g IAljb3BpZWRfb2JqcyA9IDA7Cj4gPiAgCWNvcGllZF9wcm9wcyA9IDA7Cj4gPiAgCWZlbmNlX3N0 YXRlID0gTlVMTDsKPiA+IEBAIC0yMzkzLDEyICsyMzU2LDYgQEAgaW50IGRybV9tb2RlX2F0b21p Y19pb2N0bChzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LAo+ID4gIAkJCWNvcGllZF9wcm9wcysrOwo+ ID4gIAkJfQo+ID4gIAo+ID4gLQkJaWYgKG9iai0+dHlwZSA9PSBEUk1fTU9ERV9PQkpFQ1RfUExB TkUgJiYgY291bnRfcHJvcHMgJiYKPiA+IC0JCSAgICAhKGFyZy0+ZmxhZ3MgJiBEUk1fTU9ERV9B VE9NSUNfVEVTVF9PTkxZKSkgewo+ID4gLQkJCXBsYW5lID0gb2JqX3RvX3BsYW5lKG9iaik7Cj4g PiAtCQkJcGxhbmVfbWFzayB8PSAoMSA8PCBkcm1fcGxhbmVfaW5kZXgocGxhbmUpKTsKPiA+IC0J CQlwbGFuZS0+b2xkX2ZiID0gcGxhbmUtPmZiOwo+ID4gLQkJfQo+ID4gIAkJZHJtX21vZGVfb2Jq ZWN0X3B1dChvYmopOwo+ID4gIAl9Cj4gPiAgCj4gPiBAQCAtMjQxOSw4ICsyMzc2LDYgQEAgaW50 IGRybV9tb2RlX2F0b21pY19pb2N0bChzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LAo+ID4gIAl9Cj4g PiAgCj4gPiAgb3V0Ogo+ID4gLQlkcm1fYXRvbWljX2NsZWFuX29sZF9mYihkZXYsIHBsYW5lX21h c2ssIHJldCk7Cj4gPiAtCj4gPiAgCWNvbXBsZXRlX2NydGNfc2lnbmFsaW5nKGRldiwgc3RhdGUs IGZlbmNlX3N0YXRlLCBudW1fZmVuY2VzLCAhcmV0KTsKPiA+ICAKPiA+ICAJaWYgKHJldCA9PSAt RURFQURMSykgewo+ID4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9kcm1fYXRvbWljX2hl bHBlci5jIGIvZHJpdmVycy9ncHUvZHJtL2RybV9hdG9taWNfaGVscGVyLmMKPiA+IGluZGV4IDBl ODA2ZjA3MGQwMC4uZDQyZDg4Yjk3Mzk2IDEwMDY0NAo+ID4gLS0tIGEvZHJpdmVycy9ncHUvZHJt L2RybV9hdG9taWNfaGVscGVyLmMKPiA+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9kcm1fYXRvbWlj X2hlbHBlci5jCj4gPiBAQCAtMjg5Miw3ICsyODkyLDYgQEAgc3RhdGljIGludCBfX2RybV9hdG9t aWNfaGVscGVyX2Rpc2FibGVfYWxsKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYsCj4gPiAgCXN0cnVj dCBkcm1fcGxhbmUgKnBsYW5lOwo+ID4gIAlzdHJ1Y3QgZHJtX2NydGNfc3RhdGUgKmNydGNfc3Rh dGU7Cj4gPiAgCXN0cnVjdCBkcm1fY3J0YyAqY3J0YzsKPiA+IC0JdW5zaWduZWQgaW50IHBsYW5l X21hc2sgPSAwOwo+ID4gIAlpbnQgcmV0LCBpOwo+ID4gIAo+ID4gIAlzdGF0ZSA9IGRybV9hdG9t aWNfc3RhdGVfYWxsb2MoZGV2KTsKPiA+IEBAIC0yOTM1LDE3ICsyOTM0LDEwIEBAIHN0YXRpYyBp bnQgX19kcm1fYXRvbWljX2hlbHBlcl9kaXNhYmxlX2FsbChzdHJ1Y3QgZHJtX2RldmljZSAqZGV2 LAo+ID4gIAkJCWdvdG8gZnJlZTsKPiA+ICAKPiA+ICAJCWRybV9hdG9taWNfc2V0X2ZiX2Zvcl9w bGFuZShwbGFuZV9zdGF0ZSwgTlVMTCk7Cj4gPiAtCj4gPiAtCQlpZiAoY2xlYW5fb2xkX2Zicykg ewo+ID4gLQkJCXBsYW5lLT5vbGRfZmIgPSBwbGFuZS0+ZmI7Cj4gPiAtCQkJcGxhbmVfbWFzayB8 PSBCSVQoZHJtX3BsYW5lX2luZGV4KHBsYW5lKSk7Cj4gPiAtCQl9Cj4gPiAgCX0KPiA+ICAKPiA+ ICAJcmV0ID0gZHJtX2F0b21pY19jb21taXQoc3RhdGUpOwo+ID4gIGZyZWU6Cj4gPiAtCWRybV9h dG9taWNfY2xlYW5fb2xkX2ZiKGRldiwgcGxhbmVfbWFzaywgcmV0KTsKPiA+IC0KPiA+ICAJZHJt X2F0b21pY19zdGF0ZV9wdXQoc3RhdGUpOwo+ID4gIAlyZXR1cm4gcmV0Owo+ID4gIH0KPiA+IEBA IC0zMTA2LDEzICszMDk4LDggQEAgaW50IGRybV9hdG9taWNfaGVscGVyX2NvbW1pdF9kdXBsaWNh dGVkX3N0YXRlKHN0cnVjdCBkcm1fYXRvbWljX3N0YXRlICpzdGF0ZSwKPiA+ICAKPiA+ICAJc3Rh dGUtPmFjcXVpcmVfY3R4ID0gY3R4Owo+ID4gIAo+ID4gLQlmb3JfZWFjaF9uZXdfcGxhbmVfaW5f c3RhdGUoc3RhdGUsIHBsYW5lLCBuZXdfcGxhbmVfc3RhdGUsIGkpIHsKPiA+IC0JCVdBUk5fT04o cGxhbmUtPmNydGMgIT0gbmV3X3BsYW5lX3N0YXRlLT5jcnRjKTsKPiA+IC0JCVdBUk5fT04ocGxh bmUtPmZiICE9IG5ld19wbGFuZV9zdGF0ZS0+ZmIpOwo+ID4gLQkJV0FSTl9PTihwbGFuZS0+b2xk X2ZiKTsKPiA+IC0KPiA+ICsJZm9yX2VhY2hfbmV3X3BsYW5lX2luX3N0YXRlKHN0YXRlLCBwbGFu ZSwgbmV3X3BsYW5lX3N0YXRlLCBpKQo+ID4gIAkJc3RhdGUtPnBsYW5lc1tpXS5vbGRfc3RhdGUg PSBwbGFuZS0+c3RhdGU7Cj4gPiAtCX0KPiA+ICAKPiA+ICAJZm9yX2VhY2hfbmV3X2NydGNfaW5f c3RhdGUoc3RhdGUsIGNydGMsIG5ld19jcnRjX3N0YXRlLCBpKQo+ID4gIAkJc3RhdGUtPmNydGNz W2ldLm9sZF9zdGF0ZSA9IGNydGMtPnN0YXRlOwo+ID4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1 L2RybS9kcm1fY3J0Yy5jIGIvZHJpdmVycy9ncHUvZHJtL2RybV9jcnRjLmMKPiA+IGluZGV4IGEy MzFkZDVkY2UxNi4uNGUzYzFhOGQxMThhIDEwMDY0NAo+ID4gLS0tIGEvZHJpdmVycy9ncHUvZHJt L2RybV9jcnRjLmMKPiA+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9kcm1fY3J0Yy5jCj4gPiBAQCAt NDc0LDggKzQ3NCwxMiBAQCBzdGF0aWMgaW50IF9fZHJtX21vZGVfc2V0X2NvbmZpZ19pbnRlcm5h bChzdHJ1Y3QgZHJtX21vZGVfc2V0ICpzZXQsCj4gPiAgCj4gPiAgCXJldCA9IGNydGMtPmZ1bmNz LT5zZXRfY29uZmlnKHNldCwgY3R4KTsKPiA+ICAJaWYgKHJldCA9PSAwKSB7Cj4gPiAtCQljcnRj LT5wcmltYXJ5LT5jcnRjID0gZmIgPyBjcnRjIDogTlVMTDsKPiA+IC0JCWNydGMtPnByaW1hcnkt PmZiID0gZmI7Cj4gPiArCQlzdHJ1Y3QgZHJtX3BsYW5lICpwbGFuZSA9IGNydGMtPnByaW1hcnk7 Cj4gPiArCj4gPiArCQlpZiAoIXBsYW5lLT5zdGF0ZSkgewo+ID4gKwkJCXBsYW5lLT5jcnRjID0g ZmIgPyBjcnRjIDogTlVMTDsKPiA+ICsJCQlwbGFuZS0+ZmIgPSBmYjsKPiA+ICsJCX0KPiA+ICAJ fQo+ID4gIAo+ID4gIAlkcm1fZm9yX2VhY2hfY3J0Yyh0bXAsIGNydGMtPmRldikgewo+ID4gZGlm ZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9kcm1fZmJfaGVscGVyLmMgYi9kcml2ZXJzL2dwdS9k cm0vZHJtX2ZiX2hlbHBlci5jCj4gPiBpbmRleCAwNjQ2YjEwODAzMGIuLjU2MzllODA0YTBjZCAx MDA2NDQKPiA+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9kcm1fZmJfaGVscGVyLmMKPiA+ICsrKyBi L2RyaXZlcnMvZ3B1L2RybS9kcm1fZmJfaGVscGVyLmMKPiA+IEBAIC0zNjgsNyArMzY4LDYgQEAg c3RhdGljIGludCByZXN0b3JlX2ZiZGV2X21vZGVfYXRvbWljKHN0cnVjdCBkcm1fZmJfaGVscGVy ICpmYl9oZWxwZXIsIGJvb2wgYWN0aXYKPiA+ICAJc3RydWN0IGRybV9wbGFuZSAqcGxhbmU7Cj4g PiAgCXN0cnVjdCBkcm1fYXRvbWljX3N0YXRlICpzdGF0ZTsKPiA+ICAJaW50IGksIHJldDsKPiA+ IC0JdW5zaWduZWQgaW50IHBsYW5lX21hc2s7Cj4gPiAgCXN0cnVjdCBkcm1fbW9kZXNldF9hY3F1 aXJlX2N0eCBjdHg7Cj4gPiAgCj4gPiAgCWRybV9tb2Rlc2V0X2FjcXVpcmVfaW5pdCgmY3R4LCAw KTsKPiA+IEBAIC0zODEsNyArMzgwLDYgQEAgc3RhdGljIGludCByZXN0b3JlX2ZiZGV2X21vZGVf YXRvbWljKHN0cnVjdCBkcm1fZmJfaGVscGVyICpmYl9oZWxwZXIsIGJvb2wgYWN0aXYKPiA+ICAK PiA+ICAJc3RhdGUtPmFjcXVpcmVfY3R4ID0gJmN0eDsKPiA+ICByZXRyeToKPiA+IC0JcGxhbmVf bWFzayA9IDA7Cj4gPiAgCWRybV9mb3JfZWFjaF9wbGFuZShwbGFuZSwgZGV2KSB7Cj4gPiAgCQlw bGFuZV9zdGF0ZSA9IGRybV9hdG9taWNfZ2V0X3BsYW5lX3N0YXRlKHN0YXRlLCBwbGFuZSk7Cj4g PiAgCQlpZiAoSVNfRVJSKHBsYW5lX3N0YXRlKSkgewo+ID4gQEAgLTM5MSw5ICszODksNiBAQCBz dGF0aWMgaW50IHJlc3RvcmVfZmJkZXZfbW9kZV9hdG9taWMoc3RydWN0IGRybV9mYl9oZWxwZXIg KmZiX2hlbHBlciwgYm9vbCBhY3Rpdgo+ID4gIAo+ID4gIAkJcGxhbmVfc3RhdGUtPnJvdGF0aW9u ID0gRFJNX01PREVfUk9UQVRFXzA7Cj4gPiAgCj4gPiAtCQlwbGFuZS0+b2xkX2ZiID0gcGxhbmUt PmZiOwo+ID4gLQkJcGxhbmVfbWFzayB8PSAxIDw8IGRybV9wbGFuZV9pbmRleChwbGFuZSk7Cj4g PiAtCj4gPiAgCQkvKiBkaXNhYmxlIG5vbi1wcmltYXJ5OiAqLwo+ID4gIAkJaWYgKHBsYW5lLT50 eXBlID09IERSTV9QTEFORV9UWVBFX1BSSU1BUlkpCj4gPiAgCQkJY29udGludWU7Cj4gPiBAQCAt NDMwLDggKzQyNSw2IEBAIHN0YXRpYyBpbnQgcmVzdG9yZV9mYmRldl9tb2RlX2F0b21pYyhzdHJ1 Y3QgZHJtX2ZiX2hlbHBlciAqZmJfaGVscGVyLCBib29sIGFjdGl2Cj4gPiAgCXJldCA9IGRybV9h dG9taWNfY29tbWl0KHN0YXRlKTsKPiA+ICAKPiA+ICBvdXRfc3RhdGU6Cj4gPiAtCWRybV9hdG9t aWNfY2xlYW5fb2xkX2ZiKGRldiwgcGxhbmVfbWFzaywgcmV0KTsKPiA+IC0KPiA+ICAJaWYgKHJl dCA9PSAtRURFQURMSykKPiA+ICAJCWdvdG8gYmFja29mZjsKPiA+ICAKPiA+IGRpZmYgLS1naXQg YS9kcml2ZXJzL2dwdS9kcm0vZHJtX2ZyYW1lYnVmZmVyLmMgYi9kcml2ZXJzL2dwdS9kcm0vZHJt X2ZyYW1lYnVmZmVyLmMKPiA+IGluZGV4IGFkNjcyMDNkZTcxNS4uNDIxYTc3YzJhNGFjIDEwMDY0 NAo+ID4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL2RybV9mcmFtZWJ1ZmZlci5jCj4gPiArKysgYi9k cml2ZXJzL2dwdS9kcm0vZHJtX2ZyYW1lYnVmZmVyLmMKPiA+IEBAIC04MzUsOCArODM1LDYgQEAg c3RhdGljIGludCBhdG9taWNfcmVtb3ZlX2ZiKHN0cnVjdCBkcm1fZnJhbWVidWZmZXIgKmZiKQo+ ID4gIAkJCWdvdG8gdW5sb2NrOwo+ID4gIAo+ID4gIAkJcGxhbmVfbWFzayB8PSBCSVQoZHJtX3Bs YW5lX2luZGV4KHBsYW5lKSk7Cj4gPiAtCj4gPiAtCQlwbGFuZS0+b2xkX2ZiID0gcGxhbmUtPmZi Owo+ID4gIAl9Cj4gPiAgCj4gPiAgCS8qIFRoaXMgbGlzdCBpcyBvbmx5IGZpbGxlZCB3aGVuIGRp c2FibGVfY3J0Y3MgaXMgc2V0LiAqLwo+ID4gQEAgLTg1MSw5ICs4NDksNiBAQCBzdGF0aWMgaW50 IGF0b21pY19yZW1vdmVfZmIoc3RydWN0IGRybV9mcmFtZWJ1ZmZlciAqZmIpCj4gPiAgCQlyZXQg PSBkcm1fYXRvbWljX2NvbW1pdChzdGF0ZSk7Cj4gPiAgCj4gPiAgdW5sb2NrOgo+ID4gLQlpZiAo cGxhbmVfbWFzaykKPiA+IC0JCWRybV9hdG9taWNfY2xlYW5fb2xkX2ZiKGRldiwgcGxhbmVfbWFz aywgcmV0KTsKPiA+IC0KPiA+ICAJaWYgKHJldCA9PSAtRURFQURMSykgewo+ID4gIAkJZHJtX2F0 b21pY19zdGF0ZV9jbGVhcihzdGF0ZSk7Cj4gPiAgCQlkcm1fbW9kZXNldF9iYWNrb2ZmKCZjdHgp Owo+ID4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9kcm1fcGxhbmUuYyBiL2RyaXZlcnMv Z3B1L2RybS9kcm1fcGxhbmUuYwo+ID4gaW5kZXggMDM1MDU0NDU1MzAxLi4xNDMwNDE2NjYwOTYg MTAwNjQ0Cj4gPiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vZHJtX3BsYW5lLmMKPiA+ICsrKyBiL2Ry aXZlcnMvZ3B1L2RybS9kcm1fcGxhbmUuYwo+ID4gQEAgLTY1MCw5ICs2NTAsMTEgQEAgc3RhdGlj IGludCBfX3NldHBsYW5lX2ludGVybmFsKHN0cnVjdCBkcm1fcGxhbmUgKnBsYW5lLAo+ID4gIAkJ CQkJIGNydGNfeCwgY3J0Y195LCBjcnRjX3csIGNydGNfaCwKPiA+ICAJCQkJCSBzcmNfeCwgc3Jj X3ksIHNyY193LCBzcmNfaCwgY3R4KTsKPiA+ICAJaWYgKCFyZXQpIHsKPiA+IC0JCXBsYW5lLT5j cnRjID0gY3J0YzsKPiA+IC0JCXBsYW5lLT5mYiA9IGZiOwo+ID4gLQkJZHJtX2ZyYW1lYnVmZmVy X2dldChwbGFuZS0+ZmIpOwo+ID4gKwkJaWYgKCFwbGFuZS0+c3RhdGUpIHsKPiA+ICsJCQlwbGFu ZS0+Y3J0YyA9IGNydGM7Cj4gPiArCQkJcGxhbmUtPmZiID0gZmI7Cj4gPiArCQkJZHJtX2ZyYW1l YnVmZmVyX2dldChwbGFuZS0+ZmIpOwo+ID4gKwkJfQo+ID4gIAl9IGVsc2Ugewo+ID4gIAkJcGxh bmUtPm9sZF9mYiA9IE5VTEw7Cj4gPiAgCX0KPiA+IEBAIC0xMDkyLDggKzEwOTQsMTAgQEAgaW50 IGRybV9tb2RlX3BhZ2VfZmxpcF9pb2N0bChzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LAo+ID4gIAkJ LyogS2VlcCB0aGUgb2xkIGZiLCBkb24ndCB1bnJlZiBpdC4gKi8KPiA+ICAJCXBsYW5lLT5vbGRf ZmIgPSBOVUxMOwo+ID4gIAl9IGVsc2Ugewo+ID4gLQkJcGxhbmUtPmZiID0gZmI7Cj4gPiAtCQlk cm1fZnJhbWVidWZmZXJfZ2V0KGZiKTsKPiA+ICsJCWlmICghcGxhbmUtPnN0YXRlKSB7Cj4gPiAr CQkJcGxhbmUtPmZiID0gZmI7Cj4gPiArCQkJZHJtX2ZyYW1lYnVmZmVyX2dldChmYik7Cj4gPiAr CQl9Cj4gPiAgCX0KPiA+ICAKPiA+ICBvdXQ6Cj4gPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUv ZHJtL2RybV9wbGFuZV9oZWxwZXIuYyBiL2RyaXZlcnMvZ3B1L2RybS9kcm1fcGxhbmVfaGVscGVy LmMKPiA+IGluZGV4IGY4OGY2ODE2MTUxOS4uMjAxMDc5NDk0M2JjIDEwMDY0NAo+ID4gLS0tIGEv ZHJpdmVycy9ncHUvZHJtL2RybV9wbGFuZV9oZWxwZXIuYwo+ID4gKysrIGIvZHJpdmVycy9ncHUv ZHJtL2RybV9wbGFuZV9oZWxwZXIuYwo+ID4gQEAgLTUwMiw2ICs1MDIsNyBAQCBFWFBPUlRfU1lN Qk9MKGRybV9wbGFuZV9oZWxwZXJfdXBkYXRlKTsKPiA+ICBpbnQgZHJtX3BsYW5lX2hlbHBlcl9k aXNhYmxlKHN0cnVjdCBkcm1fcGxhbmUgKnBsYW5lKQo+ID4gIHsKPiA+ICAJc3RydWN0IGRybV9w bGFuZV9zdGF0ZSAqcGxhbmVfc3RhdGU7Cj4gPiArCXN0cnVjdCBkcm1fZnJhbWVidWZmZXIgKm9s ZF9mYjsKPiA+ICAKPiA+ICAJLyogY3J0YyBoZWxwZXJzIGxvdmUgdG8gY2FsbCBkaXNhYmxlIGZ1 bmN0aW9ucyBmb3IgYWxyZWFkeSBkaXNhYmxlZCBodwo+ID4gIAkgKiBmdW5jdGlvbnMuIFNvIGNv cGUgd2l0aCB0aGF0LiAqLwo+ID4gQEAgLTUyMSw4ICs1MjIsOSBAQCBpbnQgZHJtX3BsYW5lX2hl bHBlcl9kaXNhYmxlKHN0cnVjdCBkcm1fcGxhbmUgKnBsYW5lKQo+ID4gIAlwbGFuZV9zdGF0ZS0+ cGxhbmUgPSBwbGFuZTsKPiA+ICAKPiA+ICAJcGxhbmVfc3RhdGUtPmNydGMgPSBOVUxMOwo+ID4g KwlvbGRfZmIgPSBwbGFuZV9zdGF0ZS0+ZmI7Cj4gPiAgCWRybV9hdG9taWNfc2V0X2ZiX2Zvcl9w bGFuZShwbGFuZV9zdGF0ZSwgTlVMTCk7Cj4gPiAgCj4gPiAtCXJldHVybiBkcm1fcGxhbmVfaGVs cGVyX2NvbW1pdChwbGFuZSwgcGxhbmVfc3RhdGUsIHBsYW5lLT5mYik7Cj4gPiArCXJldHVybiBk cm1fcGxhbmVfaGVscGVyX2NvbW1pdChwbGFuZSwgcGxhbmVfc3RhdGUsIG9sZF9mYik7Cj4gPiAg fQo+ID4gIEVYUE9SVF9TWU1CT0woZHJtX3BsYW5lX2hlbHBlcl9kaXNhYmxlKTsKPiA+IGRpZmYg LS1naXQgYS9pbmNsdWRlL2RybS9kcm1fYXRvbWljLmggYi9pbmNsdWRlL2RybS9kcm1fYXRvbWlj LmgKPiA+IGluZGV4IGE1N2E4YWE5MGZmYi4uY2E0NjFiNmNmNzFmIDEwMDY0NAo+ID4gLS0tIGEv aW5jbHVkZS9kcm0vZHJtX2F0b21pYy5oCj4gPiArKysgYi9pbmNsdWRlL2RybS9kcm1fYXRvbWlj LmgKPiA+IEBAIC02MDEsOSArNjAxLDYgQEAgaW50IF9fbXVzdF9jaGVjawo+ID4gIGRybV9hdG9t aWNfYWRkX2FmZmVjdGVkX3BsYW5lcyhzdHJ1Y3QgZHJtX2F0b21pY19zdGF0ZSAqc3RhdGUsCj4g PiAgCQkJICAgICAgIHN0cnVjdCBkcm1fY3J0YyAqY3J0Yyk7Cj4gPiAgCj4gPiAtdm9pZAo+ID4g LWRybV9hdG9taWNfY2xlYW5fb2xkX2ZiKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYsIHVuc2lnbmVk IHBsYW5lX21hc2ssIGludCByZXQpOwo+ID4gLQo+ID4gIGludCBfX211c3RfY2hlY2sgZHJtX2F0 b21pY19jaGVja19vbmx5KHN0cnVjdCBkcm1fYXRvbWljX3N0YXRlICpzdGF0ZSk7Cj4gPiAgaW50 IF9fbXVzdF9jaGVjayBkcm1fYXRvbWljX2NvbW1pdChzdHJ1Y3QgZHJtX2F0b21pY19zdGF0ZSAq c3RhdGUpOwo+ID4gIGludCBfX211c3RfY2hlY2sgZHJtX2F0b21pY19ub25ibG9ja2luZ19jb21t aXQoc3RydWN0IGRybV9hdG9taWNfc3RhdGUgKnN0YXRlKTsKPiA+IC0tIAo+ID4gMi4xNi4xCj4g PiAKPiA+IF9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCj4g PiBJbnRlbC1nZnggbWFpbGluZyBsaXN0Cj4gPiBJbnRlbC1nZnhAbGlzdHMuZnJlZWRlc2t0b3Au b3JnCj4gPiBodHRwczovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2lu dGVsLWdmeAo+IAo+IC0tIAo+IERhbmllbCBWZXR0ZXIKPiBTb2Z0d2FyZSBFbmdpbmVlciwgSW50 ZWwgQ29ycG9yYXRpb24KPiBodHRwOi8vYmxvZy5mZndsbC5jaAoKLS0gClZpbGxlIFN5cmrDpGzD pApJbnRlbCBPVEMKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X18KZHJpLWRldmVsIG1haWxpbmcgbGlzdApkcmktZGV2ZWxAbGlzdHMuZnJlZWRlc2t0b3Aub3Jn Cmh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vZHJpLWRldmVs Cg==