e10ac3b465714d4ef44b648603ca4d3ef9a55018
(This is a merge of http://go/wvgerrit/72867) This patch replaces the previous static std::mutexes in CryptoSession with shared_mutexes, allowing multiple readers to access the resources they protect. For the shared fields, this means only Initialize(), Terminate(), and the code that sets up the usage table headers needs exclusive access. All other CryptoSession code is able to read these fields in parallel. For OEMCrypto, the static OEMCrypto lock is joined by a per-session std::mutex, which are used in concert to enforce the OEMCrypto v15 threading guarantees. On my machine this results in a noticeable increase in performance for the parallel unit tests. Bug: 70889998 Bug: 118584039 Test: CE CDM Unit Tests Test: Android Unit Tests Test: Jenkins Tests Change-Id: Ie6332ae4926ed4f14af897685d37bfe63831b14f
Description
No description provided