ALT Linux Team development discussions
 help / color / mirror / Atom feed
From: Alexey Gladkov <legion@altlinux.ru>
To: ALT Devel discussion list <devel@lists.altlinux.org>
Subject: [devel] I: rpm and modalias
Date: Wed, 15 Oct 2008 18:44:22 +0400
Message-ID: <48F601C6.2050707@altlinux.ru> (raw)

Привет!

Возникло несколько идей относительно запаковки ядер и модулей. В 
приватной переписке эта тема уже упоминалась. Я решил сделать стенд и 
вынести эти идеи на публичное обсуждение.


Идея.

1. Сделать возможность устанавливать в систему как можно меньше лишних 
модулей ядра и при этом не лишить людей возможности использовать 
старую схему, при которой в систему ставятся почти все модули ядра.

2. Упростить процедуру обновления при смене железа. Пользователь не 
обязан знать какой модуль поддерживает его новую железку. Если не 
ставить на машинку все модели ядра, то udev такому пользователю не 
поможет.


Реализация.

Сейчас modalias'ы стали вполне устоявшимся механизмом загрузки
модулей. Даже коммерческие модули поддерживают его.

Вот и возникла мысль передать modalias'ы модулей на клиентскую машину 
до их установки. Затем узнать какие пакеты с модулями нужны в системе 
и установить только их.

Как вы уже успели заметить, Костя пропатчил rpm-build-kernel для того
чтобы в Provides попадали modalias'ы от запакованных в них моделей.
Таким образом, модифицировать пакеты ядра и модулей не требуется
(почти во всех случаях это так). Их нужно только пересобрать с новым
rpm-build-kernel.

Не у всех модулей имеет смысл добавлять Provides т.к. некоторые модули
не относятся к железу. Например /lib/modules/*/kernel/crypto или
/lib/modules/*/kernel/net/netfilter. Именно поэтому Костя и ограничил
список, по которым ищутся *.ko .

Чтобы была более ясна мысль, мы сделали стенд.

http://www.unsafe.ru/lakostis/RPMS/ALTLinux/modalias/repo

Это репозиторий с двумя ядрами kernel-image-wks-smp-2.6.26-alt4 и
kernel-image-std-def-2.6.25-alt10. Ядро std-def просто пересобрано с
новыми rpm-build-kernel, wks-smp Костя для наглядности поделил на
более мелкие пакеты (не судите деление строго ... это только
демонстрация).

http://git.altlinux.org/people/legion/public/hardware-search.git

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

Для того чтобы попробовать то что у нас получилось, вам не нужно само
ядро :) Достаточно добавить его в sources.list и сделать "apt-get
update". Далее можно пользоваться утилитой show-hardware-requires:

Usage: show-hardware-requires [options] <kernel-flavour>

'./show-hardware-requires wks-smp' покажет список модулей, которые
находятся по modalias'ам.

Чтобы узнать на основании чего утилита предложила именно эти модули, 
можно воспользоваться "отладочным" режимом:

'./show-hardware-requires -vсu wks-smp' покажет список имён пакетов, 
их modalias'ов, alias'ов, которые были по ним найдены и список 
alias'ов для которых модули не были найдены.

-- 
Rgrds, legion





             reply	other threads:[~2008-10-15 14:44 UTC|newest]

Thread overview: 46+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-10-15 14:44 Alexey Gladkov [this message]
2008-10-15 15:46 ` Sergey Vlasov
2008-10-15 16:07   ` Alexey Gladkov
2008-10-15 16:09     ` Alexey Gladkov
2008-10-15 20:59   ` Konstantin A. Lepikhov
2008-10-19 12:25 ` Michael Shigorin
2008-10-19 12:36   ` Konstantin A. Lepikhov
2008-10-19 14:20     ` Michael Shigorin
2008-10-19 16:15       ` Alexey Gladkov
2008-10-19 12:57   ` Alexey Gladkov
2008-10-20 22:26     ` Michael Shigorin
2008-10-21  7:49       ` Alexey Gladkov
2008-10-21 10:07         ` Michael Shigorin
2008-10-21 10:28           ` Alexey Gladkov
2008-10-21 10:33             ` Igor Zubkov
2008-10-21 10:44               ` Alexey Gladkov
2008-10-21 10:54             ` Led
2008-10-21 10:54               ` Mikhail Gusarov
2008-10-21 11:05                 ` [devel] драйверы: побольше или поменьше? Michael Shigorin
2008-10-21 11:09                   ` Mikhail Gusarov
2008-10-21 13:41                     ` Sergey Vlasov
2008-10-21 13:55                       ` Led
2008-10-21 14:22                         ` Kirill A. Shutemov
2008-10-21 15:16                           ` Led
2008-10-21 15:38                           ` Andrey Rahmatullin
2008-10-21 11:04               ` [devel] I: rpm and modalias Alexey Gladkov
2008-10-21 11:01             ` Michael Shigorin
2008-10-21 13:12               ` Alexey Gladkov
2008-10-21 21:43           ` Alexey Gladkov
2008-10-21 10:49         ` Anton Farygin
2008-10-21 10:55           ` Michael Shigorin
2008-10-21 11:06             ` Anton Farygin
2008-10-21 11:12               ` Michael Shigorin
2008-10-21 11:19               ` Alexey Gladkov
2008-10-23 16:57                 ` Alexey I. Froloff
2008-10-23 18:32                   ` Alexey Gladkov
2008-10-21 11:11           ` Alexey Gladkov
2008-10-21 11:13             ` Mikhail Gusarov
2008-10-21 11:22               ` Alexey Gladkov
2008-10-21 11:24                 ` Mikhail Gusarov
2008-10-21 11:31                   ` Alexey Gladkov
2008-10-21 11:36                     ` Mikhail Gusarov
2008-10-21 11:40                       ` Alexey Gladkov
2008-10-21 11:25             ` Anton Farygin
2008-10-22  7:42             ` Kirill Maslinsky
2008-10-22  9:22               ` Alexey Gladkov

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=48F601C6.2050707@altlinux.ru \
    --to=legion@altlinux.ru \
    --cc=devel@lists.altlinux.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link

ALT Linux Team development discussions

This inbox may be cloned and mirrored by anyone:

	git clone --mirror http://lore.altlinux.org/devel/0 devel/git/0.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 devel devel/ http://lore.altlinux.org/devel \
		devel@altlinux.org devel@altlinux.ru devel@lists.altlinux.org devel@lists.altlinux.ru devel@linux.iplabs.ru mandrake-russian@linuxteam.iplabs.ru sisyphus@linuxteam.iplabs.ru
	public-inbox-index devel

Example config snippet for mirrors.
Newsgroup available over NNTP:
	nntp://lore.altlinux.org/org.altlinux.lists.devel


AGPL code for this site: git clone https://public-inbox.org/public-inbox.git