Помогите разобраться.
В драйвере выделяю память при помощи alloc_pages().
Процесс открывает файл устройства, вызывает mmap.
Драйвер отображает память с помощью vm_insert_page().
При этом первый вызов vm_insert_page проходит успешно.
Но позже (в одном из ioctl-ов драйвера) необходимо переключить виртуальную область на другую физическую область.
Вот здесь не знаю как делать правильно. Повторный вызов vm_insert_page для другой страницы провальный.
Перепробовал море вариантов (