breakpad/src
Alex Gough f6e42357d4 Add maxsize for xstate areas
Breakpad skips the xstate area in x64 contexts but allowed this area
to be of unconstrained size. This hits problems if the size is greater
than Chrome's maximum allocation size, so we change to skipping a
maximum size. The maximum is chosen to allow the full set of states
today, plus some slack for the future:

Based on Intel x64 manual 13.5 XSAVE-MANAGED STATE

* => further bytes might be reserved

| Size | Region           |
|  576 | Legacy + header  |
|  384 | AVX State        |
|   80 | MPX State        |
| 1600 | AVX-512 State    |
|   72*| PT State         |
|    8 | pkru state       |
|    8 | pasid state      |
|   16 | CET state        |
|    8 | HDC State        |
|   96?| uintr state      |
|  808*| lbr state        |
|    8 | hwp state        |
|   16 | amx state        |

== 3680 so jump up a bit for the future to 2**12.

Bug:1425631
Change-Id: Ie08555651977cdbfa1c351c661118f13238213c4
Reviewed-on: https://chromium-review.googlesource.com/c/breakpad/breakpad/+/4379497
Reviewed-by: Ivan Penkov <ivanpe@chromium.org>
2023-04-01 01:52:18 +00:00
..
client Add #include <config.h> to the beginning of all cc files 2023-02-27 19:31:32 +00:00
common Add RISC-V register names 2023-03-29 04:37:32 +00:00
google_breakpad Add support for reading annotation objects in Crashpad modules 2023-01-26 20:22:33 +00:00
processor Add maxsize for xstate areas 2023-04-01 01:52:18 +00:00
third_party gyp: drop unused build system 2022-12-05 01:38:54 +00:00
tools [dump_syms/Mac] New -n MODULE arg to Mac dump_syms 2023-03-20 18:43:06 +00:00
breakpad_googletest_includes.h Update copyright boilerplate, 2022 edition (Breakpad) 2022-09-07 16:59:53 +00:00
config.h.in enables C++17 mode 2022-10-14 19:08:12 +00:00