Linus Torvalds writes: (Summary) wrote:
That's not the issue.
That's not the issue.
The issue is that somebody else can come in - using direct IO - at the same time as the first person is collecting measurements, and thus race with the collector.
race with the collector.
So now the measurements are not trustworthy any more. and *my* point is that it's the wrong lock for actually checking integrity (it doesn't actually guarantee exclusion, even though in practice it's almost always the case), and so we're adding a nasty callback that in 99% of all cases is the same as the normal read, and we *could* have just added it with a RWF flag instead.
[...]
}That's not the issue.
That's not the issue.
The issue is that somebody else can come in - using direct IO - at the same time as the first person is collecting measurements, and thus race with the collector.
race with the collector.
So now the measurements are not trustworthy any more. and *my* point is that it's the wrong lock for actually checking integrity (it doesn't actually guarantee exclusion, even though in practice it's almost always the case), and so we're adding a nasty callback that in 99% of all cases is the same as the normal read, and we *could* have just added it with a RWF flag instead.