From mboxrd@z Thu Jan 1 00:00:00 1970 From: Thomas Gleixner Subject: [patch V3 11/29] fault-inject: Simplify stacktrace retrieval Date: Thu, 25 Apr 2019 11:45:04 +0200 Message-ID: <20190425094802.158306076@linutronix.de> References: <20190425094453.875139013@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 , Miroslav Benes , 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 List-Id: linux-arch.vger.kernel.org UmVwbGFjZSB0aGUgaW5kaXJlY3Rpb24gdGhyb3VnaCBzdHJ1Y3Qgc3RhY2tfdHJhY2Ugd2l0aCBh biBpbnZvY2F0aW9uIG9mCnRoZSBzdG9yYWdlIGFycmF5IGJhc2VkIGludGVyZmFjZS4KClNpZ25l ZC1vZmYtYnk6IFRob21hcyBHbGVpeG5lciA8dGdseEBsaW51dHJvbml4LmRlPgpDYzogQWtpbm9i dSBNaXRhIDxha2lub2J1Lm1pdGFAZ21haWwuY29tPgotLS0KIGxpYi9mYXVsdC1pbmplY3QuYyB8 ICAgMTIgKysrLS0tLS0tLS0tCiAxIGZpbGUgY2hhbmdlZCwgMyBpbnNlcnRpb25zKCspLCA5IGRl bGV0aW9ucygtKQoKLS0tIGEvbGliL2ZhdWx0LWluamVjdC5jCisrKyBiL2xpYi9mYXVsdC1pbmpl Y3QuYwpAQCAtNjUsMjIgKzY1LDE2IEBAIHN0YXRpYyBib29sIGZhaWxfdGFzayhzdHJ1Y3QgZmF1 bHRfYXR0cgogCiBzdGF0aWMgYm9vbCBmYWlsX3N0YWNrdHJhY2Uoc3RydWN0IGZhdWx0X2F0dHIg KmF0dHIpCiB7Ci0Jc3RydWN0IHN0YWNrX3RyYWNlIHRyYWNlOwogCWludCBkZXB0aCA9IGF0dHIt PnN0YWNrdHJhY2VfZGVwdGg7CiAJdW5zaWduZWQgbG9uZyBlbnRyaWVzW01BWF9TVEFDS19UUkFD RV9ERVBUSF07Ci0JaW50IG47CisJaW50IG4sIG5yX2VudHJpZXM7CiAJYm9vbCBmb3VuZCA9IChh dHRyLT5yZXF1aXJlX3N0YXJ0ID09IDAgJiYgYXR0ci0+cmVxdWlyZV9lbmQgPT0gVUxPTkdfTUFY KTsKIAogCWlmIChkZXB0aCA9PSAwKQogCQlyZXR1cm4gZm91bmQ7CiAKLQl0cmFjZS5ucl9lbnRy aWVzID0gMDsKLQl0cmFjZS5lbnRyaWVzID0gZW50cmllczsKLQl0cmFjZS5tYXhfZW50cmllcyA9 IGRlcHRoOwotCXRyYWNlLnNraXAgPSAxOwotCi0Jc2F2ZV9zdGFja190cmFjZSgmdHJhY2UpOwot CWZvciAobiA9IDA7IG4gPCB0cmFjZS5ucl9lbnRyaWVzOyBuKyspIHsKKwlucl9lbnRyaWVzID0g c3RhY2tfdHJhY2Vfc2F2ZShlbnRyaWVzLCBkZXB0aCwgMSk7CisJZm9yIChuID0gMDsgbiA8IG5y X2VudHJpZXM7IG4rKykgewogCQlpZiAoYXR0ci0+cmVqZWN0X3N0YXJ0IDw9IGVudHJpZXNbbl0g JiYKIAkJCSAgICAgICBlbnRyaWVzW25dIDwgYXR0ci0+cmVqZWN0X2VuZCkKIAkJCXJldHVybiBm YWxzZTsKCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpJ bnRlbC1nZnggbWFpbGluZyBsaXN0CkludGVsLWdmeEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0 cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9pbnRlbC1nZng= From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from Galois.linutronix.de ([146.0.238.70]:58019 "EHLO Galois.linutronix.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1727973AbfDYKAg (ORCPT ); Thu, 25 Apr 2019 06:00:36 -0400 Message-ID: <20190425094802.158306076@linutronix.de> Date: Thu, 25 Apr 2019 11:45:04 +0200 From: Thomas Gleixner Subject: [patch V3 11/29] fault-inject: Simplify stacktrace retrieval References: <20190425094453.875139013@linutronix.de> MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Sender: linux-arch-owner@vger.kernel.org List-ID: To: LKML Cc: Josh Poimboeuf , x86@kernel.org, Andy Lutomirski , Akinobu Mita , Steven Rostedt , Alexander Potapenko , Alexey Dobriyan , Andrew Morton , Christoph Lameter , Pekka Enberg , linux-mm@kvack.org, David Rientjes , Catalin Marinas , Dmitry Vyukov , Andrey Ryabinin , kasan-dev@googlegroups.com, Mike Rapoport , Christoph Hellwig , iommu@lists.linux-foundation.org, Robin Murphy , Marek Szyprowski , Johannes Thumshirn , David Sterba , Chris Mason , Josef Bacik , linux-btrfs@vger.kernel.org, dm-devel@redhat.com, Mike Snitzer , Alasdair Kergon , Daniel Vetter , intel-gfx@lists.freedesktop.org, Joonas Lahtinen , Maarten Lankhorst , dri-devel@lists.freedesktop.org, David Airlie , Jani Nikula , Rodrigo Vivi , Tom Zanussi , Miroslav Benes , linux-arch@vger.kernel.org Message-ID: <20190425094504.Vm1ONPEWh5eVnA_kftHGglZEfkIwxS2RH6Ns7GVjqe8@z> Replace the indirection through struct stack_trace with an invocation of the storage array based interface. Signed-off-by: Thomas Gleixner Cc: Akinobu Mita --- lib/fault-inject.c | 12 +++--------- 1 file changed, 3 insertions(+), 9 deletions(-) --- a/lib/fault-inject.c +++ b/lib/fault-inject.c @@ -65,22 +65,16 @@ static bool fail_task(struct fault_attr static bool fail_stacktrace(struct fault_attr *attr) { - struct stack_trace trace; int depth = attr->stacktrace_depth; unsigned long entries[MAX_STACK_TRACE_DEPTH]; - int n; + int n, nr_entries; bool found = (attr->require_start == 0 && attr->require_end == ULONG_MAX); if (depth == 0) return found; - trace.nr_entries = 0; - trace.entries = entries; - trace.max_entries = depth; - trace.skip = 1; - - save_stack_trace(&trace); - for (n = 0; n < trace.nr_entries; n++) { + nr_entries = stack_trace_save(entries, depth, 1); + for (n = 0; n < nr_entries; n++) { if (attr->reject_start <= entries[n] && entries[n] < attr->reject_end) return false;