DescriptionThread safe initialization of OSCrypt cache
Clients of OSCrypt run in multiple threads. This creates a race
condition for the lazy initialization of OSCrypt, which currently
isn't thread safe.
Additionally, when a synchronous call to libsecret blocks waiting for
user permission, parallel calls to it do not block on the same prompt.
Rather, they fail. This means that, while the first caller will
correctly identify that encryption should be used, subsequent callers
will behave as if full encryption is not available, until the first
caller gets permission and properly initialises OSCrypt.
Fixing thread safety should fix reported cases of data loss.
BUG=631171
Review-Url: https://codereview.chromium.org/2359803002
Cr-Commit-Position: refs/heads/master@{#421097}
(cherry picked from commit fc6f304827896fb27397fc2a27f9f5717eff319c)
Patch Set 1 #
Messages
Total messages: 1 (0 generated)
|