kselftest/arm64: Handle FPMR context in generic signal frame parser
authorMark Brown <broonie@kernel.org>
Wed, 6 Mar 2024 23:14:52 +0000 (23:14 +0000)
committerCatalin Marinas <catalin.marinas@arm.com>
Thu, 7 Mar 2024 17:14:54 +0000 (17:14 +0000)
Teach the generic signal frame parsing code about the newly added FPMR
frame, avoiding warnings every time one is generated.

Signed-off-by: Mark Brown <broonie@kernel.org>
Link: https://lore.kernel.org/r/20240306-arm64-2023-dpisa-v5-7-c568edc8ed7f@kernel.org
Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
tools/testing/selftests/arm64/signal/testcases/testcases.c
tools/testing/selftests/arm64/signal/testcases/testcases.h

index 9f580b5..674b88c 100644 (file)
@@ -209,6 +209,14 @@ bool validate_reserved(ucontext_t *uc, size_t resv_sz, char **err)
                        zt = (struct zt_context *)head;
                        new_flags |= ZT_CTX;
                        break;
+               case FPMR_MAGIC:
+                       if (flags & FPMR_CTX)
+                               *err = "Multiple FPMR_MAGIC";
+                       else if (head->size !=
+                                sizeof(struct fpmr_context))
+                               *err = "Bad size for fpmr_context";
+                       new_flags |= FPMR_CTX;
+                       break;
                case EXTRA_MAGIC:
                        if (flags & EXTRA_CTX)
                                *err = "Multiple EXTRA_MAGIC";
index a08ab0d..7727126 100644 (file)
@@ -19,6 +19,7 @@
 #define ZA_CTX         (1 << 2)
 #define EXTRA_CTX      (1 << 3)
 #define ZT_CTX         (1 << 4)
+#define FPMR_CTX       (1 << 5)
 
 #define KSFT_BAD_MAGIC 0xdeadbeef