On 1/31/19 1:04 PM, Daniel Gruss wrote: > On 1/30/19 1:44 PM, Vlastimil Babka wrote: >> Close that sidechannel by always initiating readahead on the cache if we >> encounter a cache miss for preadv2(RWF_NOWAIT); with that in place, probing >> the pagecache residency itself will actually populate the cache, making the >> sidechannel useless. > > I fear this does not really close the side channel. You can time the > preadv2 function and infer which path it took, so you just bring it down > to the same as using mmap and timing accesses. > If I understood it correctly, this patch just removes the advantages of > preadv2 over mmmap+access for the attacker. But isn't that the same with mincore()? We can't simply remove the possibility of mmap+access, but we are closing the simpler methods? Vlastimil > Cheers, > Daniel >