Revert r329254. The effect of r329254 was to perform COW faults as two page faults, not one. The first fault updated the mapped physical address, but mapped the new physical page with read-only access, and the second fault added write access. Over the past few weeks, we have reviewed and updated the various pmap implementation so that this extra fault wasn't necessary.
Details
Details
Diff Detail
Diff Detail
- Lint
Lint Skipped - Unit
Tests Skipped
Event Timeline
Comment Actions
Does Peter have a test that reproduces the mapping inconsistency that led to r329254?
Comment Actions
No. When I asked the reporter about test case, all he had was some instrumentation which added delays in specific points, and even then the reproduction took long time.
Comment Actions
How about asking @truckman to try a poudriere run on Ryzen with this change? He had reported that some port build failures stopped occurring with r329254.
Comment Actions
I did a poudriere run to build my usual set of ports on r336438 with this patch and didn't observe any unexpected fallout. In particular lang/ghc and lang/go both built successfully, which almost always failed prior to the original fix. This was on amd64, so I can't say anything about other arches.