Jump to content
Калькуляторы

[RPM] CentOS 6.2 kernel с исправленным RPS

Всем доброго времени суток.

 

Для тех, кому это нужно.

 

Вот тут выложил билд ядра CentOS 6.2 x86_64 2.6.32-220.4.2 с нормально функционирующим RPS (в исходном ядре оно бросает весь траф на первый проц в маске):

http://alex-at.ru/linux/centos-6-2-rps

 

Кроме того, интегрирован ряд патчей из мейнстрима, повышающих производительность RPS/RFS. ABI не нарушен, можно использовать вместо родного ядра без особой опаски. В целом функцонал RPS/RFS в данном ядре по коду получается где-то на уровне ядер 3.0, за исключением пары оптимизаций, ломающих ABI.

 

Набор изменений уже прошел обкатку (еще с 6.1 начиная), и аналог (в котором разных модификаций, в т.ч. самописных, еще больше + нарушен ABI) давно стоит в продакшне.

Edited by Alex/AT

Share this post


Link to post
Share on other sites

Без репозитория не вижу смысла. И планируется ли вообще идти в ногу с апстримом?

Share this post


Link to post
Share on other sites

Да, буду обновлять версию вместе с апстримом, до тех пор, пока не выйдет ядро, содержащее багфикс.

В репозитарии смысла нет, поскольку обновляться будет только до тех пор, пока не см.выше.

SRPM постараюсь собрать, как только время будет.

Edited by Alex/AT

Share this post


Link to post
Share on other sites

SRPM постараюсь собрать, как только время будет.

А что его собирать-то, Вы его выложите, что было видно Ваши патчи поотдельности, а не как Красношапные щас делают!

Share this post


Link to post
Share on other sites

К сожалению, публикация патчсета в виде набора патчей не планировалась изначально и не планируется.

SRPM, если он будет собран, будет содержать объединенный патчфайл, так же как у CentOS/RHEL.

 

Сам базовый фикс RPS до рабочего состояния есть по ссылке: https://bugzilla.redhat.com/attachment.cgi?id=557437&action=diff

Все остальные патчи при желании могут быть найдены в git.kernel.org, и бэкпортированы в 2.6.32.

Edited by Alex/AT

Share this post


Link to post
Share on other sites

К сожалению, публикация патчсета в виде набора патчей не планировалась изначально и не планируется.

SRPM, если он будет собран, будет содержать объединенный патчфайл, так же как у CentOS/RHEL.

Очень жаль, что Вы придерживаетесь такой позиции. Но с другой стороны это Ваша работа.

Выкладывайте SRPM с объединенным патчфайлом. Слить все в один файл на несколько минут работы.

ЗЫ

Я не смогу попробовать Ваше ядро в готовом виде из за сильно измененного Vlan. Только собирать в комплекте с моими патчами(((((

Edited by telecom

Share this post


Link to post
Share on other sites

К сожалению, попробовать Ваше ядро в силу озвуеных выше причин не получилось...

 

Вы пишите: "В целом функцонал RPS/RFS в данном ядре по коду получается где-то на уровне ядер 3.0, за исключением пары оптимизаций, ломающих ABI."

 

Хорошо, берем ядро 3.2.8 (очень неплохое, кстати, ядро).

 

Исходные условия. Сервер, терминирующий PPPoE. Два X5650 по 6 ядер.

Что было: 2.6.32.57 Загрузка ядер, кроме того, где первая очередь, в среднем 1,5-2%. Загрузка ядра, где первая очередь 30%

Что стало: 3.2.8 После небольшого шаманства с RPS стало равномерно по всем ядрам 15-20%

 

Отсюда простой и прямой вопрос, подскажите, пожалуйста, патч, снижающий "накладные расходы" на реализацию RPS/RFS.

Edited by telecom

Share this post


Link to post
Share on other sites

Обновилась статья по ссылке в первом посте темы.

 

- Выложен билд ядра 220.7.1.

- Выложен патч, включающий все изменения, для ядра 220.7.1.

Share this post


Link to post
Share on other sites

- Выложен патч, включающий все изменения, для ядра 220.7.1.

Хотелось бы знать, это бэкпорт плюшек из 3-ей версии ядра или есть Ваши личные наработки?

Share this post


Link to post
Share on other sites

Как в описании - фикс на работоспособность RPS плюс ряд бэкпортов.

Из "внутреннего" сета бэкпортов выкинут 1 патч, изменяющий ABI.

Ядро с данным патчем будет совместимо с обычным RHEL'овским ядром по ABI.

Edited by Alex/AT

Share this post


Link to post
Share on other sites

фикс на работоспособность RPS плюс ряд бэкпортов.

Не проще было 3-е ядро под RHEL пересобрать?

Насколько была важно

совместимо с обычным RHEL'овским ядром по ABI

Edited by telecom

Share this post


Link to post
Share on other sites
Не проще было 3-е ядро под RHEL пересобрать?

Нет, не проще. Задача была иметь совместимый со всем системным софтом и бинарными драйверами stable kernel для системы, базирующейся на CentOS/RHEL.

Кроме того, редхат интегрирует в ванильное ядро очень много собственных доработок.

А соревноваться с редхатом в исправлении ванильного ядра в один фейс - сами понимаете, затея гиблая.

Edited by Alex/AT

Share this post


Link to post
Share on other sites

Ну, модули ядра и пересобрать можно, а ядро у них глюкавое получилось))))

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this