From: Christoph Hellwig Subject: [PATCH 11/14] ttm: separate errno from VM_FAULT_* values Date: Wed, 16 May 2018 07:43:45 +0200 Message-ID: <20180516054348.15950-12-hch@lst.de> References: <20180516054348.15950-1-hch@lst.de> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Cc: linux-arm-kernel@lists.infradead.org, linux-s390@vger.kernel.org, linux-kernel@vger.kernel.org, dri-devel@lists.freedesktop.org, linux-mm@kvack.org, ocfs2-devel@oss.oracle.com, devel@lists.orangefs.org, linux-fsdevel@vger.kernel.org, linux-mtd@lists.infradead.org, ceph-devel@vger.kernel.org, linux-ext4@vger.kernel.org, linux-btrfs@vger.kernel.org, lustre-devel@lists.lustre.org To: Souptick Joarder , Matthew Wilcox Return-path: In-Reply-To: <20180516054348.15950-1-hch@lst.de> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" List-Id: linux-ext4.vger.kernel.org U2lnbmVkLW9mZi1ieTogQ2hyaXN0b3BoIEhlbGx3aWcgPGhjaEBsc3QuZGU+Ci0tLQogZHJpdmVy cy9ncHUvZHJtL3R0bS90dG1fYm9fdm0uYyB8IDQyICsrKysrKysrKysrKysrKysrLS0tLS0tLS0t LS0tLS0tLQogMSBmaWxlIGNoYW5nZWQsIDIyIGluc2VydGlvbnMoKyksIDIwIGRlbGV0aW9ucygt KQoKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS90dG0vdHRtX2JvX3ZtLmMgYi9kcml2ZXJz L2dwdS9kcm0vdHRtL3R0bV9ib192bS5jCmluZGV4IDhlYmE5NWIzYzczNy4uMjU1ZTc4MDFmNjJj IDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vdHRtL3R0bV9ib192bS5jCisrKyBiL2RyaXZl cnMvZ3B1L2RybS90dG0vdHRtX2JvX3ZtLmMKQEAgLTQzLDEwICs0MywxMSBAQAogCiAjZGVmaW5l IFRUTV9CT19WTV9OVU1fUFJFRkFVTFQgMTYKIAotc3RhdGljIGludCB0dG1fYm9fdm1fZmF1bHRf aWRsZShzdHJ1Y3QgdHRtX2J1ZmZlcl9vYmplY3QgKmJvLAorc3RhdGljIHZtX2ZhdWx0X3QgdHRt X2JvX3ZtX2ZhdWx0X2lkbGUoc3RydWN0IHR0bV9idWZmZXJfb2JqZWN0ICpibywKIAkJCQlzdHJ1 Y3Qgdm1fZmF1bHQgKnZtZikKIHsKLQlpbnQgcmV0ID0gMDsKKwl2bV9mYXVsdF90IHJldCA9IDA7 CisJaW50IGVyciA9IDA7CiAKIAlpZiAobGlrZWx5KCFiby0+bW92aW5nKSkKIAkJZ290byBvdXRf dW5sb2NrOwpAQCAtNzcsOCArNzgsOCBAQCBzdGF0aWMgaW50IHR0bV9ib192bV9mYXVsdF9pZGxl KHN0cnVjdCB0dG1fYnVmZmVyX29iamVjdCAqYm8sCiAJLyoKIAkgKiBPcmRpbmFyeSB3YWl0Lgog CSAqLwotCXJldCA9IGRtYV9mZW5jZV93YWl0KGJvLT5tb3ZpbmcsIHRydWUpOwotCWlmICh1bmxp a2VseShyZXQgIT0gMCkpIHsKKwllcnIgPSBkbWFfZmVuY2Vfd2FpdChiby0+bW92aW5nLCB0cnVl KTsKKwlpZiAodW5saWtlbHkoZXJyICE9IDApKSB7CiAJCXJldCA9IChyZXQgIT0gLUVSRVNUQVJU U1lTKSA/IFZNX0ZBVUxUX1NJR0JVUyA6CiAJCQlWTV9GQVVMVF9OT1BBR0U7CiAJCWdvdG8gb3V0 X3VubG9jazsKQEAgLTEwNCw3ICsxMDUsNyBAQCBzdGF0aWMgdW5zaWduZWQgbG9uZyB0dG1fYm9f aW9fbWVtX3BmbihzdHJ1Y3QgdHRtX2J1ZmZlcl9vYmplY3QgKmJvLAogCQkrIHBhZ2Vfb2Zmc2V0 OwogfQogCi1zdGF0aWMgaW50IHR0bV9ib192bV9mYXVsdChzdHJ1Y3Qgdm1fZmF1bHQgKnZtZikK K3N0YXRpYyB2bV9mYXVsdF90IHR0bV9ib192bV9mYXVsdChzdHJ1Y3Qgdm1fZmF1bHQgKnZtZikK IHsKIAlzdHJ1Y3Qgdm1fYXJlYV9zdHJ1Y3QgKnZtYSA9IHZtZi0+dm1hOwogCXN0cnVjdCB0dG1f YnVmZmVyX29iamVjdCAqYm8gPSAoc3RydWN0IHR0bV9idWZmZXJfb2JqZWN0ICopCkBAIC0xMTUs NyArMTE2LDggQEAgc3RhdGljIGludCB0dG1fYm9fdm1fZmF1bHQoc3RydWN0IHZtX2ZhdWx0ICp2 bWYpCiAJdW5zaWduZWQgbG9uZyBwZm47CiAJc3RydWN0IHR0bV90dCAqdHRtID0gTlVMTDsKIAlz dHJ1Y3QgcGFnZSAqcGFnZTsKLQlpbnQgcmV0OworCXZtX2ZhdWx0X3QgcmV0OworCWludCBlcnI7 CiAJaW50IGk7CiAJdW5zaWduZWQgbG9uZyBhZGRyZXNzID0gdm1mLT5hZGRyZXNzOwogCXN0cnVj dCB0dG1fbWVtX3R5cGVfbWFuYWdlciAqbWFuID0KQEAgLTEyOCw5ICsxMzAsOSBAQCBzdGF0aWMg aW50IHR0bV9ib192bV9mYXVsdChzdHJ1Y3Qgdm1fZmF1bHQgKnZtZikKIAkgKiBmb3IgcmVzZXJ2 ZSwgYW5kIGlmIGl0IGZhaWxzLCByZXRyeSB0aGUgZmF1bHQgYWZ0ZXIgd2FpdGluZwogCSAqIGZv ciB0aGUgYnVmZmVyIHRvIGJlY29tZSB1bnJlc2VydmVkLgogCSAqLwotCXJldCA9IHR0bV9ib19y ZXNlcnZlKGJvLCB0cnVlLCB0cnVlLCBOVUxMKTsKLQlpZiAodW5saWtlbHkocmV0ICE9IDApKSB7 Ci0JCWlmIChyZXQgIT0gLUVCVVNZKQorCWVyciA9IHR0bV9ib19yZXNlcnZlKGJvLCB0cnVlLCB0 cnVlLCBOVUxMKTsKKwlpZiAodW5saWtlbHkoZXJyICE9IDApKSB7CisJCWlmIChlcnIgIT0gLUVC VVNZKQogCQkJcmV0dXJuIFZNX0ZBVUxUX05PUEFHRTsKIAogCQlpZiAodm1mLT5mbGFncyAmIEZB VUxUX0ZMQUdfQUxMT1dfUkVUUlkpIHsKQEAgLTE2Miw4ICsxNjQsOCBAQCBzdGF0aWMgaW50IHR0 bV9ib192bV9mYXVsdChzdHJ1Y3Qgdm1fZmF1bHQgKnZtZikKIAl9CiAKIAlpZiAoYmRldi0+ZHJp dmVyLT5mYXVsdF9yZXNlcnZlX25vdGlmeSkgewotCQlyZXQgPSBiZGV2LT5kcml2ZXItPmZhdWx0 X3Jlc2VydmVfbm90aWZ5KGJvKTsKLQkJc3dpdGNoIChyZXQpIHsKKwkJZXJyID0gYmRldi0+ZHJp dmVyLT5mYXVsdF9yZXNlcnZlX25vdGlmeShibyk7CisJCXN3aXRjaCAoZXJyKSB7CiAJCWNhc2Ug MDoKIAkJCWJyZWFrOwogCQljYXNlIC1FQlVTWToKQEAgLTE5MSwxMyArMTkzLDEzIEBAIHN0YXRp YyBpbnQgdHRtX2JvX3ZtX2ZhdWx0KHN0cnVjdCB2bV9mYXVsdCAqdm1mKQogCQlnb3RvIG91dF91 bmxvY2s7CiAJfQogCi0JcmV0ID0gdHRtX21lbV9pb19sb2NrKG1hbiwgdHJ1ZSk7Ci0JaWYgKHVu bGlrZWx5KHJldCAhPSAwKSkgeworCWVyciA9IHR0bV9tZW1faW9fbG9jayhtYW4sIHRydWUpOwor CWlmICh1bmxpa2VseShlcnIgIT0gMCkpIHsKIAkJcmV0ID0gVk1fRkFVTFRfTk9QQUdFOwogCQln b3RvIG91dF91bmxvY2s7CiAJfQotCXJldCA9IHR0bV9tZW1faW9fcmVzZXJ2ZV92bShibyk7Ci0J aWYgKHVubGlrZWx5KHJldCAhPSAwKSkgeworCWVyciA9IHR0bV9tZW1faW9fcmVzZXJ2ZV92bShi byk7CisJaWYgKHVubGlrZWx5KGVyciAhPSAwKSkgewogCQlyZXQgPSBWTV9GQVVMVF9TSUdCVVM7 CiAJCWdvdG8gb3V0X2lvX3VubG9jazsKIAl9CkBAIC0yNjUsMjEgKzI2NywyMSBAQCBzdGF0aWMg aW50IHR0bV9ib192bV9mYXVsdChzdHJ1Y3Qgdm1fZmF1bHQgKnZtZikKIAkJfQogCiAJCWlmICh2 bWEtPnZtX2ZsYWdzICYgVk1fTUlYRURNQVApCi0JCQlyZXQgPSB2bV9pbnNlcnRfbWl4ZWQoJmN2 bWEsIGFkZHJlc3MsCisJCQllcnIgPSB2bV9pbnNlcnRfbWl4ZWQoJmN2bWEsIGFkZHJlc3MsCiAJ CQkJCV9fcGZuX3RvX3Bmbl90KHBmbiwgUEZOX0RFVikpOwogCQllbHNlCi0JCQlyZXQgPSB2bV9p bnNlcnRfcGZuKCZjdm1hLCBhZGRyZXNzLCBwZm4pOworCQkJZXJyID0gdm1faW5zZXJ0X3Bmbigm Y3ZtYSwgYWRkcmVzcywgcGZuKTsKIAogCQkvKgogCQkgKiBTb21lYm9keSBiZWF0IHVzIHRvIHRo aXMgUFRFIG9yIHByZWZhdWx0aW5nIHRvCiAJCSAqIGFuIGFscmVhZHkgcG9wdWxhdGVkIFBURSwg b3IgcHJlZmF1bHRpbmcgZXJyb3IuCiAJCSAqLwogCi0JCWlmICh1bmxpa2VseSgocmV0ID09IC1F QlVTWSkgfHwgKHJldCAhPSAwICYmIGkgPiAwKSkpCisJCWlmICh1bmxpa2VseSgoZXJyID09IC1F QlVTWSkgfHwgKGVyciAhPSAwICYmIGkgPiAwKSkpCiAJCQlicmVhazsKLQkJZWxzZSBpZiAodW5s aWtlbHkocmV0ICE9IDApKSB7CisJCWVsc2UgaWYgKHVubGlrZWx5KGVyciAhPSAwKSkgewogCQkJ cmV0ID0KLQkJCSAgICAocmV0ID09IC1FTk9NRU0pID8gVk1fRkFVTFRfT09NIDogVk1fRkFVTFRf U0lHQlVTOworCQkJICAgIChlcnIgPT0gLUVOT01FTSkgPyBWTV9GQVVMVF9PT00gOiBWTV9GQVVM VF9TSUdCVVM7CiAJCQlnb3RvIG91dF9pb191bmxvY2s7CiAJCX0KIAotLSAKMi4xNy4wCgpfX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpkcmktZGV2ZWwgbWFp bGluZyBsaXN0CmRyaS1kZXZlbEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5m cmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9kcmktZGV2ZWwK