2.6.32 git, где? [message #47050] |
Mon, 02 July 2012 01:18 |
|
Использую OpenVZ ядра с aufs-драйвером. С веткой 2.6.18 проблем нет, последние ядра rhel5 собираются и работают нормально. А вот с 2.6.32 проблем не было только без патчей от RedHat (то есть с начальными версиями openvz для 2.6.32). Тогда легко можно было прикрутить даже tuxonice. Потом c прикручиванием патчей возникли проблемы. До версии 042stab049 (включительно) работала модифицировання версия aufs 2.2-36. А с текущими ядрами 2.6.32 эта версия уже не работает. Что-то с блоктрровкой (BKL), скорее всего. Ибо при попытке войти в каталог от aufs ядро зависает.
Вопрос: а существует ли ныне чистая версия openvz для 2.6.32? В git всё замерло. А где хранятся текущие доработки?
|
|
|
Re: 2.6.32 git, где? [message #47055 is a reply to message #47050] |
Tue, 03 July 2012 07:05 |
|
Пока выяснил, что в 54.1 aufs ещё работает, а уже в 54.5 -- нет.
Уточнение занимает много времени, потому что стандартно включено множество драйверов, а при попытке урезать всё перестаёт собираться.
Предложение.
На сайте лежат обазы двух LiveCD от 2007 года Можно попробовать модернизировать образ KNOPPIX, чтобы он использовал современную версию 2.6.18 (или 2.6.32, если получится).
Это интересно?
|
|
|
Re: 2.6.32 git, где? [message #47058 is a reply to message #47055] |
Tue, 03 July 2012 09:11 |
|
linux-2.6.32-042stab054.1 -- aufs работает
linux-2.6.32-042stab054.2 -- aufs виснет
Виноваты изменеия в aio и iov_iter. Как я понял, эти добавления сделаны для улучшения ploop. Если их вырезать, то stab055.16 без ploop собирается и aufs работает.
Сама aufs пользуется aio при включённой опции CONFIG_AUFS_SP_IATTR (показывать время модификации специальных файлов). Попробую выключить
[Updated on: Wed, 04 July 2012 18:32] Report message to a moderator
|
|
|
Re: 2.6.32 git, где? [message #47111 is a reply to message #47058] |
Sun, 08 July 2012 13:42 |
|
После довольно долгих поисков нашёл причину: в inux-2.6.32-042stab054.2 добавили члена direct_IO_bvec в структуру address_space_operatiions. А в aufs (режим отладки) считается число членов структуры (о которых он знает) и запускается BUG_ON если что-то в эту структуру добавили или удалили. Поскольку висло при работе initramfs с выключенными сообщениями (не догадался запустить ядро с параметром debug), то ядро просто переставало реагировать (цикл while) без всяких сообщений.
Этот самый direct_IO_bvec начали реализовывать в FS только в феврале этого года (я так понимаю в ядрах 3.x). В версиях aufs для ядер 3.4 знания о этой функции ещё нет...
[Updated on: Sun, 08 July 2012 14:04] Report message to a moderator
|
|
|
Re: 2.6.32 git, где? [message #47113 is a reply to message #47111] |
Mon, 09 July 2012 05:33 |
|
В последнем тестовом ядре появитлась ещё функция direct_IO_page. Как выяснилось, в ядрах 3.x ни direct_IO_bvec, ни direct_IO_page ещё нет. Получается, что openvz для ядра RHEL6 на самом деле супер-экспериментальная. Кроме своих добавлений она содержит не включённые в основную ветку доработки Я то грешным делом полагал, что RedHat может включить в соё ядро что-то из более новых веток. Но чтоб в принципе не поддерживаемые сторонними драйверами доработки...
Соответственно повторяю пожелание: хотелось бы иметь репозитарий или выпуски openvz для чистых версий ядра, без кучи модификаций от RedHat. Мне нравится идея openvz. У меня есть желание попробовать добавить в ядро с openvz модификации-драйвера от android и посмотреть на полученный результат. Соответственно нужно ядро. которое приблизительно похоже на одну из версий ядер, используемых в android.
Вопрос: после 2.6.32-10.1 собственно openvz больше не правился? Я имею в виду базовую функциональность, а не добавления типа ploop
Как обстоит дело с openvz для ядер 3.x?
[Updated on: Mon, 09 July 2012 05:39] Report message to a moderator
|
|
|