From mboxrd@z Thu Jan 1 00:00:00 1970 From: Thomas Hellstrom Subject: [PATCH 1/9] mm: Allow the [page|pfn]_mkwrite callbacks to drop the mmap_sem Date: Fri, 12 Apr 2019 16:04:15 +0000 Message-ID: <20190412160338.64994-2-thellstrom@vmware.com> References: <20190412160338.64994-1-thellstrom@vmware.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from NAM03-DM3-obe.outbound.protection.outlook.com (mail-dm3nam03on060b.outbound.protection.outlook.com [IPv6:2a01:111:f400:fe49::60b]) by gabe.freedesktop.org (Postfix) with ESMTPS id C0D7A899A5 for ; Fri, 12 Apr 2019 16:04:20 +0000 (UTC) In-Reply-To: <20190412160338.64994-1-thellstrom@vmware.com> Content-Language: en-US Content-ID: <97BDAE19231BEF48BCE613AF38370D78@namprd05.prod.outlook.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: "dri-devel@lists.freedesktop.org" , Linux-graphics-maintainer , "linux-kernel@vger.kernel.org" Cc: Thomas Hellstrom , Michal Hocko , Rik van Riel , Peter Zijlstra , Will Deacon , Matthew Wilcox , "linux-mm@kvack.org" , Minchan Kim , =?utf-8?B?SsOpcsO0bWUgR2xpc3Nl?= , Souptick Joarder , Huang Ying , Andrew Morton List-Id: dri-devel@lists.freedesktop.org RHJpdmVyIGZhdWx0IGNhbGxiYWNrcyBhcmUgYWxsb3dlZCB0byBkcm9wIHRoZSBtbWFwX3NlbSB3 aGVuIGV4cGVjdGluZw0KbG9uZyBoYXJkd2FyZSB3YWl0cyB0byBhdm9pZCBibG9ja2luZyBvdGhl ciBtbSB1c2Vycy4gQWxsb3cgdGhlIG1rd3JpdGUNCmNhbGxiYWNrcyB0byBkbyB0aGUgc2FtZSBi eSByZXR1cm5pbmcgZWFybHkgb24gVk1fRkFVTFRfUkVUUlkuDQoNCkluIHBhcnRpY3VsYXIgd2Ug d2FudCB0byBiZSBhYmxlIHRvIGRyb3AgdGhlIG1tYXBfc2VtIHdoZW4gd2FpdGluZyBmb3INCmEg cmVzZXJ2YXRpb24gb2JqZWN0IGxvY2sgb24gYSBHUFUgYnVmZmVyIG9iamVjdC4gVGhlc2UgbG9j a3MgbWF5IGJlDQpoZWxkIHdoaWxlIHdhaXRpbmcgZm9yIHRoZSBHUFUuDQoNCkNjOiBBbmRyZXcg TW9ydG9uIDxha3BtQGxpbnV4LWZvdW5kYXRpb24ub3JnPg0KQ2M6IE1hdHRoZXcgV2lsY294IDx3 aWxseUBpbmZyYWRlYWQub3JnPg0KQ2M6IFdpbGwgRGVhY29uIDx3aWxsLmRlYWNvbkBhcm0uY29t Pg0KQ2M6IFBldGVyIFppamxzdHJhIDxwZXRlcnpAaW5mcmFkZWFkLm9yZz4NCkNjOiBSaWsgdmFu IFJpZWwgPHJpZWxAc3VycmllbC5jb20+DQpDYzogTWluY2hhbiBLaW0gPG1pbmNoYW5Aa2VybmVs Lm9yZz4NCkNjOiBNaWNoYWwgSG9ja28gPG1ob2Nrb0BzdXNlLmNvbT4NCkNjOiBIdWFuZyBZaW5n IDx5aW5nLmh1YW5nQGludGVsLmNvbT4NCkNjOiBTb3VwdGljayBKb2FyZGVyIDxqcmRyLmxpbnV4 QGdtYWlsLmNvbT4NCkNjOiAiSsOpcsO0bWUgR2xpc3NlIiA8amdsaXNzZUByZWRoYXQuY29tPg0K Q2M6IGxpbnV4LW1tQGt2YWNrLm9yZw0KQ2M6IGxpbnV4LWtlcm5lbEB2Z2VyLmtlcm5lbC5vcmcN Cg0KU2lnbmVkLW9mZi1ieTogVGhvbWFzIEhlbGxzdHJvbSA8dGhlbGxzdHJvbUB2bXdhcmUuY29t Pg0KLS0tDQogbW0vbWVtb3J5LmMgfCAxMCArKysrKystLS0tDQogMSBmaWxlIGNoYW5nZWQsIDYg aW5zZXJ0aW9ucygrKSwgNCBkZWxldGlvbnMoLSkNCg0KZGlmZiAtLWdpdCBhL21tL21lbW9yeS5j IGIvbW0vbWVtb3J5LmMNCmluZGV4IGUxMWNhOWRkODIzZi4uYTk1YjRhM2IxYWUyIDEwMDY0NA0K LS0tIGEvbW0vbWVtb3J5LmMNCisrKyBiL21tL21lbW9yeS5jDQpAQCAtMjE0NCw3ICsyMTQ0LDcg QEAgc3RhdGljIHZtX2ZhdWx0X3QgZG9fcGFnZV9ta3dyaXRlKHN0cnVjdCB2bV9mYXVsdCAqdm1m KQ0KIAlyZXQgPSB2bWYtPnZtYS0+dm1fb3BzLT5wYWdlX21rd3JpdGUodm1mKTsNCiAJLyogUmVz dG9yZSBvcmlnaW5hbCBmbGFncyBzbyB0aGF0IGNhbGxlciBpcyBub3Qgc3VycHJpc2VkICovDQog CXZtZi0+ZmxhZ3MgPSBvbGRfZmxhZ3M7DQotCWlmICh1bmxpa2VseShyZXQgJiAoVk1fRkFVTFRf RVJST1IgfCBWTV9GQVVMVF9OT1BBR0UpKSkNCisJaWYgKHVubGlrZWx5KHJldCAmIChWTV9GQVVM VF9FUlJPUiB8IFZNX0ZBVUxUX1JFVFJZIHwgVk1fRkFVTFRfTk9QQUdFKSkpDQogCQlyZXR1cm4g cmV0Ow0KIAlpZiAodW5saWtlbHkoIShyZXQgJiBWTV9GQVVMVF9MT0NLRUQpKSkgew0KIAkJbG9j a19wYWdlKHBhZ2UpOw0KQEAgLTI0MTksNyArMjQxOSw3IEBAIHN0YXRpYyB2bV9mYXVsdF90IHdw X3Bmbl9zaGFyZWQoc3RydWN0IHZtX2ZhdWx0ICp2bWYpDQogCQlwdGVfdW5tYXBfdW5sb2NrKHZt Zi0+cHRlLCB2bWYtPnB0bCk7DQogCQl2bWYtPmZsYWdzIHw9IEZBVUxUX0ZMQUdfTUtXUklURTsN CiAJCXJldCA9IHZtYS0+dm1fb3BzLT5wZm5fbWt3cml0ZSh2bWYpOw0KLQkJaWYgKHJldCAmIChW TV9GQVVMVF9FUlJPUiB8IFZNX0ZBVUxUX05PUEFHRSkpDQorCQlpZiAocmV0ICYgKFZNX0ZBVUxU X0VSUk9SIHwgVk1fRkFVTFRfUkVUUlkgfCBWTV9GQVVMVF9OT1BBR0UpKQ0KIAkJCXJldHVybiBy ZXQ7DQogCQlyZXR1cm4gZmluaXNoX21rd3JpdGVfZmF1bHQodm1mKTsNCiAJfQ0KQEAgLTI0NDAs NyArMjQ0MCw4IEBAIHN0YXRpYyB2bV9mYXVsdF90IHdwX3BhZ2Vfc2hhcmVkKHN0cnVjdCB2bV9m YXVsdCAqdm1mKQ0KIAkJcHRlX3VubWFwX3VubG9jayh2bWYtPnB0ZSwgdm1mLT5wdGwpOw0KIAkJ dG1wID0gZG9fcGFnZV9ta3dyaXRlKHZtZik7DQogCQlpZiAodW5saWtlbHkoIXRtcCB8fCAodG1w ICYNCi0JCQkJICAgICAgKFZNX0ZBVUxUX0VSUk9SIHwgVk1fRkFVTFRfTk9QQUdFKSkpKSB7DQor CQkJCSAgICAgIChWTV9GQVVMVF9FUlJPUiB8IFZNX0ZBVUxUX1JFVFJZIHwNCisJCQkJICAgICAg IFZNX0ZBVUxUX05PUEFHRSkpKSkgew0KIAkJCXB1dF9wYWdlKHZtZi0+cGFnZSk7DQogCQkJcmV0 dXJuIHRtcDsNCiAJCX0NCkBAIC0zNDk0LDcgKzM0OTUsOCBAQCBzdGF0aWMgdm1fZmF1bHRfdCBk b19zaGFyZWRfZmF1bHQoc3RydWN0IHZtX2ZhdWx0ICp2bWYpDQogCQl1bmxvY2tfcGFnZSh2bWYt PnBhZ2UpOw0KIAkJdG1wID0gZG9fcGFnZV9ta3dyaXRlKHZtZik7DQogCQlpZiAodW5saWtlbHko IXRtcCB8fA0KLQkJCQkodG1wICYgKFZNX0ZBVUxUX0VSUk9SIHwgVk1fRkFVTFRfTk9QQUdFKSkp KSB7DQorCQkJCSh0bXAgJiAoVk1fRkFVTFRfRVJST1IgfCBWTV9GQVVMVF9SRVRSWSB8DQorCQkJ CQlWTV9GQVVMVF9OT1BBR0UpKSkpIHsNCiAJCQlwdXRfcGFnZSh2bWYtPnBhZ2UpOw0KIAkJCXJl dHVybiB0bXA7DQogCQl9DQotLSANCjIuMjAuMQ0KDQpfX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fXwpkcmktZGV2ZWwgbWFpbGluZyBsaXN0CmRyaS1kZXZlbEBs aXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1h bi9saXN0aW5mby9kcmktZGV2ZWw=