From mboxrd@z Thu Jan 1 00:00:00 1970 From: John Hubbard Subject: Re: [PATCH v2 01/15] mm/mmu_notifier: define the header pre-processor parts even if disabled Date: Tue, 5 Nov 2019 13:23:46 -0800 Message-ID: <770248ae-efa1-efae-a978-f52d8510f7b1@nvidia.com> References: <20191028201032.6352-1-jgg@ziepe.ca> <20191028201032.6352-2-jgg@ziepe.ca> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <20191028201032.6352-2-jgg@ziepe.ca> Content-Language: en-US List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: Jason Gunthorpe , linux-mm@kvack.org, Jerome Glisse , Ralph Campbell , Felix.Kuehling@amd.com Cc: Juergen Gross , Mike Marciniszyn , Stefano Stabellini , Oleksandr Andrushchenko , linux-rdma@vger.kernel.org, nouveau@lists.freedesktop.org, Dennis Dalessandro , amd-gfx@lists.freedesktop.org, Christoph Hellwig , Jason Gunthorpe , dri-devel@lists.freedesktop.org, Alex Deucher , xen-devel@lists.xenproject.org, Boris Ostrovsky , Petr Cvek , =?UTF-8?Q?Christian_K=c3=b6nig?= , Ben Skeggs List-Id: amd-gfx.lists.freedesktop.org T24gMTAvMjgvMTkgMToxMCBQTSwgSmFzb24gR3VudGhvcnBlIHdyb3RlOgo+IEZyb206IEphc29u IEd1bnRob3JwZSA8amdnQG1lbGxhbm94LmNvbT4KPiAKPiBOb3cgdGhhdCB3ZSBoYXZlIEtFUk5F TF9IRUFERVJfVEVTVCBhbGwgaGVhZGVycyBhcmUgZ2VuZXJhbGx5IGNvbXBpbGUKPiB0ZXN0ZWQs IHNvIHJlbHlpbmcgb24gbWFrZWZpbGUgdHJpY2tzIHRvIGF2b2lkIGNvbXBpbGluZyBjb2RlIHRo YXQgZGVwZW5kcwo+IG9uIENPTkZJR19NTVVfTk9USUZJRVIgaXMgbW9yZSBhbm5veWluZy4KPiAK PiBJbnN0ZWFkIGZvbGxvdyB0aGUgdXN1YWwgcGF0dGVybiBhbmQgcHJvdmlkZSBtb3N0IG9mIHRo ZSBoZWFkZXIgd2l0aCBvbmx5Cj4gdGhlIGZ1bmN0aW9ucyBzdHViYmVkIG91dCB3aGVuIENPTkZJ R19NTVVfTk9USUZJRVIgaXMgZGlzYWJsZWQuIFRoaXMKPiBlbnN1cmVzIGNvZGUgY29tcGlsZXMg bm8gbWF0dGVyIHdoYXQgdGhlIGNvbmZpZyBzZXR0aW5nIGlzLgo+IAo+IFdoaWxlIGhlcmUsIHN0 cnVjdCBtbXVfbm90aWZpZXJfbW0gaXMgcHJpdmF0ZSB0byBtbXVfbm90aWZpZXIuYywgbW92ZSBp dC4KCmFuZCBjb3JyZWN0IGEgbWlub3Igc3BlbGxpbmcgZXJyb3IgaW4gYSBjb21tZW50LiBHb29k LiA6KQoKPiAKPiBSZXZpZXdlZC1ieTogSsOpcsO0bWUgR2xpc3NlIDxqZ2xpc3NlQHJlZGhhdC5j b20+Cj4gU2lnbmVkLW9mZi1ieTogSmFzb24gR3VudGhvcnBlIDxqZ2dAbWVsbGFub3guY29tPgo+ IC0tLQo+ICBpbmNsdWRlL2xpbnV4L21tdV9ub3RpZmllci5oIHwgNDYgKysrKysrKysrKysrKy0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tCj4gIG1tL21tdV9ub3RpZmllci5jICAgICAgICAgICAgfCAx MyArKysrKysrKysrCj4gIDIgZmlsZXMgY2hhbmdlZCwgMzAgaW5zZXJ0aW9ucygrKSwgMjkgZGVs ZXRpb25zKC0pCj4gCgpCZWNhdXNlIHRoaXMgaXMgY29ycmVjdCBhcy1pcywgeW91IGNhbiBhZGQ6 CgpSZXZpZXdlZC1ieTogSm9obiBIdWJiYXJkIDxqaHViYmFyZEBudmlkaWEuY29tPgoKCi4uLndo ZXRoZXIgb3Igbm90IHlvdSB0YWtlIHRoZSBmb2xsb3dpbmcgcmVjb21tZW5kYXRpb24sIHdoaWNo IGlzOgp5b3UndmUgb25seSBkb25lIHBhcnQgb2YgdGhlIGpvYiBvZiBtYWtpbmcgc3RydWN0IG1t dV9ub3RpZmllcl9tbSAKcHJpdmF0ZSB0byBtbXVfbm90aWZpZXIuYy4gVGhlcmUncyBtb3JlOgoK KiBzdHJ1Y3QgbW11X25vdGlmaWVyX21tIGlzIHJlZmVycmVkIHRvIGluIHR3byBwbGFjZXMgbm93 OiBtbV90eXBlcy5oCiAgYW5kIChzdGlsbCkgbW11X25vdGlmaWVyLmguIFRoZXJlZm9yZToKCiAg ICBhKSBNb3ZlIHRoZSBsYXN0IHR3byB0cmFjZXMgb2YgaXQgb3V0IG9mIG1tdV9ub3RpZmllci5o LCBhbmQKCiAgICBiKSBQdXQgYSBmb3J3YXJkIGRlY2xhcmF0aW9uIGluIG1tX3R5cGVzLmgsIHdo aWNoIGlzIHdoZXJlIGl0CiAgICAgICBiZWxvbmdzIGJlY2F1c2UgdGhhdCdzIHdoZXJlIGl0J3Mg cmVmZXJyZWQgdG8uCgpTbyBpZiB5b3UgYXBwbHkgdGhpcyBpbmNyZW1lbnRhbCBwYXRjaCBvbiB0 b3AsIEkgdGhpbmsgaXQncyB3aGVyZQp5b3Ugd2FudCB0byBiZToKCmRpZmYgLS1naXQgYS9pbmNs dWRlL2xpbnV4L21tX3R5cGVzLmggYi9pbmNsdWRlL2xpbnV4L21tX3R5cGVzLmgKaW5kZXggMjIy MmZhNzk1Mjg0Li5kZjkzYTNjYzBkYTkgMTAwNjQ0Ci0tLSBhL2luY2x1ZGUvbGludXgvbW1fdHlw ZXMuaAorKysgYi9pbmNsdWRlL2xpbnV4L21tX3R5cGVzLmgKQEAgLTI1LDYgKzI1LDcgQEAKIAog c3RydWN0IGFkZHJlc3Nfc3BhY2U7CiBzdHJ1Y3QgbWVtX2Nncm91cDsKK3N0cnVjdCBtbXVfbm90 aWZpZXJfbW07CiAKIC8qCiAgKiBFYWNoIHBoeXNpY2FsIHBhZ2UgaW4gdGhlIHN5c3RlbSBoYXMg YSBzdHJ1Y3QgcGFnZSBhc3NvY2lhdGVkIHdpdGgKZGlmZiAtLWdpdCBhL2luY2x1ZGUvbGludXgv bW11X25vdGlmaWVyLmggYi9pbmNsdWRlL2xpbnV4L21tdV9ub3RpZmllci5oCmluZGV4IDUxYjky YmEwMTNkZC4uODRlZmQyYzUxZjVjIDEwMDY0NAotLS0gYS9pbmNsdWRlL2xpbnV4L21tdV9ub3Rp Zmllci5oCisrKyBiL2luY2x1ZGUvbGludXgvbW11X25vdGlmaWVyLmgKQEAgLTgsNyArOCw2IEBA CiAjaW5jbHVkZSA8bGludXgvc3JjdS5oPgogI2luY2x1ZGUgPGxpbnV4L2ludGVydmFsX3RyZWUu aD4KIAotc3RydWN0IG1tdV9ub3RpZmllcl9tbTsKIHN0cnVjdCBtbXVfbm90aWZpZXI7CiBzdHJ1 Y3QgbW11X25vdGlmaWVyX3JhbmdlOwogc3RydWN0IG1tdV9yYW5nZV9ub3RpZmllcjsKQEAgLTI2 MywxMCArMjYyLDcgQEAgc3RydWN0IG1tdV9ub3RpZmllcl9yYW5nZSB7CiAgICAgICAgZW51bSBt bXVfbm90aWZpZXJfZXZlbnQgZXZlbnQ7CiB9OwogCi1zdGF0aWMgaW5saW5lIGludCBtbV9oYXNf bm90aWZpZXJzKHN0cnVjdCBtbV9zdHJ1Y3QgKm1tKQotewotICAgICAgIHJldHVybiB1bmxpa2Vs eShtbS0+bW11X25vdGlmaWVyX21tKTsKLX0KK2ludCBtbV9oYXNfbm90aWZpZXJzKHN0cnVjdCBt bV9zdHJ1Y3QgKm1tKTsKIAogc3RydWN0IG1tdV9ub3RpZmllciAqbW11X25vdGlmaWVyX2dldF9s b2NrZWQoY29uc3Qgc3RydWN0IG1tdV9ub3RpZmllcl9vcHMgKm9wcywKICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RydWN0IG1tX3N0cnVjdCAqbW0pOwpAQCAt NDc3LDEwICs0NzMsNyBAQCBzdGF0aWMgaW5saW5lIHZvaWQgbW11X25vdGlmaWVyX2ludmFsaWRh dGVfcmFuZ2Uoc3RydWN0IG1tX3N0cnVjdCAqbW0sCiAgICAgICAgICAgICAgICBfX21tdV9ub3Rp Zmllcl9pbnZhbGlkYXRlX3JhbmdlKG1tLCBzdGFydCwgZW5kKTsKIH0KIAotc3RhdGljIGlubGlu ZSB2b2lkIG1tdV9ub3RpZmllcl9tbV9pbml0KHN0cnVjdCBtbV9zdHJ1Y3QgKm1tKQotewotICAg ICAgIG1tLT5tbXVfbm90aWZpZXJfbW0gPSBOVUxMOwotfQordm9pZCBtbXVfbm90aWZpZXJfbW1f aW5pdChzdHJ1Y3QgbW1fc3RydWN0ICptbSk7CiAKIHN0YXRpYyBpbmxpbmUgdm9pZCBtbXVfbm90 aWZpZXJfbW1fZGVzdHJveShzdHJ1Y3QgbW1fc3RydWN0ICptbSkKIHsKZGlmZiAtLWdpdCBhL21t L21tdV9ub3RpZmllci5jIGIvbW0vbW11X25vdGlmaWVyLmMKaW5kZXggMmI3NDg1OTE5ZWNmLi4x MDdmOTQwNmE5MmQgMTAwNjQ0Ci0tLSBhL21tL21tdV9ub3RpZmllci5jCisrKyBiL21tL21tdV9u b3RpZmllci5jCkBAIC00Nyw2ICs0NywxNiBAQCBzdHJ1Y3QgbW11X25vdGlmaWVyX21tIHsKICAg ICAgICBzdHJ1Y3QgaGxpc3RfaGVhZCBkZWZlcnJlZF9saXN0OwogfTsKIAoraW50IG1tX2hhc19u b3RpZmllcnMoc3RydWN0IG1tX3N0cnVjdCAqbW0pCit7CisgICAgICAgcmV0dXJuIHVubGlrZWx5 KG1tLT5tbXVfbm90aWZpZXJfbW0pOworfQorCit2b2lkIG1tdV9ub3RpZmllcl9tbV9pbml0KHN0 cnVjdCBtbV9zdHJ1Y3QgKm1tKQoreworICAgICAgIG1tLT5tbXVfbm90aWZpZXJfbW0gPSBOVUxM OworfQorCiAvKgogICogVGhpcyBpcyBhIGNvbGxpc2lvbi1yZXRyeSByZWFkLXNpZGUvd3JpdGUt c2lkZSAnbG9jaycsIGEgbG90IGxpa2UgYQogICogc2VxY291bnQsIGhvd2V2ZXIgdGhpcyBhbGxv d3MgbXVsdGlwbGUgd3JpdGUtc2lkZXMgdG8gaG9sZCBpdCBhdAoKCnRoYW5rcywKCkpvaG4gSHVi YmFyZApOVklESUEKCj4gZGlmZiAtLWdpdCBhL2luY2x1ZGUvbGludXgvbW11X25vdGlmaWVyLmgg Yi9pbmNsdWRlL2xpbnV4L21tdV9ub3RpZmllci5oCj4gaW5kZXggMWJkOGU2YTA5YTNjMjcuLjEy YmQ2MDNkMzE4Y2U3IDEwMDY0NAo+IC0tLSBhL2luY2x1ZGUvbGludXgvbW11X25vdGlmaWVyLmgK PiArKysgYi9pbmNsdWRlL2xpbnV4L21tdV9ub3RpZmllci5oCj4gQEAgLTcsOCArNyw5IEBACj4g ICNpbmNsdWRlIDxsaW51eC9tbV90eXBlcy5oPgo+ICAjaW5jbHVkZSA8bGludXgvc3JjdS5oPgo+ ICAKPiArc3RydWN0IG1tdV9ub3RpZmllcl9tbTsKPiAgc3RydWN0IG1tdV9ub3RpZmllcjsKPiAt c3RydWN0IG1tdV9ub3RpZmllcl9vcHM7Cj4gK3N0cnVjdCBtbXVfbm90aWZpZXJfcmFuZ2U7Cj4g IAo+ICAvKioKPiAgICogZW51bSBtbXVfbm90aWZpZXJfZXZlbnQgLSByZWFzb24gZm9yIHRoZSBt bXUgbm90aWZpZXIgY2FsbGJhY2sKPiBAQCAtNDAsMzYgKzQxLDggQEAgZW51bSBtbXVfbm90aWZp ZXJfZXZlbnQgewo+ICAJTU1VX05PVElGWV9TT0ZUX0RJUlRZLAo+ICB9Owo+ICAKPiAtI2lmZGVm IENPTkZJR19NTVVfTk9USUZJRVIKPiAtCj4gLSNpZmRlZiBDT05GSUdfTE9DS0RFUAo+IC1leHRl cm4gc3RydWN0IGxvY2tkZXBfbWFwIF9fbW11X25vdGlmaWVyX2ludmFsaWRhdGVfcmFuZ2Vfc3Rh cnRfbWFwOwo+IC0jZW5kaWYKPiAtCj4gLS8qCj4gLSAqIFRoZSBtbXUgbm90aWZpZXJfbW0gc3Ry dWN0dXJlIGlzIGFsbG9jYXRlZCBhbmQgaW5zdGFsbGVkIGluCj4gLSAqIG1tLT5tbXVfbm90aWZp ZXJfbW0gaW5zaWRlIHRoZSBtbV90YWtlX2FsbF9sb2NrcygpIHByb3RlY3RlZAo+IC0gKiBjcml0 aWNhbCBzZWN0aW9uIGFuZCBpdCdzIHJlbGVhc2VkIG9ubHkgd2hlbiBtbV9jb3VudCByZWFjaGVz IHplcm8KPiAtICogaW4gbW1kcm9wKCkuCj4gLSAqLwo+IC1zdHJ1Y3QgbW11X25vdGlmaWVyX21t IHsKPiAtCS8qIGFsbCBtbXUgbm90aWZpZXJzIHJlZ2lzdGVyZCBpbiB0aGlzIG1tIGFyZSBxdWV1 ZWQgaW4gdGhpcyBsaXN0ICovCj4gLQlzdHJ1Y3QgaGxpc3RfaGVhZCBsaXN0Owo+IC0JLyogdG8g c2VyaWFsaXplIHRoZSBsaXN0IG1vZGlmaWNhdGlvbnMgYW5kIGhsaXN0X3VuaGFzaGVkICovCj4g LQlzcGlubG9ja190IGxvY2s7Cj4gLX07Cj4gLQo+ICAjZGVmaW5lIE1NVV9OT1RJRklFUl9SQU5H RV9CTE9DS0FCTEUgKDEgPDwgMCkKPiAgCj4gLXN0cnVjdCBtbXVfbm90aWZpZXJfcmFuZ2Ugewo+ IC0Jc3RydWN0IHZtX2FyZWFfc3RydWN0ICp2bWE7Cj4gLQlzdHJ1Y3QgbW1fc3RydWN0ICptbTsK PiAtCXVuc2lnbmVkIGxvbmcgc3RhcnQ7Cj4gLQl1bnNpZ25lZCBsb25nIGVuZDsKPiAtCXVuc2ln bmVkIGZsYWdzOwo+IC0JZW51bSBtbXVfbm90aWZpZXJfZXZlbnQgZXZlbnQ7Cj4gLX07Cj4gLQo+ ICBzdHJ1Y3QgbW11X25vdGlmaWVyX29wcyB7Cj4gIAkvKgo+ICAJICogQ2FsbGVkIGVpdGhlciBi eSBtbXVfbm90aWZpZXJfdW5yZWdpc3RlciBvciB3aGVuIHRoZSBtbSBpcwo+IEBAIC0yNDksNiAr MjIyLDIxIEBAIHN0cnVjdCBtbXVfbm90aWZpZXIgewo+ICAJdW5zaWduZWQgaW50IHVzZXJzOwo+ ICB9Owo+ICAKPiArI2lmZGVmIENPTkZJR19NTVVfTk9USUZJRVIKPiArCj4gKyNpZmRlZiBDT05G SUdfTE9DS0RFUAo+ICtleHRlcm4gc3RydWN0IGxvY2tkZXBfbWFwIF9fbW11X25vdGlmaWVyX2lu dmFsaWRhdGVfcmFuZ2Vfc3RhcnRfbWFwOwo+ICsjZW5kaWYKPiArCj4gK3N0cnVjdCBtbXVfbm90 aWZpZXJfcmFuZ2Ugewo+ICsJc3RydWN0IHZtX2FyZWFfc3RydWN0ICp2bWE7Cj4gKwlzdHJ1Y3Qg bW1fc3RydWN0ICptbTsKPiArCXVuc2lnbmVkIGxvbmcgc3RhcnQ7Cj4gKwl1bnNpZ25lZCBsb25n IGVuZDsKPiArCXVuc2lnbmVkIGZsYWdzOwo+ICsJZW51bSBtbXVfbm90aWZpZXJfZXZlbnQgZXZl bnQ7Cj4gK307Cj4gKwo+ICBzdGF0aWMgaW5saW5lIGludCBtbV9oYXNfbm90aWZpZXJzKHN0cnVj dCBtbV9zdHJ1Y3QgKm1tKQo+ICB7Cj4gIAlyZXR1cm4gdW5saWtlbHkobW0tPm1tdV9ub3RpZmll cl9tbSk7Cj4gZGlmZiAtLWdpdCBhL21tL21tdV9ub3RpZmllci5jIGIvbW0vbW11X25vdGlmaWVy LmMKPiBpbmRleCA3ZmRlODg2OTVmMzVkNi4uMzY3NjcwY2ZkMDJiN2IgMTAwNjQ0Cj4gLS0tIGEv bW0vbW11X25vdGlmaWVyLmMKPiArKysgYi9tbS9tbXVfbm90aWZpZXIuYwo+IEBAIC0yNyw2ICsy NywxOSBAQCBzdHJ1Y3QgbG9ja2RlcF9tYXAgX19tbXVfbm90aWZpZXJfaW52YWxpZGF0ZV9yYW5n ZV9zdGFydF9tYXAgPSB7Cj4gIH07Cj4gICNlbmRpZgo+ICAKPiArLyoKPiArICogVGhlIG1tdSBu b3RpZmllcl9tbSBzdHJ1Y3R1cmUgaXMgYWxsb2NhdGVkIGFuZCBpbnN0YWxsZWQgaW4KPiArICog bW0tPm1tdV9ub3RpZmllcl9tbSBpbnNpZGUgdGhlIG1tX3Rha2VfYWxsX2xvY2tzKCkgcHJvdGVj dGVkCj4gKyAqIGNyaXRpY2FsIHNlY3Rpb24gYW5kIGl0J3MgcmVsZWFzZWQgb25seSB3aGVuIG1t X2NvdW50IHJlYWNoZXMgemVybwo+ICsgKiBpbiBtbWRyb3AoKS4KPiArICovCj4gK3N0cnVjdCBt bXVfbm90aWZpZXJfbW0gewo+ICsJLyogYWxsIG1tdSBub3RpZmllcnMgcmVnaXN0ZXJlZCBpbiB0 aGlzIG1tIGFyZSBxdWV1ZWQgaW4gdGhpcyBsaXN0ICovCj4gKwlzdHJ1Y3QgaGxpc3RfaGVhZCBs aXN0Owo+ICsJLyogdG8gc2VyaWFsaXplIHRoZSBsaXN0IG1vZGlmaWNhdGlvbnMgYW5kIGhsaXN0 X3VuaGFzaGVkICovCj4gKwlzcGlubG9ja190IGxvY2s7Cj4gK307Cj4gKwo+ICAvKgo+ICAgKiBU aGlzIGZ1bmN0aW9uIGNhbid0IHJ1biBjb25jdXJyZW50bHkgYWdhaW5zdCBtbXVfbm90aWZpZXJf cmVnaXN0ZXIKPiAgICogYmVjYXVzZSBtbS0+bW1fdXNlcnMgPiAwIGR1cmluZyBtbXVfbm90aWZp ZXJfcmVnaXN0ZXIgYW5kIGV4aXRfbW1hcAo+IApfX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fXwpkcmktZGV2ZWwgbWFpbGluZyBsaXN0CmRyaS1kZXZlbEBsaXN0 cy5mcmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9s aXN0aW5mby9kcmktZGV2ZWw= From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-8.2 required=3.0 tests=HEADER_FROM_DIFFERENT_DOMAINS, INCLUDES_PATCH,MAILING_LIST_MULTI,SIGNED_OFF_BY,SPF_HELO_NONE,SPF_PASS, USER_AGENT_SANE_1 autolearn=unavailable autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 254F4C5DF60 for ; Tue, 5 Nov 2019 21:33:15 +0000 (UTC) Received: from gabe.freedesktop.org (gabe.freedesktop.org [131.252.210.177]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id E47B821882 for ; Tue, 5 Nov 2019 21:33:14 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org E47B821882 Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=nvidia.com Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=amd-gfx-bounces@lists.freedesktop.org Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id B70FE6E137; Tue, 5 Nov 2019 21:33:14 +0000 (UTC) Received: from hqemgate15.nvidia.com (hqemgate15.nvidia.com [216.228.121.64]) by gabe.freedesktop.org (Postfix) with ESMTPS id E1BA06EA93; Tue, 5 Nov 2019 21:23:47 +0000 (UTC) Received: from hqpgpgate101.nvidia.com (Not Verified[216.228.121.13]) by hqemgate15.nvidia.com (using TLS: TLSv1.2, DES-CBC3-SHA) id ; Tue, 05 Nov 2019 13:22:48 -0800 Received: from hqmail.nvidia.com ([172.20.161.6]) by hqpgpgate101.nvidia.com (PGP Universal service); Tue, 05 Nov 2019 13:23:47 -0800 X-PGP-Universal: processed; by hqpgpgate101.nvidia.com on Tue, 05 Nov 2019 13:23:47 -0800 Received: from [10.110.48.28] (10.124.1.5) by HQMAIL107.nvidia.com (172.20.187.13) with Microsoft SMTP Server (TLS) id 15.0.1473.3; Tue, 5 Nov 2019 21:23:46 +0000 Subject: Re: [PATCH v2 01/15] mm/mmu_notifier: define the header pre-processor parts even if disabled To: Jason Gunthorpe , , Jerome Glisse , Ralph Campbell , References: <20191028201032.6352-1-jgg@ziepe.ca> <20191028201032.6352-2-jgg@ziepe.ca> X-Nvconfidentiality: public From: John Hubbard Message-ID: <770248ae-efa1-efae-a978-f52d8510f7b1@nvidia.com> Date: Tue, 5 Nov 2019 13:23:46 -0800 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:60.0) Gecko/20100101 Thunderbird/60.8.0 MIME-Version: 1.0 In-Reply-To: <20191028201032.6352-2-jgg@ziepe.ca> X-Originating-IP: [10.124.1.5] X-ClientProxiedBy: HQMAIL111.nvidia.com (172.20.187.18) To HQMAIL107.nvidia.com (172.20.187.13) Content-Language: en-US X-Mailman-Approved-At: Tue, 05 Nov 2019 21:33:13 +0000 X-Mailman-Original-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=nvidia.com; s=n1; t=1572988968; bh=aIPY8mqXA6lyZUc1rKx70R2LwJeuNYEhmJdJmillLnc=; h=X-PGP-Universal:Subject:To:CC:References:X-Nvconfidentiality:From: Message-ID:Date:User-Agent:MIME-Version:In-Reply-To: X-Originating-IP:X-ClientProxiedBy:Content-Type:Content-Language: Content-Transfer-Encoding; b=celvBsXjtms5s/fHMENIzqr1AZL6V3afb2TmXOj9/auCgSpw020ovgGj6sUJY6wUi 8FZQW7VU2uJLmF0z7zWq5LTLWiAamnDIr/6bhHTVSgPpOmvUAR1oUqmuppIzNL3wJO ysV1KcarpWhwDx0XqrSBdFmymxTizUIpNIcN7AM6qREXee//lWIVE0AwpLY1l5ZIk7 IOniAcaPCzRmZ2jCMf1W7i6xri8LcQzCVMPAcukyjxn/by0Q3PYe7Vbwx2OWpB8aKm Yd7LmkMXL2AGdGoFghJ6PsBH99PmbYY9fA0V8aX32R3g6ETbPcBT1SC2bBbbs4GWFg QOkJy1BbD1U0g== X-BeenThere: amd-gfx@lists.freedesktop.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: Discussion list for AMD gfx List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Juergen Gross , David Zhou , Mike Marciniszyn , Stefano Stabellini , Oleksandr Andrushchenko , linux-rdma@vger.kernel.org, nouveau@lists.freedesktop.org, Dennis Dalessandro , amd-gfx@lists.freedesktop.org, Christoph Hellwig , Jason Gunthorpe , dri-devel@lists.freedesktop.org, Alex Deucher , xen-devel@lists.xenproject.org, Boris Ostrovsky , Petr Cvek , =?UTF-8?Q?Christian_K=c3=b6nig?= , Ben Skeggs Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Errors-To: amd-gfx-bounces@lists.freedesktop.org Sender: "amd-gfx" Message-ID: <20191105212346.rW4oKZrGPXaBAzvcFI46p9Ev7WoUcHA6Rxv1zZoPoG0@z> T24gMTAvMjgvMTkgMToxMCBQTSwgSmFzb24gR3VudGhvcnBlIHdyb3RlOgo+IEZyb206IEphc29u IEd1bnRob3JwZSA8amdnQG1lbGxhbm94LmNvbT4KPiAKPiBOb3cgdGhhdCB3ZSBoYXZlIEtFUk5F TF9IRUFERVJfVEVTVCBhbGwgaGVhZGVycyBhcmUgZ2VuZXJhbGx5IGNvbXBpbGUKPiB0ZXN0ZWQs IHNvIHJlbHlpbmcgb24gbWFrZWZpbGUgdHJpY2tzIHRvIGF2b2lkIGNvbXBpbGluZyBjb2RlIHRo YXQgZGVwZW5kcwo+IG9uIENPTkZJR19NTVVfTk9USUZJRVIgaXMgbW9yZSBhbm5veWluZy4KPiAK PiBJbnN0ZWFkIGZvbGxvdyB0aGUgdXN1YWwgcGF0dGVybiBhbmQgcHJvdmlkZSBtb3N0IG9mIHRo ZSBoZWFkZXIgd2l0aCBvbmx5Cj4gdGhlIGZ1bmN0aW9ucyBzdHViYmVkIG91dCB3aGVuIENPTkZJ R19NTVVfTk9USUZJRVIgaXMgZGlzYWJsZWQuIFRoaXMKPiBlbnN1cmVzIGNvZGUgY29tcGlsZXMg bm8gbWF0dGVyIHdoYXQgdGhlIGNvbmZpZyBzZXR0aW5nIGlzLgo+IAo+IFdoaWxlIGhlcmUsIHN0 cnVjdCBtbXVfbm90aWZpZXJfbW0gaXMgcHJpdmF0ZSB0byBtbXVfbm90aWZpZXIuYywgbW92ZSBp dC4KCmFuZCBjb3JyZWN0IGEgbWlub3Igc3BlbGxpbmcgZXJyb3IgaW4gYSBjb21tZW50LiBHb29k LiA6KQoKPiAKPiBSZXZpZXdlZC1ieTogSsOpcsO0bWUgR2xpc3NlIDxqZ2xpc3NlQHJlZGhhdC5j b20+Cj4gU2lnbmVkLW9mZi1ieTogSmFzb24gR3VudGhvcnBlIDxqZ2dAbWVsbGFub3guY29tPgo+ IC0tLQo+ICBpbmNsdWRlL2xpbnV4L21tdV9ub3RpZmllci5oIHwgNDYgKysrKysrKysrKysrKy0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tCj4gIG1tL21tdV9ub3RpZmllci5jICAgICAgICAgICAgfCAx MyArKysrKysrKysrCj4gIDIgZmlsZXMgY2hhbmdlZCwgMzAgaW5zZXJ0aW9ucygrKSwgMjkgZGVs ZXRpb25zKC0pCj4gCgpCZWNhdXNlIHRoaXMgaXMgY29ycmVjdCBhcy1pcywgeW91IGNhbiBhZGQ6 CgpSZXZpZXdlZC1ieTogSm9obiBIdWJiYXJkIDxqaHViYmFyZEBudmlkaWEuY29tPgoKCi4uLndo ZXRoZXIgb3Igbm90IHlvdSB0YWtlIHRoZSBmb2xsb3dpbmcgcmVjb21tZW5kYXRpb24sIHdoaWNo IGlzOgp5b3UndmUgb25seSBkb25lIHBhcnQgb2YgdGhlIGpvYiBvZiBtYWtpbmcgc3RydWN0IG1t dV9ub3RpZmllcl9tbSAKcHJpdmF0ZSB0byBtbXVfbm90aWZpZXIuYy4gVGhlcmUncyBtb3JlOgoK KiBzdHJ1Y3QgbW11X25vdGlmaWVyX21tIGlzIHJlZmVycmVkIHRvIGluIHR3byBwbGFjZXMgbm93 OiBtbV90eXBlcy5oCiAgYW5kIChzdGlsbCkgbW11X25vdGlmaWVyLmguIFRoZXJlZm9yZToKCiAg ICBhKSBNb3ZlIHRoZSBsYXN0IHR3byB0cmFjZXMgb2YgaXQgb3V0IG9mIG1tdV9ub3RpZmllci5o LCBhbmQKCiAgICBiKSBQdXQgYSBmb3J3YXJkIGRlY2xhcmF0aW9uIGluIG1tX3R5cGVzLmgsIHdo aWNoIGlzIHdoZXJlIGl0CiAgICAgICBiZWxvbmdzIGJlY2F1c2UgdGhhdCdzIHdoZXJlIGl0J3Mg cmVmZXJyZWQgdG8uCgpTbyBpZiB5b3UgYXBwbHkgdGhpcyBpbmNyZW1lbnRhbCBwYXRjaCBvbiB0 b3AsIEkgdGhpbmsgaXQncyB3aGVyZQp5b3Ugd2FudCB0byBiZToKCmRpZmYgLS1naXQgYS9pbmNs dWRlL2xpbnV4L21tX3R5cGVzLmggYi9pbmNsdWRlL2xpbnV4L21tX3R5cGVzLmgKaW5kZXggMjIy MmZhNzk1Mjg0Li5kZjkzYTNjYzBkYTkgMTAwNjQ0Ci0tLSBhL2luY2x1ZGUvbGludXgvbW1fdHlw ZXMuaAorKysgYi9pbmNsdWRlL2xpbnV4L21tX3R5cGVzLmgKQEAgLTI1LDYgKzI1LDcgQEAKIAog c3RydWN0IGFkZHJlc3Nfc3BhY2U7CiBzdHJ1Y3QgbWVtX2Nncm91cDsKK3N0cnVjdCBtbXVfbm90 aWZpZXJfbW07CiAKIC8qCiAgKiBFYWNoIHBoeXNpY2FsIHBhZ2UgaW4gdGhlIHN5c3RlbSBoYXMg YSBzdHJ1Y3QgcGFnZSBhc3NvY2lhdGVkIHdpdGgKZGlmZiAtLWdpdCBhL2luY2x1ZGUvbGludXgv bW11X25vdGlmaWVyLmggYi9pbmNsdWRlL2xpbnV4L21tdV9ub3RpZmllci5oCmluZGV4IDUxYjky YmEwMTNkZC4uODRlZmQyYzUxZjVjIDEwMDY0NAotLS0gYS9pbmNsdWRlL2xpbnV4L21tdV9ub3Rp Zmllci5oCisrKyBiL2luY2x1ZGUvbGludXgvbW11X25vdGlmaWVyLmgKQEAgLTgsNyArOCw2IEBA CiAjaW5jbHVkZSA8bGludXgvc3JjdS5oPgogI2luY2x1ZGUgPGxpbnV4L2ludGVydmFsX3RyZWUu aD4KIAotc3RydWN0IG1tdV9ub3RpZmllcl9tbTsKIHN0cnVjdCBtbXVfbm90aWZpZXI7CiBzdHJ1 Y3QgbW11X25vdGlmaWVyX3JhbmdlOwogc3RydWN0IG1tdV9yYW5nZV9ub3RpZmllcjsKQEAgLTI2 MywxMCArMjYyLDcgQEAgc3RydWN0IG1tdV9ub3RpZmllcl9yYW5nZSB7CiAgICAgICAgZW51bSBt bXVfbm90aWZpZXJfZXZlbnQgZXZlbnQ7CiB9OwogCi1zdGF0aWMgaW5saW5lIGludCBtbV9oYXNf bm90aWZpZXJzKHN0cnVjdCBtbV9zdHJ1Y3QgKm1tKQotewotICAgICAgIHJldHVybiB1bmxpa2Vs eShtbS0+bW11X25vdGlmaWVyX21tKTsKLX0KK2ludCBtbV9oYXNfbm90aWZpZXJzKHN0cnVjdCBt bV9zdHJ1Y3QgKm1tKTsKIAogc3RydWN0IG1tdV9ub3RpZmllciAqbW11X25vdGlmaWVyX2dldF9s b2NrZWQoY29uc3Qgc3RydWN0IG1tdV9ub3RpZmllcl9vcHMgKm9wcywKICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RydWN0IG1tX3N0cnVjdCAqbW0pOwpAQCAt NDc3LDEwICs0NzMsNyBAQCBzdGF0aWMgaW5saW5lIHZvaWQgbW11X25vdGlmaWVyX2ludmFsaWRh dGVfcmFuZ2Uoc3RydWN0IG1tX3N0cnVjdCAqbW0sCiAgICAgICAgICAgICAgICBfX21tdV9ub3Rp Zmllcl9pbnZhbGlkYXRlX3JhbmdlKG1tLCBzdGFydCwgZW5kKTsKIH0KIAotc3RhdGljIGlubGlu ZSB2b2lkIG1tdV9ub3RpZmllcl9tbV9pbml0KHN0cnVjdCBtbV9zdHJ1Y3QgKm1tKQotewotICAg ICAgIG1tLT5tbXVfbm90aWZpZXJfbW0gPSBOVUxMOwotfQordm9pZCBtbXVfbm90aWZpZXJfbW1f aW5pdChzdHJ1Y3QgbW1fc3RydWN0ICptbSk7CiAKIHN0YXRpYyBpbmxpbmUgdm9pZCBtbXVfbm90 aWZpZXJfbW1fZGVzdHJveShzdHJ1Y3QgbW1fc3RydWN0ICptbSkKIHsKZGlmZiAtLWdpdCBhL21t L21tdV9ub3RpZmllci5jIGIvbW0vbW11X25vdGlmaWVyLmMKaW5kZXggMmI3NDg1OTE5ZWNmLi4x MDdmOTQwNmE5MmQgMTAwNjQ0Ci0tLSBhL21tL21tdV9ub3RpZmllci5jCisrKyBiL21tL21tdV9u b3RpZmllci5jCkBAIC00Nyw2ICs0NywxNiBAQCBzdHJ1Y3QgbW11X25vdGlmaWVyX21tIHsKICAg ICAgICBzdHJ1Y3QgaGxpc3RfaGVhZCBkZWZlcnJlZF9saXN0OwogfTsKIAoraW50IG1tX2hhc19u b3RpZmllcnMoc3RydWN0IG1tX3N0cnVjdCAqbW0pCit7CisgICAgICAgcmV0dXJuIHVubGlrZWx5 KG1tLT5tbXVfbm90aWZpZXJfbW0pOworfQorCit2b2lkIG1tdV9ub3RpZmllcl9tbV9pbml0KHN0 cnVjdCBtbV9zdHJ1Y3QgKm1tKQoreworICAgICAgIG1tLT5tbXVfbm90aWZpZXJfbW0gPSBOVUxM OworfQorCiAvKgogICogVGhpcyBpcyBhIGNvbGxpc2lvbi1yZXRyeSByZWFkLXNpZGUvd3JpdGUt c2lkZSAnbG9jaycsIGEgbG90IGxpa2UgYQogICogc2VxY291bnQsIGhvd2V2ZXIgdGhpcyBhbGxv d3MgbXVsdGlwbGUgd3JpdGUtc2lkZXMgdG8gaG9sZCBpdCBhdAoKCnRoYW5rcywKCkpvaG4gSHVi YmFyZApOVklESUEKCj4gZGlmZiAtLWdpdCBhL2luY2x1ZGUvbGludXgvbW11X25vdGlmaWVyLmgg Yi9pbmNsdWRlL2xpbnV4L21tdV9ub3RpZmllci5oCj4gaW5kZXggMWJkOGU2YTA5YTNjMjcuLjEy YmQ2MDNkMzE4Y2U3IDEwMDY0NAo+IC0tLSBhL2luY2x1ZGUvbGludXgvbW11X25vdGlmaWVyLmgK PiArKysgYi9pbmNsdWRlL2xpbnV4L21tdV9ub3RpZmllci5oCj4gQEAgLTcsOCArNyw5IEBACj4g ICNpbmNsdWRlIDxsaW51eC9tbV90eXBlcy5oPgo+ICAjaW5jbHVkZSA8bGludXgvc3JjdS5oPgo+ ICAKPiArc3RydWN0IG1tdV9ub3RpZmllcl9tbTsKPiAgc3RydWN0IG1tdV9ub3RpZmllcjsKPiAt c3RydWN0IG1tdV9ub3RpZmllcl9vcHM7Cj4gK3N0cnVjdCBtbXVfbm90aWZpZXJfcmFuZ2U7Cj4g IAo+ICAvKioKPiAgICogZW51bSBtbXVfbm90aWZpZXJfZXZlbnQgLSByZWFzb24gZm9yIHRoZSBt bXUgbm90aWZpZXIgY2FsbGJhY2sKPiBAQCAtNDAsMzYgKzQxLDggQEAgZW51bSBtbXVfbm90aWZp ZXJfZXZlbnQgewo+ICAJTU1VX05PVElGWV9TT0ZUX0RJUlRZLAo+ICB9Owo+ICAKPiAtI2lmZGVm IENPTkZJR19NTVVfTk9USUZJRVIKPiAtCj4gLSNpZmRlZiBDT05GSUdfTE9DS0RFUAo+IC1leHRl cm4gc3RydWN0IGxvY2tkZXBfbWFwIF9fbW11X25vdGlmaWVyX2ludmFsaWRhdGVfcmFuZ2Vfc3Rh cnRfbWFwOwo+IC0jZW5kaWYKPiAtCj4gLS8qCj4gLSAqIFRoZSBtbXUgbm90aWZpZXJfbW0gc3Ry dWN0dXJlIGlzIGFsbG9jYXRlZCBhbmQgaW5zdGFsbGVkIGluCj4gLSAqIG1tLT5tbXVfbm90aWZp ZXJfbW0gaW5zaWRlIHRoZSBtbV90YWtlX2FsbF9sb2NrcygpIHByb3RlY3RlZAo+IC0gKiBjcml0 aWNhbCBzZWN0aW9uIGFuZCBpdCdzIHJlbGVhc2VkIG9ubHkgd2hlbiBtbV9jb3VudCByZWFjaGVz IHplcm8KPiAtICogaW4gbW1kcm9wKCkuCj4gLSAqLwo+IC1zdHJ1Y3QgbW11X25vdGlmaWVyX21t IHsKPiAtCS8qIGFsbCBtbXUgbm90aWZpZXJzIHJlZ2lzdGVyZCBpbiB0aGlzIG1tIGFyZSBxdWV1 ZWQgaW4gdGhpcyBsaXN0ICovCj4gLQlzdHJ1Y3QgaGxpc3RfaGVhZCBsaXN0Owo+IC0JLyogdG8g c2VyaWFsaXplIHRoZSBsaXN0IG1vZGlmaWNhdGlvbnMgYW5kIGhsaXN0X3VuaGFzaGVkICovCj4g LQlzcGlubG9ja190IGxvY2s7Cj4gLX07Cj4gLQo+ICAjZGVmaW5lIE1NVV9OT1RJRklFUl9SQU5H RV9CTE9DS0FCTEUgKDEgPDwgMCkKPiAgCj4gLXN0cnVjdCBtbXVfbm90aWZpZXJfcmFuZ2Ugewo+ IC0Jc3RydWN0IHZtX2FyZWFfc3RydWN0ICp2bWE7Cj4gLQlzdHJ1Y3QgbW1fc3RydWN0ICptbTsK PiAtCXVuc2lnbmVkIGxvbmcgc3RhcnQ7Cj4gLQl1bnNpZ25lZCBsb25nIGVuZDsKPiAtCXVuc2ln bmVkIGZsYWdzOwo+IC0JZW51bSBtbXVfbm90aWZpZXJfZXZlbnQgZXZlbnQ7Cj4gLX07Cj4gLQo+ ICBzdHJ1Y3QgbW11X25vdGlmaWVyX29wcyB7Cj4gIAkvKgo+ICAJICogQ2FsbGVkIGVpdGhlciBi eSBtbXVfbm90aWZpZXJfdW5yZWdpc3RlciBvciB3aGVuIHRoZSBtbSBpcwo+IEBAIC0yNDksNiAr MjIyLDIxIEBAIHN0cnVjdCBtbXVfbm90aWZpZXIgewo+ICAJdW5zaWduZWQgaW50IHVzZXJzOwo+ ICB9Owo+ICAKPiArI2lmZGVmIENPTkZJR19NTVVfTk9USUZJRVIKPiArCj4gKyNpZmRlZiBDT05G SUdfTE9DS0RFUAo+ICtleHRlcm4gc3RydWN0IGxvY2tkZXBfbWFwIF9fbW11X25vdGlmaWVyX2lu dmFsaWRhdGVfcmFuZ2Vfc3RhcnRfbWFwOwo+ICsjZW5kaWYKPiArCj4gK3N0cnVjdCBtbXVfbm90 aWZpZXJfcmFuZ2Ugewo+ICsJc3RydWN0IHZtX2FyZWFfc3RydWN0ICp2bWE7Cj4gKwlzdHJ1Y3Qg bW1fc3RydWN0ICptbTsKPiArCXVuc2lnbmVkIGxvbmcgc3RhcnQ7Cj4gKwl1bnNpZ25lZCBsb25n IGVuZDsKPiArCXVuc2lnbmVkIGZsYWdzOwo+ICsJZW51bSBtbXVfbm90aWZpZXJfZXZlbnQgZXZl bnQ7Cj4gK307Cj4gKwo+ICBzdGF0aWMgaW5saW5lIGludCBtbV9oYXNfbm90aWZpZXJzKHN0cnVj dCBtbV9zdHJ1Y3QgKm1tKQo+ICB7Cj4gIAlyZXR1cm4gdW5saWtlbHkobW0tPm1tdV9ub3RpZmll cl9tbSk7Cj4gZGlmZiAtLWdpdCBhL21tL21tdV9ub3RpZmllci5jIGIvbW0vbW11X25vdGlmaWVy LmMKPiBpbmRleCA3ZmRlODg2OTVmMzVkNi4uMzY3NjcwY2ZkMDJiN2IgMTAwNjQ0Cj4gLS0tIGEv bW0vbW11X25vdGlmaWVyLmMKPiArKysgYi9tbS9tbXVfbm90aWZpZXIuYwo+IEBAIC0yNyw2ICsy NywxOSBAQCBzdHJ1Y3QgbG9ja2RlcF9tYXAgX19tbXVfbm90aWZpZXJfaW52YWxpZGF0ZV9yYW5n ZV9zdGFydF9tYXAgPSB7Cj4gIH07Cj4gICNlbmRpZgo+ICAKPiArLyoKPiArICogVGhlIG1tdSBu b3RpZmllcl9tbSBzdHJ1Y3R1cmUgaXMgYWxsb2NhdGVkIGFuZCBpbnN0YWxsZWQgaW4KPiArICog bW0tPm1tdV9ub3RpZmllcl9tbSBpbnNpZGUgdGhlIG1tX3Rha2VfYWxsX2xvY2tzKCkgcHJvdGVj dGVkCj4gKyAqIGNyaXRpY2FsIHNlY3Rpb24gYW5kIGl0J3MgcmVsZWFzZWQgb25seSB3aGVuIG1t X2NvdW50IHJlYWNoZXMgemVybwo+ICsgKiBpbiBtbWRyb3AoKS4KPiArICovCj4gK3N0cnVjdCBt bXVfbm90aWZpZXJfbW0gewo+ICsJLyogYWxsIG1tdSBub3RpZmllcnMgcmVnaXN0ZXJlZCBpbiB0 aGlzIG1tIGFyZSBxdWV1ZWQgaW4gdGhpcyBsaXN0ICovCj4gKwlzdHJ1Y3QgaGxpc3RfaGVhZCBs aXN0Owo+ICsJLyogdG8gc2VyaWFsaXplIHRoZSBsaXN0IG1vZGlmaWNhdGlvbnMgYW5kIGhsaXN0 X3VuaGFzaGVkICovCj4gKwlzcGlubG9ja190IGxvY2s7Cj4gK307Cj4gKwo+ICAvKgo+ICAgKiBU aGlzIGZ1bmN0aW9uIGNhbid0IHJ1biBjb25jdXJyZW50bHkgYWdhaW5zdCBtbXVfbm90aWZpZXJf cmVnaXN0ZXIKPiAgICogYmVjYXVzZSBtbS0+bW1fdXNlcnMgPiAwIGR1cmluZyBtbXVfbm90aWZp ZXJfcmVnaXN0ZXIgYW5kIGV4aXRfbW1hcAo+IApfX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fXwphbWQtZ2Z4IG1haWxpbmcgbGlzdAphbWQtZ2Z4QGxpc3RzLmZy ZWVkZXNrdG9wLm9yZwpodHRwczovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3Rp bmZvL2FtZC1nZng=