Re: [PATCH v1 1/5] selftests/arm64: Log errors in verify_mte_pointer_validity()

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 5/10/22 10:45 AM, Mark Brown wrote:
When we detect a problem in verify_mte_pointer_validity() while checking
tags we don't log what the problem was which makes debugging harder. Add
some diagnostics.

Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>
---
  .../selftests/arm64/mte/check_tags_inclusion.c       | 12 +++++++++---
  1 file changed, 9 insertions(+), 3 deletions(-)

diff --git a/tools/testing/selftests/arm64/mte/check_tags_inclusion.c b/tools/testing/selftests/arm64/mte/check_tags_inclusion.c
index deaef1f61076..b906914997ce 100644
--- a/tools/testing/selftests/arm64/mte/check_tags_inclusion.c
+++ b/tools/testing/selftests/arm64/mte/check_tags_inclusion.c
@@ -25,8 +25,11 @@ static int verify_mte_pointer_validity(char *ptr, int mode)
  	/* Check the validity of the tagged pointer */
  	memset((void *)ptr, '1', BUFFER_SIZE);
  	mte_wait_after_trig();
-	if (cur_mte_cxt.fault_valid)
+	if (cur_mte_cxt.fault_valid) {
+		ksft_print_msg("Unexpected fault recorded for %p-%p in mode %x\n",
+			       ptr, ptr + BUFFER_SIZE, mode);
  		return KSFT_FAIL;
+	}
  	/* Proceed further for nonzero tags */
  	if (!MT_FETCH_TAG((uintptr_t)ptr))
  		return KSFT_PASS;
@@ -34,10 +37,13 @@ static int verify_mte_pointer_validity(char *ptr, int mode)
  	/* Check the validity outside the range */
  	ptr[BUFFER_SIZE] = '2';
  	mte_wait_after_trig();
-	if (!cur_mte_cxt.fault_valid)
+	if (!cur_mte_cxt.fault_valid) {
+		ksft_print_msg("No valid fault recorded for %p in mode %x\n",
+			       ptr, mode);
  		return KSFT_FAIL;
-	else
+	} else {
  		return KSFT_PASS;
+	}
  }
static int check_single_included_tags(int mem_type, int mode)


Nice. Thanks for the patch.

It would be a nice addition to print mode names as strings to make
it easy to understand. Could done in a future patch. e,g: MTE_NONE_ERR etc.

Reviewed-by: Shuah Khan <skhan@xxxxxxxxxxxxxxxxxxx>

thanks,
-- Shuah




[Index of Archives]     [Linux Wireless]     [Linux Kernel]     [ATH6KL]     [Linux Bluetooth]     [Linux Netdev]     [Kernel Newbies]     [Share Photos]     [IDE]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux ATA RAID]     [Samba]     [Device Mapper]

  Powered by Linux