So the thing Maz complained about is because KVM assumes synchronize_srcu() is 'free' when there is no srcu_read_lock() activity. This series 'breaks' that.
I've not looked hard enough at the new SRCU to see if its possible to re-instate that feature.