LINUX.ORG.RU

блочный LKM из initrd, после загрузки системы пытается использовать тот же номер устройства

 , , , ,


0

2

Есть модуль ядра, вроде loop, только его можно попросить создать устройство не для общения с файлом, а для общения с другим блочным устройством (попутно выполняя некоторые преобразования над данными). При старте системы модуль загружается из initrd, и создаёт устройство (по просьбе) /dev/xcc0 для общения с /dev/sda2. Далее, система успешно грузится с /dev/xcc0. После входа в систему, прошу модуль создать ещё одно устройство, для общения с /dev/loop0, а он создаёт мне опять /dev/xcc0. Без initrd всё работает как надо. При необходимости могу выложить код создания устройства, если предоставленной информации будет недостаточно. В чём может быть дело?

Ответ на: комментарий от mky

Драйвер самописный, по этому имя устройства может быть любым.

Нашёл баг, с initrd никак не связан был. Просто после масштабных изменений кода номер устройства стал затираться другим значением. Сейчас уже всё работает =)

zenbooster ()