From mboxrd@z Thu Jan 1 00:00:00 1970 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 Subject: [v5,03/78] xarray: Add the xa_lock to the radix_tree_root From: Matthew Wilcox Message-Id: <20171215220450.7899-4-willy@infradead.org> Date: Fri, 15 Dec 2017 14:03:35 -0800 To: linux-kernel@vger.kernel.org Cc: Matthew Wilcox , Ross Zwisler , David Howells , Shaohua Li , Jens Axboe , Rehas Sachdeva , Marc Zyngier , linux-mm@kvack.org, linux-fsdevel@vger.kernel.org, linux-f2fs-devel@lists.sourceforge.net, linux-nilfs@vger.kernel.org, linux-btrfs@vger.kernel.org, linux-xfs@vger.kernel.org, linux-usb@vger.kernel.org, linux-raid@vger.kernel.org List-ID: RnJvbTogTWF0dGhldyBXaWxjb3ggPG1hd2lsY294QG1pY3Jvc29mdC5jb20+CgpUaGlzIHJlc3Vs dHMgaW4gbm8gY2hhbmdlIGluIHN0cnVjdHVyZSBzaXplIG9uIDY0LWJpdCB4ODYgYXMgaXQgZml0 cyBpbgp0aGUgcGFkZGluZyBiZXR3ZWVuIHRoZSBnZnBfdCBhbmQgdGhlIHZvaWQgKi4KClNpZ25l ZC1vZmYtYnk6IE1hdHRoZXcgV2lsY294IDxtYXdpbGNveEBtaWNyb3NvZnQuY29tPgotLS0KIGZz L2YyZnMvZ2MuYyAgICAgICAgICAgICAgICAgICB8ICAyICstCiBpbmNsdWRlL2xpbnV4L2lkci5o ICAgICAgICAgICAgfCAxMiArKysrKystLS0tLS0KIGluY2x1ZGUvbGludXgvcmFkaXgtdHJlZS5o ICAgICB8ICA3ICsrKysrLS0KIGluY2x1ZGUvbGludXgveGFycmF5LmggICAgICAgICB8IDMzICsr KysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKwoga2VybmVsL3BpZC5jICAgICAgICAgICAg ICAgICAgIHwgIDIgKy0KIHRvb2xzL2luY2x1ZGUvbGludXgvc3BpbmxvY2suaCB8ICAxICsKIDYg ZmlsZXMgY2hhbmdlZCwgNDcgaW5zZXJ0aW9ucygrKSwgMTAgZGVsZXRpb25zKC0pCiBjcmVhdGUg bW9kZSAxMDA2NDQgaW5jbHVkZS9saW51eC94YXJyYXkuaAoKZGlmZiAtLWdpdCBhL2ZzL2YyZnMv Z2MuYyBiL2ZzL2YyZnMvZ2MuYwppbmRleCBkODQ0ZGNiODA1NzAuLmFhYzFlMDJmNzVkZiAxMDA2 NDQKLS0tIGEvZnMvZjJmcy9nYy5jCisrKyBiL2ZzL2YyZnMvZ2MuYwpAQCAtOTkxLDcgKzk5MSw3 IEBAIGludCBmMmZzX2djKHN0cnVjdCBmMmZzX3NiX2luZm8gKnNiaSwgYm9vbCBzeW5jLAogCXVu c2lnbmVkIGludCBpbml0X3NlZ25vID0gc2Vnbm87CiAJc3RydWN0IGdjX2lub2RlX2xpc3QgZ2Nf bGlzdCA9IHsKIAkJLmlsaXN0ID0gTElTVF9IRUFEX0lOSVQoZ2NfbGlzdC5pbGlzdCksCi0JCS5p cm9vdCA9IFJBRElYX1RSRUVfSU5JVChHRlBfTk9GUyksCisJCS5pcm9vdCA9IFJBRElYX1RSRUVf SU5JVChnY19saXN0Lmlyb290LCBHRlBfTk9GUyksCiAJfTsKIAogCXRyYWNlX2YyZnNfZ2NfYmVn aW4oc2JpLT5zYiwgc3luYywgYmFja2dyb3VuZCwKZGlmZiAtLWdpdCBhL2luY2x1ZGUvbGludXgv aWRyLmggYi9pbmNsdWRlL2xpbnV4L2lkci5oCmluZGV4IDg0MzJiYmZlMDJjZS4uNDVhNzdkMzJk Y2Y2IDEwMDY0NAotLS0gYS9pbmNsdWRlL2xpbnV4L2lkci5oCisrKyBiL2luY2x1ZGUvbGludXgv aWRyLmgKQEAgLTMxLDExICszMSwxMSBAQCBzdHJ1Y3QgaWRyIHsKIC8qIFNldCB0aGUgSURSIGZs YWcgYW5kIHRoZSBJRFJfRlJFRSB0YWcgKi8KICNkZWZpbmUgSURSX1JUX01BUktFUgkJKChfX2Zv cmNlIGdmcF90KSgzIDw8IF9fR0ZQX0JJVFNfU0hJRlQpKQogCi0jZGVmaW5lIElEUl9JTklUCQkJ CQkJCVwKKyNkZWZpbmUgSURSX0lOSVQobmFtZSkJCQkJCQkJXAogewkJCQkJCQkJCVwKLQkuaWRy X3J0ID0gUkFESVhfVFJFRV9JTklUKElEUl9SVF9NQVJLRVIpCQkJXAorCS5pZHJfcnQgPSBSQURJ WF9UUkVFX0lOSVQobmFtZSwgSURSX1JUX01BUktFUikJCQlcCiB9Ci0jZGVmaW5lIERFRklORV9J RFIobmFtZSkJc3RydWN0IGlkciBuYW1lID0gSURSX0lOSVQKKyNkZWZpbmUgREVGSU5FX0lEUihu YW1lKQlzdHJ1Y3QgaWRyIG5hbWUgPSBJRFJfSU5JVChuYW1lKQogCiAvKioKICAqIGlkcl9nZXRf Y3Vyc29yIC0gUmV0dXJuIHRoZSBjdXJyZW50IHBvc2l0aW9uIG9mIHRoZSBjeWNsaWMgYWxsb2Nh dG9yCkBAIC0xOTQsMTAgKzE5NCwxMCBAQCBzdHJ1Y3QgaWRhIHsKIAlzdHJ1Y3QgcmFkaXhfdHJl ZV9yb290CWlkYV9ydDsKIH07CiAKLSNkZWZpbmUgSURBX0lOSVQJewkJCQkJCVwKLQkuaWRhX3J0 ID0gUkFESVhfVFJFRV9JTklUKElEUl9SVF9NQVJLRVIgfCBHRlBfTk9XQUlUKSwJCVwKKyNkZWZp bmUgSURBX0lOSVQobmFtZSkJewkJCQkJCVwKKwkuaWRhX3J0ID0gUkFESVhfVFJFRV9JTklUKG5h bWUsIElEUl9SVF9NQVJLRVIgfCBHRlBfTk9XQUlUKSwJXAogfQotI2RlZmluZSBERUZJTkVfSURB KG5hbWUpCXN0cnVjdCBpZGEgbmFtZSA9IElEQV9JTklUCisjZGVmaW5lIERFRklORV9JREEobmFt ZSkJc3RydWN0IGlkYSBuYW1lID0gSURBX0lOSVQobmFtZSkKIAogaW50IGlkYV9wcmVfZ2V0KHN0 cnVjdCBpZGEgKmlkYSwgZ2ZwX3QgZ2ZwX21hc2spOwogaW50IGlkYV9nZXRfbmV3X2Fib3ZlKHN0 cnVjdCBpZGEgKmlkYSwgaW50IHN0YXJ0aW5nX2lkLCBpbnQgKnBfaWQpOwpkaWZmIC0tZ2l0IGEv aW5jbHVkZS9saW51eC9yYWRpeC10cmVlLmggYi9pbmNsdWRlL2xpbnV4L3JhZGl4LXRyZWUuaApp bmRleCBmYzU1ZmYzMWVjYTcuLmQyMjUzYjU0MGNkNyAxMDA2NDQKLS0tIGEvaW5jbHVkZS9saW51 eC9yYWRpeC10cmVlLmgKKysrIGIvaW5jbHVkZS9saW51eC9yYWRpeC10cmVlLmgKQEAgLTEwOSwy MCArMTA5LDIzIEBAIHN0cnVjdCByYWRpeF90cmVlX25vZGUgewogI2RlZmluZSBST09UX1RBR19T SElGVAkoX19HRlBfQklUU19TSElGVCArIDEpCiAKIHN0cnVjdCByYWRpeF90cmVlX3Jvb3Qgewor CXNwaW5sb2NrX3QJCXhhX2xvY2s7CiAJZ2ZwX3QJCQlnZnBfbWFzazsKIAlzdHJ1Y3QgcmFkaXhf dHJlZV9ub2RlCV9fcmN1ICpybm9kZTsKIH07CiAKLSNkZWZpbmUgUkFESVhfVFJFRV9JTklUKG1h c2spCXsJCQkJCVwKKyNkZWZpbmUgUkFESVhfVFJFRV9JTklUKG5hbWUsIG1hc2spCXsJCQkJXAor CS54YV9sb2NrID0gX19TUElOX0xPQ0tfVU5MT0NLRUQobmFtZS54YV9sb2NrKSwJCQlcCiAJLmdm cF9tYXNrID0gKG1hc2spLAkJCQkJCVwKIAkucm5vZGUgPSBOVUxMLAkJCQkJCQlcCiB9CiAKICNk ZWZpbmUgUkFESVhfVFJFRShuYW1lLCBtYXNrKSBcCi0Jc3RydWN0IHJhZGl4X3RyZWVfcm9vdCBu YW1lID0gUkFESVhfVFJFRV9JTklUKG1hc2spCisJc3RydWN0IHJhZGl4X3RyZWVfcm9vdCBuYW1l ID0gUkFESVhfVFJFRV9JTklUKG5hbWUsIG1hc2spCiAKICNkZWZpbmUgSU5JVF9SQURJWF9UUkVF KHJvb3QsIG1hc2spCQkJCQlcCiBkbyB7CQkJCQkJCQkJXAorCXNwaW5fbG9ja19pbml0KCYocm9v dCktPnhhX2xvY2spOwkJCQlcCiAJKHJvb3QpLT5nZnBfbWFzayA9IChtYXNrKTsJCQkJCVwKIAko cm9vdCktPnJub2RlID0gTlVMTDsJCQkJCQlcCiB9IHdoaWxlICgwKQpkaWZmIC0tZ2l0IGEvaW5j bHVkZS9saW51eC94YXJyYXkuaCBiL2luY2x1ZGUvbGludXgveGFycmF5LmgKbmV3IGZpbGUgbW9k ZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwLi45MzFhMGZmNjEzMTUKLS0tIC9kZXYvbnVsbAor KysgYi9pbmNsdWRlL2xpbnV4L3hhcnJheS5oCkBAIC0wLDAgKzEsMzMgQEAKKyNpZm5kZWYgX0xJ TlVYX1hBUlJBWV9ICisjZGVmaW5lIF9MSU5VWF9YQVJSQVlfSAorLyoKKyAqIGVYdGVuc2libGUg QXJyYXlzCisgKiBDb3B5cmlnaHQgKGMpIDIwMTcgTWljcm9zb2Z0IENvcnBvcmF0aW9uCisgKiBB dXRob3I6IE1hdHRoZXcgV2lsY294IDxtYXdpbGNveEBtaWNyb3NvZnQuY29tPgorICoKKyAqIFRo aXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQv b3IKKyAqIG1vZGlmeSBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1Ymxp YyBMaWNlbnNlIGFzCisgKiBwdWJsaXNoZWQgYnkgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlv bjsgZWl0aGVyIHZlcnNpb24gMiBvZgorICogdGhlIExpY2Vuc2UsIG9yIChhdCB5b3VyIG9wdGlv bikgYW55IGxhdGVyIHZlcnNpb24uCisgKgorICogVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVk IGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCisgKiBidXQgV0lUSE9VVCBBTlkg V0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgorICogTUVSQ0hB TlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQor ICogR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KKyAqLworCisj aW5jbHVkZSA8bGludXgvc3BpbmxvY2suaD4KKworI2RlZmluZSB4YV90cnlsb2NrKHhhKQkJc3Bp bl90cnlsb2NrKCYoeGEpLT54YV9sb2NrKQorI2RlZmluZSB4YV9sb2NrKHhhKQkJc3Bpbl9sb2Nr KCYoeGEpLT54YV9sb2NrKQorI2RlZmluZSB4YV91bmxvY2soeGEpCQlzcGluX3VubG9jaygmKHhh KS0+eGFfbG9jaykKKyNkZWZpbmUgeGFfbG9ja19iaCh4YSkJCXNwaW5fbG9ja19iaCgmKHhhKS0+ eGFfbG9jaykKKyNkZWZpbmUgeGFfdW5sb2NrX2JoKHhhKQlzcGluX3VubG9ja19iaCgmKHhhKS0+ eGFfbG9jaykKKyNkZWZpbmUgeGFfbG9ja19pcnEoeGEpCQlzcGluX2xvY2tfaXJxKCYoeGEpLT54 YV9sb2NrKQorI2RlZmluZSB4YV91bmxvY2tfaXJxKHhhKQlzcGluX3VubG9ja19pcnEoJih4YSkt PnhhX2xvY2spCisjZGVmaW5lIHhhX2xvY2tfaXJxc2F2ZSh4YSwgZmxhZ3MpIFwKKwkJCQlzcGlu X2xvY2tfaXJxc2F2ZSgmKHhhKS0+eGFfbG9jaywgZmxhZ3MpCisjZGVmaW5lIHhhX3VubG9ja19p cnFyZXN0b3JlKHhhLCBmbGFncykgXAorCQkJCXNwaW5fdW5sb2NrX2lycXJlc3RvcmUoJih4YSkt PnhhX2xvY2ssIGZsYWdzKQorCisjZW5kaWYgLyogX0xJTlVYX1hBUlJBWV9IICovCmRpZmYgLS1n aXQgYS9rZXJuZWwvcGlkLmMgYi9rZXJuZWwvcGlkLmMKaW5kZXggYjEzYjYyNGUyYzQ5Li5iMDUw YjQ2NDNlZWUgMTAwNjQ0Ci0tLSBhL2tlcm5lbC9waWQuYworKysgYi9rZXJuZWwvcGlkLmMKQEAg LTU4LDcgKzU4LDcgQEAgaW50IHBpZF9tYXhfbWF4ID0gUElEX01BWF9MSU1JVDsKICAqLwogc3Ry dWN0IHBpZF9uYW1lc3BhY2UgaW5pdF9waWRfbnMgPSB7CiAJLmtyZWYgPSBLUkVGX0lOSVQoMiks Ci0JLmlkciA9IElEUl9JTklULAorCS5pZHIgPSBJRFJfSU5JVChpbml0X3BpZF9ucy5pZHIpLAog CS5waWRfYWxsb2NhdGVkID0gUElETlNfQURESU5HLAogCS5sZXZlbCA9IDAsCiAJLmNoaWxkX3Jl YXBlciA9ICZpbml0X3Rhc2ssCmRpZmYgLS1naXQgYS90b29scy9pbmNsdWRlL2xpbnV4L3NwaW5s b2NrLmggYi90b29scy9pbmNsdWRlL2xpbnV4L3NwaW5sb2NrLmgKaW5kZXggNGVkNTY5ZmNiMTM5 Li5iMjFiNTg2Yjk4NTQgMTAwNjQ0Ci0tLSBhL3Rvb2xzL2luY2x1ZGUvbGludXgvc3BpbmxvY2su aAorKysgYi90b29scy9pbmNsdWRlL2xpbnV4L3NwaW5sb2NrLmgKQEAgLTcsNiArNyw3IEBACiAK ICNkZWZpbmUgc3BpbmxvY2tfdAkJcHRocmVhZF9tdXRleF90CiAjZGVmaW5lIERFRklORV9TUElO TE9DSyh4KQlwdGhyZWFkX211dGV4X3QgeCA9IFBUSFJFQURfTVVURVhfSU5JVElBTElaRVI7Cisj ZGVmaW5lIF9fU1BJTl9MT0NLX1VOTE9DS0VEKHgpCShwdGhyZWFkX211dGV4X3QpUFRIUkVBRF9N VVRFWF9JTklUSUFMSVpFUgogCiAjZGVmaW5lIHNwaW5fbG9ja19pcnFzYXZlKHgsIGYpCQkodm9p ZClmLCBwdGhyZWFkX211dGV4X2xvY2soeCkKICNkZWZpbmUgc3Bpbl91bmxvY2tfaXJxcmVzdG9y ZSh4LCBmKQkodm9pZClmLCBwdGhyZWFkX211dGV4X3VubG9jayh4KQo=