These are both using a incompatible license (CDDL), they can't be merged into mainline.
Crafting a new GPL incompatible license for ZFS and DTrace resulted in Linux not being able to incorporate them.
Sun NEVER intended for Linux not to adopt it. They wanted it to be ubiquitous across all open source platforms.
IMO they should have two claused FreeBSD licensed it but they didn't.
Danese Cooper who was responsible for drafting the actual license while at Sun says another thing.
Obvious business sense stands firmly with Danese, it would be very stupid of Sun to hand over the best technological advantages of Solaris to their main competitor, which was Linux, while struggling against it in the market.
Open-sourcing Solaris was a last ditch effort from Sun to attract mindshare (and eventually market share) back from Linux, that plan would be doomed beforehand if Linux could just pick the best parts of Solaris for inclusion.
They never resort to looking outside their little bubble world to see how others solved problems they are trying to fix. They simply are not capable of that. They constantly reinvent the wheel and reinvent it poorly. They should have simply adopted kqueue, ZFS, dtrace, jail(), etc. but didn't. They choose to refuse to see how others solved problems and use the good solutions of others.
It's one of the most damaging things about that community.