Auto merge of #16075 - upsuper:simplify-locked, r=emilio
Auto merge of #16075 - upsuper:simplify-locked, r=emilio

Factor out read/write locked arc

<!-- Reviewable:start -->
This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/16075)
<!-- Reviewable:end -->

upsuper/servo,fiji-flo/servo,canaltinova/servo,KiChjang/servo,anthgur/servo,sadmansk/servo,saneyuki/servo,dati91/servo,anthgur/servo,eddyb/servo,sadmansk/servo,pyfisch/servo,notriddle/servo,szeged/servo,anthgur/servo,splav/servo,anthgur/servo,KiChjang/servo,szeged/servo,KiChjang/servo,emilio/servo,peterjoel/servo,mbrubeck/servo,upsuper/servo,notriddle/servo,mattnenterprise/servo,avadacatavra/servo,ConnorGBrewster/servo,jimberlage/servo,thiagopnts/servo,nnethercote/servo,nnethercote/servo,ConnorGBrewster/servo,CJ8664/servo,szeged/servo,avadacatavra/servo,CJ8664/servo,canaltinova/servo,ConnorGBrewster/servo,jimberlage/servo,DominoTree/servo,KiChjang/servo,saneyuki/servo,upsuper/servo,peterjoel/servo,mattnenterprise/servo,peterjoel/servo,emilio/servo,canaltinova/servo,dsandeephegde/servo,jimberlage/servo,thiagopnts/servo,mbrubeck/servo,mbrubeck/servo,nnethercote/servo,DominoTree/servo,thiagopnts/servo,eddyb/servo,nnethercote/servo,upsuper/servo,sadmansk/servo,sadmansk/servo,splav/servo,sadmansk/servo,peterjoel/servo,notriddle/servo,nnethercote/servo,splav/servo,notriddle/servo,rnestler/servo,SimonSapin/servo,fiji-flo/servo,canaltinova/servo,upsuper/servo,paulrouget/servo,fiji-flo/servo,mbrubeck/servo,KiChjang/servo,dati91/servo,ConnorGBrewster/servo,pyfisch/servo,rnestler/servo,mbrubeck/servo,cbrewster/servo,pyfisch/servo,paulrouget/servo,pyfisch/servo,dati91/servo,canaltinova/servo,ConnorGBrewster/servo,upsuper/servo,larsbergstrom/servo,mattnenterprise/servo,paulrouget/servo,splav/servo,cbrewster/servo,jimberlage/servo,saneyuki/servo,ConnorGBrewster/servo,notriddle/servo,saneyuki/servo,thiagopnts/servo,DominoTree/servo,anthgur/servo,cbrewster/servo,mattnenterprise/servo,mbrubeck/servo,eddyb/servo,DominoTree/servo,peterjoel/servo,cbrewster/servo,pyfisch/servo,peterjoel/servo,splav/servo,paulrouget/servo,CJ8664/servo,szeged/servo,thiagopnts/servo,ConnorGBrewster/servo,DominoTree/servo,mattnenterprise/servo,rnestler/servo,cbrewster/servo,larsbergstrom/servo,dati91/servo,fiji-flo/servo,KiChjang/servo,avadacatavra/servo,dati91/servo,saneyuki/servo,canaltinova/servo,mattnenterprise/servo,paulrouget/servo,SimonSapin/servo,splav/servo,larsbergstrom/servo,larsbergstrom/servo,larsbergstrom/servo,larsbergstrom/servo,rnestler/servo,saneyuki/servo,anthgur/servo,SimonSapin/servo,jimberlage/servo,SimonSapin/servo,eddyb/servo,ConnorGBrewster/servo,rnestler/servo,emilio/servo,dsandeephegde/servo,emilio/servo,emilio/servo,jimberlage/servo,dsandeephegde/servo,SimonSapin/servo,peterjoel/servo,CJ8664/servo,notriddle/servo,szeged/servo,szeged/servo,dsandeephegde/servo,paulrouget/servo,CJ8664/servo,cbrewster/servo,pyfisch/servo,upsuper/servo,CJ8664/servo,nnethercote/servo,larsbergstrom/servo,peterjoel/servo,pyfisch/servo,rnestler/servo,SimonSapin/servo,emilio/servo,mattnenterprise/servo,szeged/servo,emilio/servo,paulrouget/servo,nnethercote/servo,saneyuki/servo,paulrouget/servo,DominoTree/servo,thiagopnts/servo,DominoTree/servo,dsandeephegde/servo,rnestler/servo,notriddle/servo,eddyb/servo,KiChjang/servo,anthgur/servo,splav/servo,fiji-flo/servo,pyfisch/servo,szeged/servo,fiji-flo/servo,dati91/servo,cbrewster/servo,larsbergstrom/servo,avadacatavra/servo,szeged/servo,saneyuki/servo,DominoTree/servo,avadacatavra/servo,larsbergstrom/servo,anthgur/servo,canaltinova/servo,mbrubeck/servo,sadmansk/servo,splav/servo,thiagopnts/servo,jimberlage/servo,saneyuki/servo,SimonSapin/servo,KiChjang/servo,sadmansk/servo,dsandeephegde/servo,jimberlage/servo,saneyuki/servo,notriddle/servo,mbrubeck/servo,eddyb/servo,dsandeephegde/servo,avadacatavra/servo,avadacatavra/servo,nnethercote/servo,splav/servo,rnestler/servo,sadmansk/servo,notriddle/servo,avadacatavra/servo,KiChjang/servo,fiji-flo/servo,fiji-flo/servo,upsuper/servo,nnethercote/servo,nnethercote/servo,eddyb/servo,splav/servo,CJ8664/servo,dati91/servo,SimonSapin/servo,KiChjang/servo,szeged/servo,mattnenterprise/servo,emilio/servo,peterjoel/servo,notriddle/servo,dati91/servo,pyfisch/servo,DominoTree/servo,cbrewster/servo,eddyb/servo,peterjoel/servo,jimberlage/servo,emilio/servo,DominoTree/servo,larsbergstrom/servo,pyfisch/servo,paulrouget/servo,dsandeephegde/servo,CJ8664/servo,canaltinova/servo,thiagopnts/servo,emilio/servo,paulrouget/servo