Harden native gate thread against affinity mask growth (#59129)
authorKoundinya Veluri <kouvel@users.noreply.github.com>
Wed, 15 Sep 2021 23:18:48 +0000 (16:18 -0700)
committerGitHub <noreply@github.com>
Wed, 15 Sep 2021 23:18:48 +0000 (16:18 -0700)
commitaf2a809f96ba510ade227c3f38ab436b85ea2d76
tree0cade9ef721f51c74504570976c7d9493f7a2242
parentb83e5feab51766273530baa991c53e10b76cde15
Harden native gate thread against affinity mask growth (#59129)

Hardened ThreadpoolMgr::GateThreadStart against the possibility that the observed group-local affinity mask contains set bits at positions higher than the total group-local CPU count that was captured during earlier initialization.

This fixes customer-reported crashes which have occurred on multi-group machines with heterogenous CPU counts across groups (but the same crash can probably also occur on single-group VMs if CPUs are hot-added and are then manually added to the process affinity mask).
src/coreclr/vm/win32threadpool.cpp