Catch-up merge from master, mainly to pick up spare-ring merge.