On Fri, Jun 24, 2022 at 05:10:00PM +0300, Ivan T. Ivanov wrote: > Add kunit tests for obvious cases where stack unwind could be needed. > Like these: > > * Unwind a separate task > * Unwind starting from caller > * Unwind from irq context > * Unwind from kprobe handler called via ftrace > * Unwind from ftrace handler > * Unwind through kretprobed function > * Unwind from kretprobe handler > > Tests are completely based on code used in s390 unwinder tests. > Cases which where not relevant to aarch64 where removed and > some places where adjusted to address aarch64 specifics. I think this would be a bit easier to digest if it were a series which builds things up with the test cases in individual patches, or at least things like ftrace and kprobes split out a bit more, rather than every single test all at once. I've got a few *very* superficial comments below, I think the code is fine but there's several moving pieces to check. > +/* > + * Calls test_arch_stack_walk() which is handy wrapper of aarch64 unwind > + * functionality, and verifies that the result contains unwindme_func2 > + *followed by unwindme_func1. Missing space. > + ret = register_ftrace_function(fops); > + if (!ret) { > + ret = test_unwind_ftraced_func(u); > + unregister_ftrace_function(fops); > + } else { > + kunit_err(current_test, > + "failed to register ftrace handler (%d)\n", ret); > + } Shouldn't we return an error here?