While working on CL https://codereview.chromium.org/2721933002/ that parallelizes the headers phase and response body writing phase of two transactions, TSAN came across two data race conditions where the IO thread of the headers phase transaction was reading the following while it was being written to by the cache worker thread of the writer transaction:
entry_->disk_entry->GetDataSize(kResponseContentIndex)
entry_->disk_entry->GetLastUsed()
Block file cache should not allow that to happen/API should be documented accordingly.
Comment 1 by rdsmith@chromium.org
, Feb 16 2018