The protection_domain oops in the pd_set in the SystemDictionary are the only reason now that the system dictionary needs to be walked during young collection. The assumption is that there aren't a lot of protection domain oops here, so they could be moved to another root so that they can be walked during GC without walking the system dictionary.
This could be a reasonable performance improvement.
Need to 1 - gather statistics about how many protection domain oops are in system dictionary to verify that this is worth doing (vs. going by my gut feeling). Then run performance tests before and after.