From mboxrd@z Thu Jan 1 00:00:00 1970 From: Christoph Hellwig Subject: [PATCH 19/25] nouveau: use devm_memremap_pages directly Date: Wed, 26 Jun 2019 14:27:18 +0200 Message-ID: <20190626122724.13313-20-hch@lst.de> References: <20190626122724.13313-1-hch@lst.de> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <20190626122724.13313-1-hch-jcswGhMUV9g@public.gmane.org> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: nouveau-bounces-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org Sender: "Nouveau" To: Dan Williams , =?UTF-8?q?J=C3=A9r=C3=B4me=20Glisse?= , Jason Gunthorpe , Ben Skeggs Cc: linux-nvdimm-hn68Rpc1hR1g9hUCZPvPmw@public.gmane.org, linux-pci-u79uwXL29TY76Z2rM5mHXA@public.gmane.org, linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org, dri-devel-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org, linux-mm-Bw31MaZKKs3YtjvyW6yDsg@public.gmane.org, nouveau-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org List-Id: dri-devel@lists.freedesktop.org SnVzdCB1c2UgZGV2bV9tZW1yZW1hcF9wYWdlcyBpbnN0ZWFkIG9mIGhtbV9kZXZtZW1fYWRkIHBh Z2VzIHRvIGFsbG93CmtpbGxpbmcgdGhhdCB3cmFwcGVyIHdoaWNoIGRvZXNuJ3QgcHJvdmlkZSBh IHdob2xlIGxvdCBvZiBiZW5lZml0cy4KClNpZ25lZC1vZmYtYnk6IENocmlzdG9waCBIZWxsd2ln IDxoY2hAbHN0LmRlPgotLS0KIGRyaXZlcnMvZ3B1L2RybS9ub3V2ZWF1L25vdXZlYXVfZG1lbS5j IHwgODIgKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0KIDEgZmlsZSBjaGFuZ2VkLCAzOCBpbnNl cnRpb25zKCspLCA0NCBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0v bm91dmVhdS9ub3V2ZWF1X2RtZW0uYyBiL2RyaXZlcnMvZ3B1L2RybS9ub3V2ZWF1L25vdXZlYXVf ZG1lbS5jCmluZGV4IGE1MGY2ZmQyZmUyNC4uMGZiN2E0NGI4YmM0IDEwMDY0NAotLS0gYS9kcml2 ZXJzL2dwdS9kcm0vbm91dmVhdS9ub3V2ZWF1X2RtZW0uYworKysgYi9kcml2ZXJzL2dwdS9kcm0v bm91dmVhdS9ub3V2ZWF1X2RtZW0uYwpAQCAtNzIsNyArNzIsOCBAQCBzdHJ1Y3Qgbm91dmVhdV9k bWVtX21pZ3JhdGUgewogfTsKIAogc3RydWN0IG5vdXZlYXVfZG1lbSB7Ci0Jc3RydWN0IGhtbV9k ZXZtZW0gKmRldm1lbTsKKwlzdHJ1Y3Qgbm91dmVhdV9kcm0gKmRybTsKKwlzdHJ1Y3QgZGV2X3Bh Z2VtYXAgcGFnZW1hcDsKIAlzdHJ1Y3Qgbm91dmVhdV9kbWVtX21pZ3JhdGUgbWlncmF0ZTsKIAlz dHJ1Y3QgbGlzdF9oZWFkIGNodW5rX2ZyZWU7CiAJc3RydWN0IGxpc3RfaGVhZCBjaHVua19mdWxs OwpAQCAtODAsNiArODEsMTEgQEAgc3RydWN0IG5vdXZlYXVfZG1lbSB7CiAJc3RydWN0IG11dGV4 IG11dGV4OwogfTsKIAorc3RhdGljIGlubGluZSBzdHJ1Y3Qgbm91dmVhdV9kbWVtICpwYWdlX3Rv X2RtZW0oc3RydWN0IHBhZ2UgKnBhZ2UpCit7CisJcmV0dXJuIGNvbnRhaW5lcl9vZihwYWdlLT5w Z21hcCwgc3RydWN0IG5vdXZlYXVfZG1lbSwgcGFnZW1hcCk7Cit9CisKIHN0cnVjdCBub3V2ZWF1 X2RtZW1fZmF1bHQgewogCXN0cnVjdCBub3V2ZWF1X2RybSAqZHJtOwogCXN0cnVjdCBub3V2ZWF1 X2ZlbmNlICpmZW5jZTsKQEAgLTk2LDggKzEwMiw3IEBAIHN0cnVjdCBub3V2ZWF1X21pZ3JhdGUg ewogCXVuc2lnbmVkIGxvbmcgZG1hX25yOwogfTsKIAotc3RhdGljIHZvaWQKLW5vdXZlYXVfZG1l bV9mcmVlKHN0cnVjdCBobW1fZGV2bWVtICpkZXZtZW0sIHN0cnVjdCBwYWdlICpwYWdlKQorc3Rh dGljIHZvaWQgbm91dmVhdV9kbWVtX3BhZ2VfZnJlZShzdHJ1Y3QgcGFnZSAqcGFnZSkKIHsKIAlz dHJ1Y3Qgbm91dmVhdV9kbWVtX2NodW5rICpjaHVuazsKIAl1bnNpZ25lZCBsb25nIGlkeDsKQEAg LTI2MCwyOSArMjY1LDIxIEBAIHN0YXRpYyBjb25zdCBzdHJ1Y3QgbWlncmF0ZV92bWFfb3BzIG5v dXZlYXVfZG1lbV9mYXVsdF9taWdyYXRlX29wcyA9IHsKIAkuZmluYWxpemVfYW5kX21hcAk9IG5v dXZlYXVfZG1lbV9mYXVsdF9maW5hbGl6ZV9hbmRfbWFwLAogfTsKIAotc3RhdGljIHZtX2ZhdWx0 X3QKLW5vdXZlYXVfZG1lbV9mYXVsdChzdHJ1Y3QgaG1tX2Rldm1lbSAqZGV2bWVtLAotCQkgICBz dHJ1Y3Qgdm1fYXJlYV9zdHJ1Y3QgKnZtYSwKLQkJICAgdW5zaWduZWQgbG9uZyBhZGRyLAotCQkg ICBjb25zdCBzdHJ1Y3QgcGFnZSAqcGFnZSwKLQkJICAgdW5zaWduZWQgaW50IGZsYWdzLAotCQkg ICBwbWRfdCAqcG1kcCkKK3N0YXRpYyB2bV9mYXVsdF90IG5vdXZlYXVfZG1lbV9taWdyYXRlX3Rv X3JhbShzdHJ1Y3Qgdm1fZmF1bHQgKnZtZikKIHsKLQlzdHJ1Y3QgZHJtX2RldmljZSAqZHJtX2Rl diA9IGRldl9nZXRfZHJ2ZGF0YShkZXZtZW0tPmRldmljZSk7CisJc3RydWN0IG5vdXZlYXVfZG1l bSAqZG1lbSA9IHBhZ2VfdG9fZG1lbSh2bWYtPnBhZ2UpOwogCXVuc2lnbmVkIGxvbmcgc3JjWzFd ID0gezB9LCBkc3RbMV0gPSB7MH07Ci0Jc3RydWN0IG5vdXZlYXVfZG1lbV9mYXVsdCBmYXVsdCA9 IHswfTsKKwlzdHJ1Y3Qgbm91dmVhdV9kbWVtX2ZhdWx0IGZhdWx0ID0geyAuZHJtID0gZG1lbS0+ ZHJtIH07CiAJaW50IHJldDsKIAotCi0KIAkvKgogCSAqIEZJWE1FIHdoYXQgd2UgcmVhbGx5IHdh bnQgaXMgdG8gZmluZCBzb21lIGhldXJpc3RpYyB0byBtaWdyYXRlIG1vcmUKIAkgKiB0aGFuIGp1 c3Qgb25lIHBhZ2Ugb24gQ1BVIGZhdWx0LiBXaGVuIHN1Y2ggZmF1bHQgaGFwcGVucyBpdCBpcyB2 ZXJ5CiAJICogbGlrZWx5IHRoYXQgbW9yZSBzdXJyb3VuZGluZyBwYWdlIHdpbGwgQ1BVIGZhdWx0 IHRvby4KIAkgKi8KLQlmYXVsdC5kcm0gPSBub3V2ZWF1X2RybShkcm1fZGV2KTsKLQlyZXQgPSBt aWdyYXRlX3ZtYSgmbm91dmVhdV9kbWVtX2ZhdWx0X21pZ3JhdGVfb3BzLCB2bWEsIGFkZHIsCi0J CQkgIGFkZHIgKyBQQUdFX1NJWkUsIHNyYywgZHN0LCAmZmF1bHQpOworCXJldCA9IG1pZ3JhdGVf dm1hKCZub3V2ZWF1X2RtZW1fZmF1bHRfbWlncmF0ZV9vcHMsIHZtZi0+dm1hLAorCQkJdm1mLT5h ZGRyZXNzLCB2bWYtPmFkZHJlc3MgKyBQQUdFX1NJWkUsCisJCQlzcmMsIGRzdCwgJmZhdWx0KTsK IAlpZiAocmV0KQogCQlyZXR1cm4gVk1fRkFVTFRfU0lHQlVTOwogCkBAIC0yOTIsMTAgKzI4OSw5 IEBAIG5vdXZlYXVfZG1lbV9mYXVsdChzdHJ1Y3QgaG1tX2Rldm1lbSAqZGV2bWVtLAogCXJldHVy biAwOwogfQogCi1zdGF0aWMgY29uc3Qgc3RydWN0IGhtbV9kZXZtZW1fb3BzCi1ub3V2ZWF1X2Rt ZW1fZGV2bWVtX29wcyA9IHsKLQkuZnJlZSA9IG5vdXZlYXVfZG1lbV9mcmVlLAotCS5mYXVsdCA9 IG5vdXZlYXVfZG1lbV9mYXVsdCwKK3N0YXRpYyBjb25zdCBzdHJ1Y3QgZGV2X3BhZ2VtYXBfb3Bz IG5vdXZlYXVfZG1lbV9wYWdlbWFwX29wcyA9IHsKKwkucGFnZV9mcmVlCQk9IG5vdXZlYXVfZG1l bV9wYWdlX2ZyZWUsCisJLm1pZ3JhdGVfdG9fcmFtCQk9IG5vdXZlYXVfZG1lbV9taWdyYXRlX3Rv X3JhbSwKIH07CiAKIHN0YXRpYyBpbnQKQEAgLTU4MSw3ICs1NzcsOCBAQCB2b2lkCiBub3V2ZWF1 X2RtZW1faW5pdChzdHJ1Y3Qgbm91dmVhdV9kcm0gKmRybSkKIHsKIAlzdHJ1Y3QgZGV2aWNlICpk ZXZpY2UgPSBkcm0tPmRldi0+ZGV2OwotCXVuc2lnbmVkIGxvbmcgaSwgc2l6ZTsKKwlzdHJ1Y3Qg cmVzb3VyY2UgKnJlczsKKwl1bnNpZ25lZCBsb25nIGksIHNpemUsIHBmbl9maXJzdDsKIAlpbnQg cmV0OwogCiAJLyogVGhpcyBvbmx5IG1ha2Ugc2Vuc2Ugb24gUEFTQ0FMIG9yIG5ld2VyICovCkBA IC01OTEsNiArNTg4LDcgQEAgbm91dmVhdV9kbWVtX2luaXQoc3RydWN0IG5vdXZlYXVfZHJtICpk cm0pCiAJaWYgKCEoZHJtLT5kbWVtID0ga3phbGxvYyhzaXplb2YoKmRybS0+ZG1lbSksIEdGUF9L RVJORUwpKSkKIAkJcmV0dXJuOwogCisJZHJtLT5kbWVtLT5kcm0gPSBkcm07CiAJbXV0ZXhfaW5p dCgmZHJtLT5kbWVtLT5tdXRleCk7CiAJSU5JVF9MSVNUX0hFQUQoJmRybS0+ZG1lbS0+Y2h1bmtf ZnJlZSk7CiAJSU5JVF9MSVNUX0hFQUQoJmRybS0+ZG1lbS0+Y2h1bmtfZnVsbCk7CkBAIC02MDAs MTEgKzU5OCw4IEBAIG5vdXZlYXVfZG1lbV9pbml0KHN0cnVjdCBub3V2ZWF1X2RybSAqZHJtKQog CiAJLyogSW5pdGlhbGl6ZSBtaWdyYXRpb24gZG1hIGhlbHBlcnMgYmVmb3JlIHJlZ2lzdGVyaW5n IG1lbW9yeSAqLwogCXJldCA9IG5vdXZlYXVfZG1lbV9taWdyYXRlX2luaXQoZHJtKTsKLQlpZiAo cmV0KSB7Ci0JCWtmcmVlKGRybS0+ZG1lbSk7Ci0JCWRybS0+ZG1lbSA9IE5VTEw7Ci0JCXJldHVy bjsKLQl9CisJaWYgKHJldCkKKwkJZ290byBvdXRfZnJlZTsKIAogCS8qCiAJICogRklYTUUgd2Ug bmVlZCBzb21lIGtpbmQgb2YgcG9saWN5IHRvIGRlY2lkZSBob3cgbXVjaCBWUkFNIHdlCkBAIC02 MTIsMTQgKzYwNywxNiBAQCBub3V2ZWF1X2RtZW1faW5pdChzdHJ1Y3Qgbm91dmVhdV9kcm0gKmRy bSkKIAkgKiBhbmQgbGF0dGVyIGlmIHdlIHdhbnQgdG8gZG8gdGhpbmcgbGlrZSBvdmVyIGNvbW1p dCB0aGVuIHdlCiAJICogY291bGQgcmV2aXNpdCB0aGlzLgogCSAqLwotCWRybS0+ZG1lbS0+ZGV2 bWVtID0gaG1tX2Rldm1lbV9hZGQoJm5vdXZlYXVfZG1lbV9kZXZtZW1fb3BzLAotCQkJCQkgICBk ZXZpY2UsIHNpemUpOwotCWlmIChJU19FUlIoZHJtLT5kbWVtLT5kZXZtZW0pKSB7Ci0JCWtmcmVl KGRybS0+ZG1lbSk7Ci0JCWRybS0+ZG1lbSA9IE5VTEw7Ci0JCXJldHVybjsKLQl9Ci0KKwlyZXMg PSBkZXZtX3JlcXVlc3RfZnJlZV9tZW1fcmVnaW9uKGRldmljZSwgJmlvbWVtX3Jlc291cmNlLCBz aXplKTsKKwlpZiAoSVNfRVJSKHJlcykpCisJCWdvdG8gb3V0X2ZyZWU7CisJZHJtLT5kbWVtLT5w YWdlbWFwLnR5cGUgPSBNRU1PUllfREVWSUNFX1BSSVZBVEU7CisJZHJtLT5kbWVtLT5wYWdlbWFw LnJlcyA9ICpyZXM7CisJZHJtLT5kbWVtLT5wYWdlbWFwLm9wcyA9ICZub3V2ZWF1X2RtZW1fcGFn ZW1hcF9vcHM7CisJaWYgKElTX0VSUihkZXZtX21lbXJlbWFwX3BhZ2VzKGRldmljZSwgJmRybS0+ ZG1lbS0+cGFnZW1hcCkpKQorCQlnb3RvIG91dF9mcmVlOworCisJcGZuX2ZpcnN0ID0gcmVzLT5z dGFydCA+PiBQQUdFX1NISUZUOwogCWZvciAoaSA9IDA7IGkgPCAoc2l6ZSAvIERNRU1fQ0hVTktf U0laRSk7ICsraSkgewogCQlzdHJ1Y3Qgbm91dmVhdV9kbWVtX2NodW5rICpjaHVuazsKIAkJc3Ry dWN0IHBhZ2UgKnBhZ2U7CkBAIC02MzIsOCArNjI5LDcgQEAgbm91dmVhdV9kbWVtX2luaXQoc3Ry dWN0IG5vdXZlYXVfZHJtICpkcm0pCiAJCX0KIAogCQljaHVuay0+ZHJtID0gZHJtOwotCQljaHVu ay0+cGZuX2ZpcnN0ID0gZHJtLT5kbWVtLT5kZXZtZW0tPnBmbl9maXJzdDsKLQkJY2h1bmstPnBm bl9maXJzdCArPSAoaSAqIERNRU1fQ0hVTktfTlBBR0VTKTsKKwkJY2h1bmstPnBmbl9maXJzdCA9 IHBmbl9maXJzdCArIChpICogRE1FTV9DSFVOS19OUEFHRVMpOwogCQlsaXN0X2FkZF90YWlsKCZj aHVuay0+bGlzdCwgJmRybS0+ZG1lbS0+Y2h1bmtfZW1wdHkpOwogCiAJCXBhZ2UgPSBwZm5fdG9f cGFnZShjaHVuay0+cGZuX2ZpcnN0KTsKQEAgLTY0Myw2ICs2MzksMTAgQEAgbm91dmVhdV9kbWVt X2luaXQoc3RydWN0IG5vdXZlYXVfZHJtICpkcm0pCiAJfQogCiAJTlZfSU5GTyhkcm0sICJETUVN OiByZWdpc3RlcmVkICVsZE1CIG9mIGRldmljZSBtZW1vcnlcbiIsIHNpemUgPj4gMjApOworCXJl dHVybjsKK291dF9mcmVlOgorCWtmcmVlKGRybS0+ZG1lbSk7CisJZHJtLT5kbWVtID0gTlVMTDsK IH0KIAogc3RhdGljIHZvaWQKQEAgLTgzMywxMyArODMzLDcgQEAgbm91dmVhdV9kbWVtX21pZ3Jh dGVfdm1hKHN0cnVjdCBub3V2ZWF1X2RybSAqZHJtLAogc3RhdGljIGlubGluZSBib29sCiBub3V2 ZWF1X2RtZW1fcGFnZShzdHJ1Y3Qgbm91dmVhdV9kcm0gKmRybSwgc3RydWN0IHBhZ2UgKnBhZ2Up CiB7Ci0JaWYgKCFpc19kZXZpY2VfcHJpdmF0ZV9wYWdlKHBhZ2UpKQotCQlyZXR1cm4gZmFsc2U7 Ci0KLQlpZiAoZHJtLT5kbWVtLT5kZXZtZW0gIT0gcGFnZS0+cGdtYXAtPmRhdGEpCi0JCXJldHVy biBmYWxzZTsKLQotCXJldHVybiB0cnVlOworCXJldHVybiBpc19kZXZpY2VfcHJpdmF0ZV9wYWdl KHBhZ2UpICYmIGRybS0+ZG1lbSA9PSBwYWdlX3RvX2RtZW0ocGFnZSk7CiB9CiAKIHZvaWQKLS0g CjIuMjAuMQoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18K Tm91dmVhdSBtYWlsaW5nIGxpc3QKTm91dmVhdUBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cHM6 Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9ub3V2ZWF1