Як ми можемо отримати цю магічну виправлення на 200 ліній?


Відповіді:


59

Обговорення щодо цього конкретного виправлення відбулось у списку розсилки команди ядра Ubuntu:

https://lists.ubuntu.com/archives/kernel-team/2010-November/013498.html

Але дозвольте мені спробувати ще більше розкрити найкращий спосіб для будь-якого виправлення, щоб пробитися в ядро ​​Ubuntu ...

По-перше, це переважна політика команди Ubuntu Kernel, що виправляє патчі та приймає їх вище за течію перед тим, як перетягнути в ядро ​​Ubuntu. Це велике навантаження на обслуговування ядра команди Ubuntu, яке потрібно підтримувати поза деревними латами. Крім того, якщо патч принесе користь всій спільноті Kernel, він повинен спершу вийти за течією.

Після того, як виправлення буде прийнято вище, він з часом автоматично пробивається в ядро ​​Ubuntu. Запит на вишню або витягу можна також зробити, якщо такий бажаний, див. Сторінку, KernelPatches , для отримання додаткової інформації.

Якщо виправлення потрібно застосувати як SRU ( стабільне оновлення випуску ) до попереднього випуску Ubuntu, найкраще отримати патч у відповідне стабільне дерево 2.6.xy. В рамках нашого звичайного процесу SRU ядра ми постійно переглядаємо на останнє стабільне ядро ​​вище. Таким чином, ми знову отримаємо патч автоматично.


4
Цей патч, ймовірно, знаходиться в ядрі v2.6.38, а це означає, що він, ймовірно, знаходиться у версії Natty. Ми краще дізнаємось, як тільки лато з’явиться на дереві Лінуса.
Енді

1
@Andy: Оновлення - хороша новина: Ubuntu 11.04 Natty Narwhal, випущений вчора, містить 2.6.38, який містить патч.
Пісквор

На жаль, «Ubuntu ядра команди список розсилки» посилання , як видається , бути мертвим, або неправильно.
Greenonline

20

Я щойно прочитав lkml нитку і сподіваюся, що я можу запропонувати деяку інформацію - хоча не про отримання патча в Ubuntu. Як йдеться у публікації у пов'язаному списку Ubuntu, це все одно, ймовірно, буде в 2.6.38.

Патч автоматично групує процес на основі TTY. Про lkml є багато дискусій / аргументів, що говорить, що це означає, що це нерелевантно для типового використання настільних ПК - що це не має ніякого значення для інтерактивних програм. Усі тестові випадки базуються на тому, щоб "запустити інтенсивне завдання процесора з терміналу, а потім переглянути реакцію іншого завдання". Так, наприклад, компілюючи ядро ​​і намагаючись переглянути відео.

Це не означає, що це не добре, але загальна "відповідність робочого столу, покращена на порядок", може бути оманливою, якщо ви ніколи не запускаєте інтенсивні завдання процесора, підключені до TTY. Я, звичайно, можу помилитися!

Були згадані способи досягнення дуже схожого результату, додавши до ваших скриптів bash та дозволяючи всім користувачам створювати групи. Це буде працювати лише в тому випадку, якщо в поточних ядрах Ubuntu включені групи. Відповідні посади:

Очевидно, це не відповідає на питання, але це може бути використано для визначення того, наскільки патч такий магічний, як сподівався.


4
Я думаю, що більше людей потребують цього усвідомлювати.
Родді

12

Як користувачі Ubuntu можуть це отримати таким чином, що підтримується ?

Наголос мій. Єдиний спосіб, коли ви отримаєте його підтримуваним способом, - чекаючи, коли Ubuntu перетягне його в ядро ​​Ubuntu. Оскільки це насправді просто внесення його до списку розсилки ядра, це свіже до того моменту, коли все тестування є досить анекдотичним, і я думаю, що це буде якийсь час, перш ніж воно буде готове до масового розгортання.

Десь між наступним випуском і довгим часом моєю неосвіченою здогадкою.


Але якщо ви великий хлопчик (або дівчинка) і можете впоратися зі зламаним ядром, якщо все піде не так (тобто ви знаєте, як користуватися grub), ви можете виправити і скласти власне ядро.

  1. Завантажте виправлення. Існують різні версії, але найкраща сама по собі була розміщена нижче іншим користувачем: http://pavlinux.ru/krnl/sched_autogroup-2.6.36.patch.bz2

  2. Завантажте джерело ядра для версії, на яку націлено патч. У цьому випадку 2.6.36. Ви можете отримати джерела ядра ванілі (що є оригінальним, немодифікованим командою ядра Ubuntu) з kernel.org та витягнути її.

  3. Збережіть патч десь і застосуйте його, cdввівши в dir джерело ядра та запустіть: patch -p1 < /path/to/patch( patchдля цього вам потрібен пакет ... Я думаю, що він входить до складу, build-essentialякщо він не встановлений за замовчуванням)

  4. А потім продовжуйте з рештою "старомодного" процесу збирання ... Я дійсно не зациклююся на нових методах, оскільки вони спрямовані на санкціоновані Ubuntu / Debian джерела ядра ... Плюс старий спосіб здається простішим ( для мене).

Створення ядер не є складним, але ви можете зіпсувати це, якщо ви відхилитеся далеко від прийнятого шляху. І ви не отримаєте офіційної підтримки, якщо все піде не так.


Крім того, з’являється все більше ядер із вбудованим патчем (або, принаймні, у вихідному дереві, очікуючи наступного випуску).

  • Я вважаю, що у Zen Kernel є цей пластир у їхньому дереві, але я не впевнений, чи є він ще в будь-якій збірці.
  • Liquorix Ядро має це запечений в даний час занадто.

Примітка: обидва ці ядра (і, мабуть, і інші) дещо відхиляються від способу виконання ядер Ubuntu. Ви можете виявити (як я колись переїхав до Liquorix), що масштабування частоти процесора перестає працювати або призупиняється. Зазвичай є виправлення та обхідні шляхи, але ймовірно, ви не отримаєте підтримку від AskUbuntu або іншої частини Ubuntu communtiy, оскільки ми не можемо перевірити кожне ядро ​​там.


Хтось, десь повинен мати цей патч вже застосований у публічній гітці git. Занадто велика новина для цього, але мій google-fu не вдається.
Карл Білефельдт

Ядро @Karl zen міститься у своєму дереві git.
Олі

Лікерікс застосовується серед цілого ряду інших пластирів. Я зараз біжу по ньому, і це цілком приємно. Однією з головних проблем для мене (і, мабуть, більшості інших користувачів) є CPU_FREQ, здається, трохи збитий. Він застряг у виконанні.
Олі

5

Ви можете використовувати простий "хак", розміщений розробником RedHat у списку розсилки, який не потребує виправлення ядра, щоб отримати те саме. Про це читайте тут: Альтернатива «Патчу ядра 200 ліній, який творить чудеса», який ви можете використати відразу


Будь ласка, включіть деталі посилання так, ніби вони стали нефункціональними, ваша відповідь не допоможе користувачам.
ζ--

1

Станом на 2011-01-18, Linux 2.6.38-rc1 включає вказаний патч.
Дивіться пов’язані новини Phoronix та пост Лінуса .

Станом на 2011-01-29, щоденно Natty Narwhal будує кораблі з Linux 2.6.38.

Отже, наразі існує два рішення:


0

Я щойно підібрав цю дискусію і її дуже цікаву. Я написав невеличку публікацію в блозі про те, як увімкнути патч групи в Ubuntu 10.10.

Я не дуже перевіряв, працює він чи ні, тому відгуки будуть чудовими!

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.