[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <bfa0af18-04ac-857d-d3d8-ad9290f912c8@huawei.com>
Date: Mon, 24 Jan 2022 09:19:00 +0000
From: John Garry <john.garry@...wei.com>
To: Leo Yan <leo.yan@...aro.org>, Marco Elver <elver@...gle.com>,
Will Deacon <will@...nel.org>
CC: Thomas Richter <tmricht@...ux.ibm.com>,
<linux-kernel@...r.kernel.org>, <linux-perf-users@...r.kernel.org>,
<acme@...nel.org>, <svens@...ux.ibm.com>, <gor@...ux.ibm.com>,
<sumanthk@...ux.ibm.com>, <hca@...ux.ibm.com>,
"Mark Rutland" <mark.rutland@....com>,
"linux-arm-kernel@...ts.infradead.org"
<linux-arm-kernel@...ts.infradead.org>
Subject: Test 73 Sig_trap fails on arm64 (was Re: [PATCH] perf test: Test 73
Sig_trap fails on s390)
On 18/01/2022 12:43, Leo Yan wrote:
Hi Will,
Can you kindly check below the question from Leo on this issue?
You were cc'ed earlier in this thread so should be able to find more
context, if needed.
Cheers,
John
> On Tue, Jan 18, 2022 at 12:40:04PM +0100, Marco Elver wrote:
>
> [...]
>
>>> Both Arm and Arm64 platforms cannot support signal handler with
>>> breakpoint, please see the details in [1]. So I think we need
>>> something like below:
>>>
>>> static int test__sigtrap(struct test_suite *test __maybe_unused, int subtest __maybe_unused)
>>> {
>>> ...
>>>
>>> if (!BP_SIGNAL_IS_SUPPORTED) {
>>> pr_debug("Test not supported on this architecture");
>>> return TEST_SKIP;
>>> }
>>>
>>> ...
>>> }
>>>
>>> Since we have defined BP_SIGNAL_IS_SUPPORTED, I think we can reuse it at
>>> here.
>>>
>>> [1]https://lore.kernel.org/lkml/157169993406.29376.12473771029179755767.tip-bot2@tip-bot2/
>> Does this limitation also exist for address watchpoints? The sigtrap
>> test does not make use of instruction breakpoints, but instead just
>> sets up a watchpoint on access to a data address.
> Yes, after reading the code, the flow for either instrution breakpoint
> or watchpoint both use the single step [1], thus the signal handler will
> take the single step execution and lead to the infinite loop.
>
> I am not the best person to answer this question; @Will, could you
> confirm for this? Thanks!
>
> Leo
>
> [1]https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/arch/arm64/kernel/hw_breakpoint.c
Powered by blists - more mailing lists