>Можно ли вызвать sys_umount или sys_open в контексте ядра?
>Если нельзя то как это сделать, например отмантировать fs в контексте?
А как насчёт попробовать? В ядре конкретно линукса толком мало ковырялся, но кажется все, что деляют ф-и sys_*, это вызывают do_*. Надеюсь, понятно написал: это типа префиксы разные. Вообще-то эти sys_ ф-и должны вызываться через таблицу системных вызовов из обработчика эмулированного прерывания и уже с настроеным стеком и всё такое. Короче, ИМХО, юзай do_umount и do_open.
А насчет контекста, то в sys_ ф-ях он точно в контексте ядра, восстановлением этого занимется ф-я на асме, вызываемая при переключениях процессов и эм. прерываниях.