Retpolines for Spectre, and PTI for Meltdown, are still in the kernel. Linus doesn't have too much disagreement with them. It's the IBRS / IBPB code for Intel's CPUs that Linus has a problem with.
Also, not everything can be mitigated in microcode, for many reasons, not all of which I understand myself. Sometimes, only a fundamental hardware-redesign can fix the issues proper.