]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
arm64: compat: Allow single-byte watchpoints on all addresses
authorWill Deacon <will@kernel.org>
Mon, 29 Jul 2019 10:06:17 +0000 (11:06 +0100)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Sun, 25 Aug 2019 08:53:03 +0000 (10:53 +0200)
commit 849adec41203ac5837c40c2d7e08490ffdef3c2c upstream.

Commit d968d2b801d8 ("ARM: 7497/1: hw_breakpoint: allow single-byte
watchpoints on all addresses") changed the validation requirements for
hardware watchpoints on arch/arm/. Update our compat layer to implement
the same relaxation.

Cc: <stable@vger.kernel.org>
Signed-off-by: Will Deacon <will@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
arch/arm64/kernel/hw_breakpoint.c

index eeebfc31552620f2f76ee1308486100815308674..036fbb9598211acae909d8293e49d966e94b3351 100644 (file)
@@ -504,13 +504,14 @@ int arch_validate_hwbkpt_settings(struct perf_event *bp)
                        /* Aligned */
                        break;
                case 1:
-                       /* Allow single byte watchpoint. */
-                       if (info->ctrl.len == ARM_BREAKPOINT_LEN_1)
-                               break;
                case 2:
                        /* Allow halfword watchpoints and breakpoints. */
                        if (info->ctrl.len == ARM_BREAKPOINT_LEN_2)
                                break;
+               case 3:
+                       /* Allow single byte watchpoint. */
+                       if (info->ctrl.len == ARM_BREAKPOINT_LEN_1)
+                               break;
                default:
                        return -EINVAL;
                }