clang tot bots failing 'sizes' step |
|||||||||||
Issue descriptionSome clang tot bots are failing the sizes step, e.g. https://ci.chromium.org/buildbot/chromium.clang/ToTLinuxASan/3922 https://ci.chromium.org/buildbot/chromium.clang/ToTLinuxASanLibfuzzer/1396 https://ci.chromium.org/buildbot/chromium.clang/ToTLinuxMSan/4064 Maybe related to the LUCI migration? Here's the first one from ToTLinuxASan: From 8 Oct: https://ci.chromium.org/buildbot/chromium.clang/ToTLinuxASan/3768
,
Oct 22
Oct 8 lines up with https://chromium-review.googlesource.com/c/chromium/src/+/1269104 , so it's likely from that. We don't need to run the static initializer check on *San bots and I wouldn't be surprised if it failed there (even though the list looks somewhat reasonable -- maybe we can make it work eventually? But historically I think we haven't run this step on the *san bots)
,
Nov 6
thomasanderson is OOO and this is very broken :-( sizes.py is used to track binary sizes. I think it's unfortunate that it's become conflated with the static initializers check. It's even more unfortunate that the expectations on number of initializers have become part of this script, and don't take into account the build configuration: does it have ASan? MSan? Is nacl disabled? The script can't tell. It's probably too late to revert Thomas's change. thakis, dpranke, do you have any ideas here? I don't want to turn off size tracking for these bots; it's nice to have the data.
,
Nov 7
As far as I know, the sizes step has done the static initializer check for a *very* long time. In fact, for most of that time I thought no one was actually using the sizes part; you Clang folks might be the only people that are using it now. The current plan of record is to split this script in two, to have one step looking for static initializers and another computing sizes, and then you can run one or both in a given config as desired. However, this isn't currently a particularly high-priority task for non-clang folks. At some point this was on my plate to do the split, but I'm not sure that I'll get to it soon. I might have some time on Friday or Monday, and I've been trying to clear off a lot of these smaller tasks from my queue, so I might get to it then. Or, you might want to just take a stab at fixing things or splitting them yourself.
,
Nov 7
> In fact, for most of that time I thought no one was actually using the sizes part; you Clang folks might be the only people that are using it now. Is there some other mechanism for tracking binary size these days, or are you saying we're the only ones that do it now? > The current plan of record is to split this script in two, to have one step looking for static initializers and another computing sizes, and then you can run one or both in a given config as desired. That sounds great. I think it would be cool if all build bots (or at least most) had a sizes step to make it easy to see the binary size impact of a CL for example. > Or, you might want to just take a stab at fixing things or splitting them yourself. I'll probably just try to disable it on the bots where it's failing. It's not high priority for us either. https://chromium-review.googlesource.com/c/chromium/tools/build/+/1322809
,
Nov 7
The following revision refers to this bug: https://chromium.googlesource.com/chromium/tools/build/+/b09175a1614602ed730a85d5cdbce66c964e1398 commit b09175a1614602ed730a85d5cdbce66c964e1398 Author: Hans Wennborg <hans@chromium.org> Date: Wed Nov 07 12:38:13 2018 Disable the sizes step on Clang ToT bots where it doesn't work anymore Recently the sizes step also started enforcing the expected number of static initializers. This doesn't work for more exotic build configs such as ASan, see bug. Bug: 897645 Change-Id: If7f303a054b41ab402f0ac891b57de1485ba9bbb Reviewed-on: https://chromium-review.googlesource.com/c/1322809 Reviewed-by: Takuto Ikuta <tikuta@chromium.org> Reviewed-by: Nico Weber <thakis@chromium.org> Commit-Queue: Hans Wennborg <hans@chromium.org> [modify] https://crrev.com/b09175a1614602ed730a85d5cdbce66c964e1398/scripts/slave/recipe_modules/chromium_tests/chromium_clang.py
,
Nov 7
> Is there some other mechanism for tracking binary size these days, > or are you saying we're the only ones that do it now? I'm not sure where all or how this is tracked. I know Android tracks binary size closely, but I think they have a different mechanism for this. +agrieve who can probably answer that. I'm not sure if any other platform is regularly tracking sizes, though.
,
Nov 8
,
Nov 8
For Android sizes, we're using: https://cs.chromium.org/chromium/src/build/android/resource_sizes.py For Android static initializers: https://cs.chromium.org/chromium/src/chrome/android/BUILD.gn?rcl=1c12500afbae9a30809e34b5ad0113eda5f606b1&l=1778 There's also a mailing-list: binary-size@chromium.org
,
Nov 8
agrieve: What about Windows, Mac and Linux? Anyway, the bots that were red due to this are now green, so unblocking the roll and reassigning to thomasanderson.
,
Nov 8
Windows tracks "sizes" I believe, and there's a sheriffing rotation that covers these regressions. Not sure if Mac and Linux are covered by this too, maybe the current sheriff can elaborate.
,
Nov 19
Bug 110002 is tracking removing the SI check from sizes.py. Once that's done, we can reenable the sizes step on the clang ToT bots in case anyone is tracking binary sizes on those bots using the perf dashboard.
,
Dec 5
The following revision refers to this bug: https://chromium.googlesource.com/chromium/tools/build/+/ff9378a845b7520620d16109e6444dbfebd3a2fa commit ff9378a845b7520620d16109e6444dbfebd3a2fa Author: Tom Anderson <thomasanderson@chromium.org> Date: Wed Dec 05 18:36:24 2018 Enable the sizes step on Clang ToT bots where it was disabled The sizes step should succeed now since the static initializer check has been moved to a separate testing script. BUG= 897645 Change-Id: Ic50acbb5d99d1ba3ca9d817b935325c047e26190 Reviewed-on: https://chromium-review.googlesource.com/c/1361806 Reviewed-by: Hans Wennborg <hans@chromium.org> Commit-Queue: Thomas Anderson <thomasanderson@chromium.org> [modify] https://crrev.com/ff9378a845b7520620d16109e6444dbfebd3a2fa/scripts/slave/recipe_modules/chromium_tests/chromium_clang.py
,
Dec 5
|
|||||||||||
►
Sign in to add a comment |
|||||||||||
Comment 1 by h...@chromium.org
, Oct 22