Первый вариант - ты проверяешь из под рута. Под рутом висяков нету.
Второй вариант - у тебя mc собран без subshell.
Третий вариант - ты используешь ключи -u или -U.Проверено под FreeBSD 7.x и 8.x. 100% бага проявится если сразу зайти в mc и тут же выйти. Если хоть раз использовалось CTRL+O или выполнялась какая-нить команда, к примеру простой ls, тот там уж будет зависеть от того осталось что-нибудь выполнятся в субшелле или нет, если осталось, то висим.
Можно еще так воспроизвести багу. В этом варианте ключ -U не спасет миднайт. Сказать ls -l /dev | more, когда more остановит листинг, нажать CTRL+O и F10. Вуа-ля - миднайт висит.
Так что с субшеллом есть проблемы как я понимаю, когда там чего остается, но вот откуда там что-то берется когда mc только запустился, вот это загадка известная только разработчикам.