From mboxrd@z Thu Jan 1 00:00:00 1970 From: Thomas Gleixner Subject: [patch V2 10/29] mm/page_owner: Simplify stack trace handling Date: Thu, 18 Apr 2019 10:41:29 +0200 Message-ID: <20190418084253.991328385@linutronix.de> References: <20190418084119.056416939@linutronix.de> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: LKML Cc: Mike Snitzer , David Airlie , Catalin Marinas , dri-devel@lists.freedesktop.org, linux-mm@kvack.org, dm-devel@redhat.com, Alexander Potapenko , Christoph Lameter , Christoph Hellwig , Alasdair Kergon , Marek Szyprowski , linux-arch@vger.kernel.org, x86@kernel.org, kasan-dev@googlegroups.com, Johannes Thumshirn , Andrey Ryabinin , Alexey Dobriyan , intel-gfx@lists.freedesktop.org, David Rientjes , Akinobu Mita , Steven Rostedt , Josef Bacik , Mike Rapoport , Andy Lutomirski , Josh Poimboeuf , David Sterba List-Id: intel-gfx@lists.freedesktop.org UmVwbGFjZSB0aGUgaW5kaXJlY3Rpb24gdGhyb3VnaCBzdHJ1Y3Qgc3RhY2tfdHJhY2UgYnkgdXNp bmcgdGhlIHN0b3JhZ2UKYXJyYXkgYmFzZWQgaW50ZXJmYWNlcy4KClRoZSBvcmlnaW5hbCBjb2Rl IGluIGFsbCBwcmludGluZyBmdW5jdGlvbnMgaXMgcmVhbGx5IHdyb25nLiBJdCBhbGxvY2F0ZXMg YQpzdG9yYWdlIGFycmF5IG9uIHN0YWNrIHdoaWNoIGlzIHVudXNlZCBiZWNhdXNlIGRlcG90X2Zl dGNoX3N0YWNrKCkgZG9lcyBub3QKc3RvcmUgYW55dGhpbmcgaW4gaXQuIEl0IG92ZXJ3cml0ZXMg dGhlIGVudHJpZXMgcG9pbnRlciBpbiB0aGUgc3RhY2tfdHJhY2UKc3RydWN0IHNvIGl0IHBvaW50 cyB0byB0aGUgZGVwb3Qgc3RvcmFnZS4KClNpZ25lZC1vZmYtYnk6IFRob21hcyBHbGVpeG5lciA8 dGdseEBsaW51dHJvbml4LmRlPgpDYzogbGludXgtbW1Aa3ZhY2sub3JnCkNjOiBNaWtlIFJhcG9w b3J0IDxycHB0QGxpbnV4LnZuZXQuaWJtLmNvbT4KQ2M6IERhdmlkIFJpZW50amVzIDxyaWVudGpl c0Bnb29nbGUuY29tPgpDYzogQW5kcmV3IE1vcnRvbiA8YWtwbUBsaW51eC1mb3VuZGF0aW9uLm9y Zz4KLS0tCiBtbS9wYWdlX293bmVyLmMgfCAgIDc5ICsrKysrKysrKysrKysrKysrKystLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAxIGZpbGUgY2hhbmdlZCwgMjggaW5zZXJ0 aW9ucygrKSwgNTEgZGVsZXRpb25zKC0pCgotLS0gYS9tbS9wYWdlX293bmVyLmMKKysrIGIvbW0v cGFnZV9vd25lci5jCkBAIC01OCwxNSArNTgsMTAgQEAgc3RhdGljIGJvb2wgbmVlZF9wYWdlX293 bmVyKHZvaWQpCiBzdGF0aWMgX19hbHdheXNfaW5saW5lIGRlcG90X3N0YWNrX2hhbmRsZV90IGNy ZWF0ZV9kdW1teV9zdGFjayh2b2lkKQogewogCXVuc2lnbmVkIGxvbmcgZW50cmllc1s0XTsKLQlz dHJ1Y3Qgc3RhY2tfdHJhY2UgZHVtbXk7CisJdW5zaWduZWQgaW50IG5yX2VudHJpZXM7CiAKLQlk dW1teS5ucl9lbnRyaWVzID0gMDsKLQlkdW1teS5tYXhfZW50cmllcyA9IEFSUkFZX1NJWkUoZW50 cmllcyk7Ci0JZHVtbXkuZW50cmllcyA9ICZlbnRyaWVzWzBdOwotCWR1bW15LnNraXAgPSAwOwot Ci0Jc2F2ZV9zdGFja190cmFjZSgmZHVtbXkpOwotCXJldHVybiBkZXBvdF9zYXZlX3N0YWNrKCZk dW1teSwgR0ZQX0tFUk5FTCk7CisJbnJfZW50cmllcyA9IHN0YWNrX3RyYWNlX3NhdmUoZW50cmll cywgQVJSQVlfU0laRShlbnRyaWVzKSwgMCk7CisJcmV0dXJuIHN0YWNrX2RlcG90X3NhdmUoZW50 cmllcywgbnJfZW50cmllcywgR0ZQX0tFUk5FTCk7CiB9CiAKIHN0YXRpYyBub2lubGluZSB2b2lk IHJlZ2lzdGVyX2R1bW15X3N0YWNrKHZvaWQpCkBAIC0xMjAsNDYgKzExNSwzOSBAQCB2b2lkIF9f cmVzZXRfcGFnZV9vd25lcihzdHJ1Y3QgcGFnZSAqcGFnCiAJfQogfQogCi1zdGF0aWMgaW5saW5l IGJvb2wgY2hlY2tfcmVjdXJzaXZlX2FsbG9jKHN0cnVjdCBzdGFja190cmFjZSAqdHJhY2UsCi0J CQkJCXVuc2lnbmVkIGxvbmcgaXApCitzdGF0aWMgaW5saW5lIGJvb2wgY2hlY2tfcmVjdXJzaXZl X2FsbG9jKHVuc2lnbmVkIGxvbmcgKmVudHJpZXMsCisJCQkJCSB1bnNpZ25lZCBpbnQgbnJfZW50 cmllcywKKwkJCQkJIHVuc2lnbmVkIGxvbmcgaXApCiB7Ci0JaW50IGk7CisJdW5zaWduZWQgaW50 IGk7CiAKLQlpZiAoIXRyYWNlLT5ucl9lbnRyaWVzKQotCQlyZXR1cm4gZmFsc2U7Ci0KLQlmb3Ig KGkgPSAwOyBpIDwgdHJhY2UtPm5yX2VudHJpZXM7IGkrKykgewotCQlpZiAodHJhY2UtPmVudHJp ZXNbaV0gPT0gaXApCisJZm9yIChpID0gMDsgaSA8IG5yX2VudHJpZXM7IGkrKykgeworCQlpZiAo ZW50cmllc1tpXSA9PSBpcCkKIAkJCXJldHVybiB0cnVlOwogCX0KLQogCXJldHVybiBmYWxzZTsK IH0KIAogc3RhdGljIG5vaW5saW5lIGRlcG90X3N0YWNrX2hhbmRsZV90IHNhdmVfc3RhY2soZ2Zw X3QgZmxhZ3MpCiB7CiAJdW5zaWduZWQgbG9uZyBlbnRyaWVzW1BBR0VfT1dORVJfU1RBQ0tfREVQ VEhdOwotCXN0cnVjdCBzdGFja190cmFjZSB0cmFjZSA9IHsKLQkJLm5yX2VudHJpZXMgPSAwLAot CQkuZW50cmllcyA9IGVudHJpZXMsCi0JCS5tYXhfZW50cmllcyA9IFBBR0VfT1dORVJfU1RBQ0tf REVQVEgsCi0JCS5za2lwID0gMgotCX07CiAJZGVwb3Rfc3RhY2tfaGFuZGxlX3QgaGFuZGxlOwor CXVuc2lnbmVkIGludCBucl9lbnRyaWVzOwogCi0Jc2F2ZV9zdGFja190cmFjZSgmdHJhY2UpOwor CW5yX2VudHJpZXMgPSBzdGFja190cmFjZV9zYXZlKGVudHJpZXMsIEFSUkFZX1NJWkUoZW50cmll cyksIDIpOwogCiAJLyoKLQkgKiBXZSBuZWVkIHRvIGNoZWNrIHJlY3Vyc2lvbiBoZXJlIGJlY2F1 c2Ugb3VyIHJlcXVlc3QgdG8gc3RhY2tkZXBvdAotCSAqIGNvdWxkIHRyaWdnZXIgbWVtb3J5IGFs bG9jYXRpb24gdG8gc2F2ZSBuZXcgZW50cnkuIE5ldyBtZW1vcnkKLQkgKiBhbGxvY2F0aW9uIHdv dWxkIHJlYWNoIGhlcmUgYW5kIGNhbGwgZGVwb3Rfc2F2ZV9zdGFjaygpIGFnYWluCi0JICogaWYg d2UgZG9uJ3QgY2F0Y2ggaXQuIFRoZXJlIGlzIHN0aWxsIG5vdCBlbm91Z2ggbWVtb3J5IGluIHN0 YWNrZGVwb3QKLQkgKiBzbyBpdCB3b3VsZCB0cnkgdG8gYWxsb2NhdGUgbWVtb3J5IGFnYWluIGFu ZCBsb29wIGZvcmV2ZXIuCisJICogV2UgbmVlZCB0byBjaGVjayByZWN1cnNpb24gaGVyZSBiZWNh dXNlIG91ciByZXF1ZXN0IHRvCisJICogc3RhY2tkZXBvdCBjb3VsZCB0cmlnZ2VyIG1lbW9yeSBh bGxvY2F0aW9uIHRvIHNhdmUgbmV3CisJICogZW50cnkuIE5ldyBtZW1vcnkgYWxsb2NhdGlvbiB3 b3VsZCByZWFjaCBoZXJlIGFuZCBjYWxsCisJICogc3RhY2tfZGVwb3Rfc2F2ZV9lbnRyaWVzKCkg YWdhaW4gaWYgd2UgZG9uJ3QgY2F0Y2ggaXQuIFRoZXJlIGlzCisJICogc3RpbGwgbm90IGVub3Vn aCBtZW1vcnkgaW4gc3RhY2tkZXBvdCBzbyBpdCB3b3VsZCB0cnkgdG8KKwkgKiBhbGxvY2F0ZSBt ZW1vcnkgYWdhaW4gYW5kIGxvb3AgZm9yZXZlci4KIAkgKi8KLQlpZiAoY2hlY2tfcmVjdXJzaXZl X2FsbG9jKCZ0cmFjZSwgX1JFVF9JUF8pKQorCWlmIChjaGVja19yZWN1cnNpdmVfYWxsb2MoZW50 cmllcywgbnJfZW50cmllcywgX1JFVF9JUF8pKQogCQlyZXR1cm4gZHVtbXlfaGFuZGxlOwogCi0J aGFuZGxlID0gZGVwb3Rfc2F2ZV9zdGFjaygmdHJhY2UsIGZsYWdzKTsKKwloYW5kbGUgPSBzdGFj a19kZXBvdF9zYXZlKGVudHJpZXMsIG5yX2VudHJpZXMsIGZsYWdzKTsKIAlpZiAoIWhhbmRsZSkK IAkJaGFuZGxlID0gZmFpbHVyZV9oYW5kbGU7CiAKQEAgLTMzNywxNiArMzI1LDEwIEBAIHByaW50 X3BhZ2Vfb3duZXIoY2hhciBfX3VzZXIgKmJ1Ziwgc2l6ZV8KIAkJc3RydWN0IHBhZ2UgKnBhZ2Us IHN0cnVjdCBwYWdlX293bmVyICpwYWdlX293bmVyLAogCQlkZXBvdF9zdGFja19oYW5kbGVfdCBo YW5kbGUpCiB7Ci0JaW50IHJldDsKLQlpbnQgcGFnZWJsb2NrX210LCBwYWdlX210OworCWludCBy ZXQsIHBhZ2VibG9ja19tdCwgcGFnZV9tdDsKKwl1bnNpZ25lZCBsb25nICplbnRyaWVzOworCXVu c2lnbmVkIGludCBucl9lbnRyaWVzOwogCWNoYXIgKmtidWY7Ci0JdW5zaWduZWQgbG9uZyBlbnRy aWVzW1BBR0VfT1dORVJfU1RBQ0tfREVQVEhdOwotCXN0cnVjdCBzdGFja190cmFjZSB0cmFjZSA9 IHsKLQkJLm5yX2VudHJpZXMgPSAwLAotCQkuZW50cmllcyA9IGVudHJpZXMsCi0JCS5tYXhfZW50 cmllcyA9IFBBR0VfT1dORVJfU1RBQ0tfREVQVEgsCi0JCS5za2lwID0gMAotCX07CiAKIAljb3Vu dCA9IG1pbl90KHNpemVfdCwgY291bnQsIFBBR0VfU0laRSk7CiAJa2J1ZiA9IGttYWxsb2MoY291 bnQsIEdGUF9LRVJORUwpOwpAQCAtMzc1LDggKzM1Nyw4IEBAIHByaW50X3BhZ2Vfb3duZXIoY2hh ciBfX3VzZXIgKmJ1Ziwgc2l6ZV8KIAlpZiAocmV0ID49IGNvdW50KQogCQlnb3RvIGVycjsKIAot CWRlcG90X2ZldGNoX3N0YWNrKGhhbmRsZSwgJnRyYWNlKTsKLQlyZXQgKz0gc25wcmludF9zdGFj a190cmFjZShrYnVmICsgcmV0LCBjb3VudCAtIHJldCwgJnRyYWNlLCAwKTsKKwlucl9lbnRyaWVz ID0gc3RhY2tfZGVwb3RfZmV0Y2goaGFuZGxlLCAmZW50cmllcyk7CisJcmV0ICs9IHN0YWNrX3Ry YWNlX3NucHJpbnQoa2J1ZiArIHJldCwgY291bnQgLSByZXQsIGVudHJpZXMsIG5yX2VudHJpZXMs IDApOwogCWlmIChyZXQgPj0gY291bnQpCiAJCWdvdG8gZXJyOwogCkBAIC00MDcsMTQgKzM4OSw5 IEBAIHZvaWQgX19kdW1wX3BhZ2Vfb3duZXIoc3RydWN0IHBhZ2UgKnBhZ2UKIHsKIAlzdHJ1Y3Qg cGFnZV9leHQgKnBhZ2VfZXh0ID0gbG9va3VwX3BhZ2VfZXh0KHBhZ2UpOwogCXN0cnVjdCBwYWdl X293bmVyICpwYWdlX293bmVyOwotCXVuc2lnbmVkIGxvbmcgZW50cmllc1tQQUdFX09XTkVSX1NU QUNLX0RFUFRIXTsKLQlzdHJ1Y3Qgc3RhY2tfdHJhY2UgdHJhY2UgPSB7Ci0JCS5ucl9lbnRyaWVz ID0gMCwKLQkJLmVudHJpZXMgPSBlbnRyaWVzLAotCQkubWF4X2VudHJpZXMgPSBQQUdFX09XTkVS X1NUQUNLX0RFUFRILAotCQkuc2tpcCA9IDAKLQl9OwogCWRlcG90X3N0YWNrX2hhbmRsZV90IGhh bmRsZTsKKwl1bnNpZ25lZCBsb25nICplbnRyaWVzOworCXVuc2lnbmVkIGludCBucl9lbnRyaWVz OwogCWdmcF90IGdmcF9tYXNrOwogCWludCBtdDsKIApAQCAtNDM4LDEwICs0MTUsMTAgQEAgdm9p ZCBfX2R1bXBfcGFnZV9vd25lcihzdHJ1Y3QgcGFnZSAqcGFnZQogCQlyZXR1cm47CiAJfQogCi0J ZGVwb3RfZmV0Y2hfc3RhY2soaGFuZGxlLCAmdHJhY2UpOworCW5yX2VudHJpZXMgPSBzdGFja19k ZXBvdF9mZXRjaChoYW5kbGUsICZlbnRyaWVzKTsKIAlwcl9hbGVydCgicGFnZSBhbGxvY2F0ZWQg dmlhIG9yZGVyICV1LCBtaWdyYXRldHlwZSAlcywgZ2ZwX21hc2sgJSN4KCVwR2cpXG4iLAogCQkg cGFnZV9vd25lci0+b3JkZXIsIG1pZ3JhdGV0eXBlX25hbWVzW210XSwgZ2ZwX21hc2ssICZnZnBf bWFzayk7Ci0JcHJpbnRfc3RhY2tfdHJhY2UoJnRyYWNlLCAwKTsKKwlzdGFja190cmFjZV9wcmlu dChlbnRyaWVzLCBucl9lbnRyaWVzLCAwKTsKIAogCWlmIChwYWdlX293bmVyLT5sYXN0X21pZ3Jh dGVfcmVhc29uICE9IC0xKQogCQlwcl9hbGVydCgicGFnZSBoYXMgYmVlbiBtaWdyYXRlZCwgbGFz dCBtaWdyYXRlIHJlYXNvbjogJXNcbiIsCgoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX18KSW50ZWwtZ2Z4IG1haWxpbmcgbGlzdApJbnRlbC1nZnhAbGlzdHMu ZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlz dGluZm8vaW50ZWwtZ2Z4