Created attachment 327541 [details]
In bug 179946, I'm mentioning that reconcileLayerPositionForViewportRect does not affect children deeper than the root node. Additionally, when the function is called for subframes, the "reconcile layer position" is still only applied from the root node, not the subframe node.
The attached patch tries to address that. However, as in bug 179946 I'm not sure about an effect of reconcileLayerPositionForViewportRect that I can test. I tried my patch with the experimental macOS async frame scrolling but still can not see any difference.
Created attachment 331341 [details]
Patch (applies on top of bugs 173833 and 179946)
An alternative version applying on top of bugs 173833 and 179946. The test outputs the layer tree. But I'm still not sure how to exhibit a difference with the old code.