Да сейчас smp вообще довольно активно пилят (в openbsd). Редкий релиз проходит без новостей о том, что разлочен тот или иной syscall. Просто это довольно непростая задача.
И потом, ситуация с smp в openbsd заключается в том, что в ядре многие системные вызовы лочатся "глобально", т.е. лочат всё ядро или какую-то его значительную его части (а-ля net lock или как его там). Исполнению многопоточных приложений на разных ядрах, например, это никак не мешает.
А то, что многие части ядра не масштабируются так хорошо, как могли бы - это да.