ALT Linux Team development discussions
 help / color / mirror / Atom feed
* Re: [devel] [git update] packages/startup: tags/0.9.8.17-alt2
  @ 2008-03-04 12:24 ` Dmitry V. Levin
  2008-03-04 12:40   ` Sergey Vlasov
  0 siblings, 1 reply; 23+ messages in thread
From: Dmitry V. Levin @ 2008-03-04 12:24 UTC (permalink / raw)
  To: ALT Devel discussion list

[-- Attachment #1: Type: text/plain, Size: 1236 bytes --]

On Tue, Mar 04, 2008 at 04:29:20AM +0300, Alexey Borovskoy wrote:
> Update of /people/alb/packages/startup.git
[...]
> commit 806db97e10b92c271dd9b6120697b7a9c9c4ec0b
> Author: Alexey Borovskoy <alb@altlinux>
> Date:   Tue Jan 8 13:55:20 2008 +1200
> 
>     Fix LVM startup when / on MD device.
> 
> Full diff since `0.9.8.17-alt1' follows:
> diff --git a/startup/rc.d/rc.sysinit b/startup/rc.d/rc.sysinit
> index c11f197..24fd217 100755
> --- a/startup/rc.d/rc.sysinit
> +++ b/startup/rc.d/rc.sysinit
> @@ -263,12 +263,12 @@ fi
>  
>  # Load device-mapper, create its device file
>  if [ -e /proc/devices -a -e /proc/misc ]; then
> -	rm -f /dev/mapper/control
>  	modprobe dm-mod >/dev/null 2>&1
>  	if [ -z "$RUN_UDEV" ]; then
>  		MAJOR="$(sed -ne 's/^ *\([0-9]\+\) \+misc$/\1/p' /proc/devices)"
>  		MINOR="$(sed -ne 's/^ *\([0-9]\+\) \+device-mapper$/\1/p' /proc/misc)"
>  		if [ -n "$MAJOR" -a -n "$MINOR" ]; then
> +	                rm -f /dev/mapper/control
>  			mkdir -p -m755 /dev/mapper
>  			action "Creating device-mapper character device ($MAJOR, $MINOR):" \
>  				mknod --mode=600 /dev/mapper/control c "$MAJOR" "$MINOR"

Можно пояснить, что именно исправляет это изменение?


-- 
ldv

[-- Attachment #2: Type: application/pgp-signature, Size: 197 bytes --]

^ permalink raw reply	[flat|nested] 23+ messages in thread

* Re: [devel] [git update] packages/startup: tags/0.9.8.17-alt2
  2008-03-04 12:24 ` [devel] [git update] packages/startup: tags/0.9.8.17-alt2 Dmitry V. Levin
@ 2008-03-04 12:40   ` Sergey Vlasov
  2008-03-04 14:38     ` Dmitry V. Levin
  0 siblings, 1 reply; 23+ messages in thread
From: Sergey Vlasov @ 2008-03-04 12:40 UTC (permalink / raw)
  To: devel

[-- Attachment #1: Type: text/plain, Size: 1885 bytes --]

On Tue, Mar 04, 2008 at 03:24:37PM +0300, Dmitry V. Levin wrote:
> On Tue, Mar 04, 2008 at 04:29:20AM +0300, Alexey Borovskoy wrote:
> > Update of /people/alb/packages/startup.git
> [...]
> > commit 806db97e10b92c271dd9b6120697b7a9c9c4ec0b
> > Author: Alexey Borovskoy <alb@altlinux>
> > Date:   Tue Jan 8 13:55:20 2008 +1200
> > 
> >     Fix LVM startup when / on MD device.
> > 
> > Full diff since `0.9.8.17-alt1' follows:
> > diff --git a/startup/rc.d/rc.sysinit b/startup/rc.d/rc.sysinit
> > index c11f197..24fd217 100755
> > --- a/startup/rc.d/rc.sysinit
> > +++ b/startup/rc.d/rc.sysinit
> > @@ -263,12 +263,12 @@ fi
> >  
> >  # Load device-mapper, create its device file
> >  if [ -e /proc/devices -a -e /proc/misc ]; then
> > -	rm -f /dev/mapper/control
> >  	modprobe dm-mod >/dev/null 2>&1
> >  	if [ -z "$RUN_UDEV" ]; then
> >  		MAJOR="$(sed -ne 's/^ *\([0-9]\+\) \+misc$/\1/p' /proc/devices)"
> >  		MINOR="$(sed -ne 's/^ *\([0-9]\+\) \+device-mapper$/\1/p' /proc/misc)"
> >  		if [ -n "$MAJOR" -a -n "$MINOR" ]; then
> > +	                rm -f /dev/mapper/control
> >  			mkdir -p -m755 /dev/mapper
> >  			action "Creating device-mapper character device ($MAJOR, $MINOR):" \
> >  				mknod --mode=600 /dev/mapper/control c "$MAJOR" "$MINOR"
> 
> Можно пояснить, что именно исправляет это изменение?

Если модуль dm-mod в этот момент уже был загружен (например, из
initrd), и при этом udevd был запущен из rc.sysinit (RUN_UDEV=1), в
результате выполнения этого кода файл устройства /dev/mapper/control
удалялся, что приводило к ошибкам при последующем запуске lvm.
Конечно, имеющаяся запись changelog никуда не годится - MD не имеет
никакого отношения к данной проблеме.

В новом варианте, правда, всё равно остаётся race - в случае
RUN_UDEV=1 файл устройства должен создавать udevd, но ожидание его
создания не производится.

[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 189 bytes --]

^ permalink raw reply	[flat|nested] 23+ messages in thread

* Re: [devel] [git update] packages/startup: tags/0.9.8.17-alt2
  2008-03-04 12:40   ` Sergey Vlasov
@ 2008-03-04 14:38     ` Dmitry V. Levin
  2008-03-04 15:49       ` Anton Farygin
  0 siblings, 1 reply; 23+ messages in thread
From: Dmitry V. Levin @ 2008-03-04 14:38 UTC (permalink / raw)
  To: ALT Devel discussion list

[-- Attachment #1: Type: text/plain, Size: 2101 bytes --]

On Tue, Mar 04, 2008 at 03:40:52PM +0300, Sergey Vlasov wrote:
> On Tue, Mar 04, 2008 at 03:24:37PM +0300, Dmitry V. Levin wrote:
> > On Tue, Mar 04, 2008 at 04:29:20AM +0300, Alexey Borovskoy wrote:
> > > Update of /people/alb/packages/startup.git
> > [...]
> > > commit 806db97e10b92c271dd9b6120697b7a9c9c4ec0b
> > > Author: Alexey Borovskoy <alb@altlinux>
> > > Date:   Tue Jan 8 13:55:20 2008 +1200
> > > 
> > >     Fix LVM startup when / on MD device.
> > > 
> > > Full diff since `0.9.8.17-alt1' follows:
> > > diff --git a/startup/rc.d/rc.sysinit b/startup/rc.d/rc.sysinit
> > > index c11f197..24fd217 100755
> > > --- a/startup/rc.d/rc.sysinit
> > > +++ b/startup/rc.d/rc.sysinit
> > > @@ -263,12 +263,12 @@ fi
> > >  
> > >  # Load device-mapper, create its device file
> > >  if [ -e /proc/devices -a -e /proc/misc ]; then
> > > -	rm -f /dev/mapper/control
> > >  	modprobe dm-mod >/dev/null 2>&1
> > >  	if [ -z "$RUN_UDEV" ]; then
> > >  		MAJOR="$(sed -ne 's/^ *\([0-9]\+\) \+misc$/\1/p' /proc/devices)"
> > >  		MINOR="$(sed -ne 's/^ *\([0-9]\+\) \+device-mapper$/\1/p' /proc/misc)"
> > >  		if [ -n "$MAJOR" -a -n "$MINOR" ]; then
> > > +	                rm -f /dev/mapper/control
> > >  			mkdir -p -m755 /dev/mapper
> > >  			action "Creating device-mapper character device ($MAJOR, $MINOR):" \
> > >  				mknod --mode=600 /dev/mapper/control c "$MAJOR" "$MINOR"
> > 
> > Можно пояснить, что именно исправляет это изменение?
> 
> Если модуль dm-mod в этот момент уже был загружен (например, из
> initrd), и при этом udevd был запущен из rc.sysinit (RUN_UDEV=1), в
> результате выполнения этого кода файл устройства /dev/mapper/control
> удалялся, что приводило к ошибкам при последующем запуске lvm.
> Конечно, имеющаяся запись changelog никуда не годится - MD не имеет
> никакого отношения к данной проблеме.
> 
> В новом варианте, правда, всё равно остаётся race - в случае
> RUN_UDEV=1 файл устройства должен создавать udevd, но ожидание его
> создания не производится.

А каким образом лучше ждать появления этого файла?


-- 
ldv

[-- Attachment #2: Type: application/pgp-signature, Size: 197 bytes --]

^ permalink raw reply	[flat|nested] 23+ messages in thread

* Re: [devel] [git update] packages/startup: tags/0.9.8.17-alt2
  2008-03-04 14:38     ` Dmitry V. Levin
@ 2008-03-04 15:49       ` Anton Farygin
  2008-03-04 16:06         ` Led
  2008-03-04 22:43         ` Dmitry V. Levin
  0 siblings, 2 replies; 23+ messages in thread
From: Anton Farygin @ 2008-03-04 15:49 UTC (permalink / raw)
  To: ALT Devel discussion list



Dmitry V. Levin пишет:
> On Tue, Mar 04, 2008 at 03:40:52PM +0300, Sergey Vlasov wrote:
>> On Tue, Mar 04, 2008 at 03:24:37PM +0300, Dmitry V. Levin wrote:
<skip>
>>> Можно пояснить, что именно исправляет это изменение?
>> Если модуль dm-mod в этот момент уже был загружен (например, из
>> initrd), и при этом udevd был запущен из rc.sysinit (RUN_UDEV=1), в
>> результате выполнения этого кода файл устройства /dev/mapper/control
>> удалялся, что приводило к ошибкам при последующем запуске lvm.
>> Конечно, имеющаяся запись changelog никуда не годится - MD не имеет
>> никакого отношения к данной проблеме.
>>
>> В новом варианте, правда, всё равно остаётся race - в случае
>> RUN_UDEV=1 файл устройства должен создавать udevd, но ожидание его
>> создания не производится.
> 
> А каким образом лучше ждать появления этого файла?

я бы предложил использовать для этого inotify. Но если не очень хочется 
затачиваться на относительно новый инструмент, то можно просто написать 
цикл.



^ permalink raw reply	[flat|nested] 23+ messages in thread

* Re: [devel] [git update] packages/startup: tags/0.9.8.17-alt2
  2008-03-04 15:49       ` Anton Farygin
@ 2008-03-04 16:06         ` Led
  2008-03-04 16:17           ` Sergey V Turchin
                             ` (2 more replies)
  2008-03-04 22:43         ` Dmitry V. Levin
  1 sibling, 3 replies; 23+ messages in thread
From: Led @ 2008-03-04 16:06 UTC (permalink / raw)
  To: ALT Linux Team development discussions

В сообщении от Tuesday 04 March 2008 17:49:45 Anton Farygin написал(а):
> Dmitry V. Levin пишет:
> > On Tue, Mar 04, 2008 at 03:40:52PM +0300, Sergey Vlasov wrote:
> >> On Tue, Mar 04, 2008 at 03:24:37PM +0300, Dmitry V. Levin wrote:
>
> <skip>
>
> >>> Можно пояснить, что именно исправляет это изменение?
> >>
> >> Если модуль dm-mod в этот момент уже был загружен (например, из
> >> initrd), и при этом udevd был запущен из rc.sysinit (RUN_UDEV=1), в
> >> результате выполнения этого кода файл устройства /dev/mapper/control
> >> удалялся, что приводило к ошибкам при последующем запуске lvm.
> >> Конечно, имеющаяся запись changelog никуда не годится - MD не имеет
> >> никакого отношения к данной проблеме.
> >>
> >> В новом варианте, правда, всё равно остаётся race - в случае
> >> RUN_UDEV=1 файл устройства должен создавать udevd, но ожидание его
> >> создания не производится.
> >
> > А каким образом лучше ждать появления этого файла?
>
> я бы предложил использовать для этого inotify. Но если не очень хочется
> затачиваться на относительно новый инструмент, то можно просто написать
> цикл.

inotify не подходит для ожидания ПОЯВЛЕНИЯ файла.


-- 
Led

^ permalink raw reply	[flat|nested] 23+ messages in thread

* Re: [devel] [git update] packages/startup: tags/0.9.8.17-alt2
  2008-03-04 16:06         ` Led
@ 2008-03-04 16:17           ` Sergey V Turchin
  2008-03-04 16:34             ` Led
  2008-03-04 17:28           ` Anton Farygin
  2008-03-04 18:19           ` Mikhail Gusarov
  2 siblings, 1 reply; 23+ messages in thread
From: Sergey V Turchin @ 2008-03-04 16:17 UTC (permalink / raw)
  To: ALT Linux Team development discussions

[-- Attachment #1: Type: text/plain, Size: 229 bytes --]

On Tuesday 04 March 2008, Led wrote:

[...]
> inotify не подходит для ожидания ПОЯВЛЕНИЯ файла.
dnotify?

-- 
Regards, Sergey, ALT Linux Team, http://www.altlinux.ru
http://stinkfoot.org:11371/pks/lookup?op=get&search=0x1C2A3F08

[-- Attachment #2: This is a digitally signed message part. --]
[-- Type: application/pgp-signature, Size: 197 bytes --]

^ permalink raw reply	[flat|nested] 23+ messages in thread

* Re: [devel] [git update] packages/startup: tags/0.9.8.17-alt2
  2008-03-04 16:17           ` Sergey V Turchin
@ 2008-03-04 16:34             ` Led
  0 siblings, 0 replies; 23+ messages in thread
From: Led @ 2008-03-04 16:34 UTC (permalink / raw)
  To: ALT Linux Team development discussions

В сообщении от Tuesday 04 March 2008 18:17:25 Sergey V Turchin написал(а):
> On Tuesday 04 March 2008, Led wrote:
>
> [...]
>
> > inotify не подходит для ожидания ПОЯВЛЕНИЯ файла.
>
> dnotify?

На каталог /dev ? Не думаю, что это будет более "легковесно", чем цикл.

-- 
Led

^ permalink raw reply	[flat|nested] 23+ messages in thread

* Re: [devel] [git update] packages/startup: tags/0.9.8.17-alt2
  2008-03-04 16:06         ` Led
  2008-03-04 16:17           ` Sergey V Turchin
@ 2008-03-04 17:28           ` Anton Farygin
  2008-03-04 18:19           ` Mikhail Gusarov
  2 siblings, 0 replies; 23+ messages in thread
From: Anton Farygin @ 2008-03-04 17:28 UTC (permalink / raw)
  To: ALT Linux Team development discussions



Led пишет:
> В сообщении от Tuesday 04 March 2008 17:49:45 Anton Farygin написал(а):
>> Dmitry V. Levin пишет:
>>> On Tue, Mar 04, 2008 at 03:40:52PM +0300, Sergey Vlasov wrote:
>>>> On Tue, Mar 04, 2008 at 03:24:37PM +0300, Dmitry V. Levin wrote:
>> <skip>
>>
>>>>> Можно пояснить, что именно исправляет это изменение?
>>>> Если модуль dm-mod в этот момент уже был загружен (например, из
>>>> initrd), и при этом udevd был запущен из rc.sysinit (RUN_UDEV=1), в
>>>> результате выполнения этого кода файл устройства /dev/mapper/control
>>>> удалялся, что приводило к ошибкам при последующем запуске lvm.
>>>> Конечно, имеющаяся запись changelog никуда не годится - MD не имеет
>>>> никакого отношения к данной проблеме.
>>>>
>>>> В новом варианте, правда, всё равно остаётся race - в случае
>>>> RUN_UDEV=1 файл устройства должен создавать udevd, но ожидание его
>>>> создания не производится

^ permalink raw reply	[flat|nested] 23+ messages in thread

* Re: [devel] [git update] packages/startup: tags/0.9.8.17-alt2
  2008-03-04 16:06         ` Led
  2008-03-04 16:17           ` Sergey V Turchin
  2008-03-04 17:28           ` Anton Farygin
@ 2008-03-04 18:19           ` Mikhail Gusarov
  2008-03-04 19:40             ` Led
  2 siblings, 1 reply; 23+ messages in thread
From: Mikhail Gusarov @ 2008-03-04 18:19 UTC (permalink / raw)
  To: ALT Linux Team development discussions

[-- Attachment #1: Type: text/plain, Size: 239 bytes --]

Twas brillig at 18:06:52 04.03.2008 UTC+02 when Led did gyre and gimble:

 L> inotify не подходит для ожидания ПОЯВЛЕНИЯ файла.

IN_CREATE в enclosing directory чем не нравится?

-- 

[-- Attachment #2: Type: application/pgp-signature, Size: 188 bytes --]

^ permalink raw reply	[flat|nested] 23+ messages in thread

* Re: [devel] [git update] packages/startup: tags/0.9.8.17-alt2
  2008-03-04 18:19           ` Mikhail Gusarov
@ 2008-03-04 19:40             ` Led
  2008-03-04 19:43               ` Mikhail Gusarov
  0 siblings, 1 reply; 23+ messages in thread
From: Led @ 2008-03-04 19:40 UTC (permalink / raw)
  To: ALT Linux Team development discussions

Tuesday, 04 March 2008 20:19:25 Mikhail Gusarov написав:
> Twas brillig at 18:06:52 04.03.2008 UTC+02 when Led did gyre and gimble:
>
>  L> inotify не подходит для ожидания ПОЯВЛЕНИЯ файла.
>
> IN_CREATE в enclosing directory чем не нравится?

В директории /dev !

-- 
Led

^ permalink raw reply	[flat|nested] 23+ messages in thread

* Re: [devel] [git update] packages/startup: tags/0.9.8.17-alt2
  2008-03-04 19:40             ` Led
@ 2008-03-04 19:43               ` Mikhail Gusarov
  2008-03-04 20:06                 ` Led
  0 siblings, 1 reply; 23+ messages in thread
From: Mikhail Gusarov @ 2008-03-04 19:43 UTC (permalink / raw)
  To: ALT Linux Team development discussions

[-- Attachment #1: Type: text/plain, Size: 591 bytes --]

Twas brillig at 21:40:25 04.03.2008 UTC+02 when Led did gyre and gimble:

 >>  L> inotify не подходит для ожидания ПОЯВЛЕНИЯ файла.
 >> IN_CREATE в enclosing directory чем не нравится?
 L> В директории /dev !

Гм... А что, за время ожидания там создастся тысяча новых файлов?

inotify достаточно легковесен, и отфильтровать десяток-другой лишних
hit-ов по имени проблемы не составит.

-- 

[-- Attachment #2: Type: application/pgp-signature, Size: 188 bytes --]

^ permalink raw reply	[flat|nested] 23+ messages in thread

* Re: [devel] [git update] packages/startup: tags/0.9.8.17-alt2
  2008-03-04 19:43               ` Mikhail Gusarov
@ 2008-03-04 20:06                 ` Led
  2008-03-04 20:20                   ` Mikhail Gusarov
  0 siblings, 1 reply; 23+ messages in thread
From: Led @ 2008-03-04 20:06 UTC (permalink / raw)
  To: ALT Linux Team development discussions

Tuesday, 04 March 2008 21:43:34 Mikhail Gusarov написав:
> Twas brillig at 21:40:25 04.03.2008 UTC+02 when Led did gyre and gimble:
>  >>  L> inotify не подходит для ожидания ПОЯВЛЕНИЯ файла.
>  >> IN_CREATE в enclosing directory чем не нравится?
>
>  L> В директории /dev !
>
> Гм... А что, за время ожидания там создастся тысяча новых файлов?

Несколько сотен в течении пару секунд - может.

>
> inotify достаточно легковесен, и отфильтровать десяток-другой лишних
> hit-ов по имени проблемы не составит.

inotify вам ничего не отфильтрует. Предлагаете фильтровать несколько десятков 
а то и сотню-вторую файлов в шелл-скрипте. Зачем тогда "легковесный 
initify"?:)

-- 
Led

^ permalink raw reply	[flat|nested] 23+ messages in thread

* Re: [devel] [git update] packages/startup: tags/0.9.8.17-alt2
  2008-03-04 20:06                 ` Led
@ 2008-03-04 20:20                   ` Mikhail Gusarov
  2008-03-04 20:50                     ` Led
  0 siblings, 1 reply; 23+ messages in thread
From: Mikhail Gusarov @ 2008-03-04 20:20 UTC (permalink / raw)
  To: ALT Linux Team development discussions

[-- Attachment #1: Type: text/plain, Size: 879 bytes --]

Twas brillig at 22:06:04 04.03.2008 UTC+02 when Led did gyre and gimble:

 >> inotify достаточно легковесен, и отфильтровать десяток-другой лишних
 >> hit-ов по имени проблемы не составит.

 L> inotify вам ничего не отфильтрует.

Этого не следует из вышенаписанного.

 L> Предлагаете фильтровать несколько десятков а то и сотню-вторую
 L> файлов в шелл-скрипте.

Здесь не хватает вопросительного знака.

Ответ - нет. Отфильтровать в мааааленькой C-шной утилите, которая скажет
inotify_add_watch(7), а потом отфильтрует то, что надо.

-- 

[-- Attachment #2: Type: application/pgp-signature, Size: 188 bytes --]

^ permalink raw reply	[flat|nested] 23+ messages in thread

* Re: [devel] [git update] packages/startup: tags/0.9.8.17-alt2
  2008-03-04 20:20                   ` Mikhail Gusarov
@ 2008-03-04 20:50                     ` Led
  2008-03-04 20:53                       ` Mikhail Gusarov
  0 siblings, 1 reply; 23+ messages in thread
From: Led @ 2008-03-04 20:50 UTC (permalink / raw)
  To: ALT Linux Team development discussions

Tuesday, 04 March 2008 22:20:03 Mikhail Gusarov написав:
> Twas brillig at 22:06:04 04.03.2008 UTC+02 when Led did gyre and gimble:
>  >> inotify достаточно легковесен, и отфильтровать десяток-другой лишних
>  >> hit-ов по имени проблемы не составит.
>
>  L> inotify вам ничего не отфильтрует.
>
> Этого не следует из вышенаписанного.
>
>  L> Предлагаете фильтровать несколько десятков а то и сотню-вторую
>  L> файлов в шелл-скрипте.
>
> Здесь не хватает вопросительного знака.

да, сорри, пропустил его

>
> Ответ - нет. Отфильтровать в мааааленькой C-шной утилите, которая скажет
> inotify_add_watch(7), а потом отфильтрует то, что надо.

Вооот. Значит речь нужно вести уже о inotify(2) и inotify_add_watch(2) (а не  
inotify_add_watch(7)). С эти уже можно и попробовать (хотя там тоже 
фильтровать нужно будет по строке - имени файла).

-- 
Led

^ permalink raw reply	[flat|nested] 23+ messages in thread

* Re: [devel] [git update] packages/startup: tags/0.9.8.17-alt2
  2008-03-04 20:50                     ` Led
@ 2008-03-04 20:53                       ` Mikhail Gusarov
  0 siblings, 0 replies; 23+ messages in thread
From: Mikhail Gusarov @ 2008-03-04 20:53 UTC (permalink / raw)
  To: ALT Linux Team development discussions

[-- Attachment #1: Type: text/plain, Size: 640 bytes --]

Twas brillig at 22:50:15 04.03.2008 UTC+02 when Led did gyre and gimble:

 L> Вооот. Значит речь нужно вести уже о inotify(2) и
 L> inotify_add_watch(2) (а не inotify_add_watch(7)).

Да, не туда посмотрел.

 L> С эти уже можно и попробовать (хотя там тоже фильтровать нужно будет
 L> по строке - имени файла).

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

-- 

[-- Attachment #2: Type: application/pgp-signature, Size: 188 bytes --]

^ permalink raw reply	[flat|nested] 23+ messages in thread

* Re: [devel] [git update] packages/startup: tags/0.9.8.17-alt2
  2008-03-04 15:49       ` Anton Farygin
  2008-03-04 16:06         ` Led
@ 2008-03-04 22:43         ` Dmitry V. Levin
  2008-03-05  5:43           ` Anton Farygin
  1 sibling, 1 reply; 23+ messages in thread
From: Dmitry V. Levin @ 2008-03-04 22:43 UTC (permalink / raw)
  To: ALT Devel discussion list

[-- Attachment #1: Type: text/plain, Size: 1353 bytes --]

On Tue, Mar 04, 2008 at 06:49:45PM +0300, Anton Farygin wrote:
> Dmitry V. Levin пишет:
> >On Tue, Mar 04, 2008 at 03:40:52PM +0300, Sergey Vlasov wrote:
> >>On Tue, Mar 04, 2008 at 03:24:37PM +0300, Dmitry V. Levin wrote:
> <skip>
> >>>Можно пояснить, что именно исправляет это изменение?
> >>Если модуль dm-mod в этот момент уже был загружен (например, из
> >>initrd), и при этом udevd был запущен из rc.sysinit (RUN_UDEV=1), в
> >>результате выполнения этого кода файл устройства /dev/mapper/control
> >>удалялся, что приводило к ошибкам при последующем запуске lvm.
> >>Конечно, имеющаяся запись changelog никуда не годится - MD не имеет
> >>никакого отношения к данной проблеме.
> >>
> >>В новом варианте, правда, всё равно остаётся race - в случае
> >>RUN_UDEV=1 файл устройства должен создавать udevd, но ожидание его
> >>создания не производится.
> >
> >А каким образом лучше ждать появления этого файла?
> 
> я бы предложил использовать для этого inotify. Но если не очень хочется 
> затачиваться на относительно новый инструмент, то можно просто написать 
> цикл.

Вопрос был не в этом.  Как долго имеет смысл ждать появления этого файла?
Возможно, есть какое-то событие, по наступлении которого ждать больше не
имеет смысла?  Вы же не хотите зависания rc.sysinit при некотором стечении
обстоятельств?


-- 
ldv

[-- Attachment #2: Type: application/pgp-signature, Size: 197 bytes --]

^ permalink raw reply	[flat|nested] 23+ messages in thread

* Re: [devel] [git update] packages/startup: tags/0.9.8.17-alt2
  2008-03-04 22:43         ` Dmitry V. Levin
@ 2008-03-05  5:43           ` Anton Farygin
  2008-03-05 12:28             ` Dmitry V. Levin
  0 siblings, 1 reply; 23+ messages in thread
From: Anton Farygin @ 2008-03-05  5:43 UTC (permalink / raw)
  To: ALT Devel discussion list



Dmitry V. Levin пишет:
> On Tue, Mar 04, 2008 at 06:49:45PM +0300, Anton Farygin wrote:
>> Dmitry V. Levin пишет:
>>> On Tue, Mar 04, 2008 at 03:40:52PM +0300, Sergey Vlasov wrote:
>>>> On Tue, Mar 04, 2008 at 03:24:37PM +0300, Dmitry V. Levin wrote:
>> <skip>
>>>>> Можно пояснить, что именно исправляет это изменение?
>>>> Если модуль dm-mod в этот момент уже был загружен (например, из
>>>> initrd), и при этом udevd был запущен из rc.sysinit (RUN_UDEV=1), в
>>>> результате выполнения этого кода файл устройства /dev/mapper/control
>>>> удалялся, что приводило к ошибкам при последующем запуске lvm.
>>>> Конечно, имеющаяся запись changelog никуда не годится - MD не имеет
>>>> никакого отношения к данной проблеме.
>>>>
>>>> В новом варианте, правда, всё равно остаётся race - в случае
>>>> RUN_UDEV=1 файл устройства должен создавать udevd, но ожидание его
>>>> создания не производится.
>>> А каким образом лучше ждать появления этого файла?
>> я бы предложил использовать для этого inotify. Но если не очень хочется 
>> затачиваться на относительно новый инструмент, то можно просто написать 
>> цикл.
> 
> Вопрос был не в этом.  Как долго имеет смысл ждать появления этого файла?
> Возможно, есть какое-то событие, по наступлении которого ждать больше не
> имеет смысла?  Вы же не хотите зависания rc.sysinit при некотором стечении
> обстоятельств?

А разве /dev/mapper/control может не появиться, если загружен модуль 
dm-mod ?




^ permalink raw reply	[flat|nested] 23+ messages in thread

* Re: [devel] [git update] packages/startup: tags/0.9.8.17-alt2
  2008-03-05  5:43           ` Anton Farygin
@ 2008-03-05 12:28             ` Dmitry V. Levin
  2008-03-05 12:46               ` Anton Farygin
  0 siblings, 1 reply; 23+ messages in thread
From: Dmitry V. Levin @ 2008-03-05 12:28 UTC (permalink / raw)
  To: ALT Linux Team development discussions

[-- Attachment #1: Type: text/plain, Size: 1701 bytes --]

On Wed, Mar 05, 2008 at 08:43:24AM +0300, Anton Farygin wrote:
> Dmitry V. Levin пишет:
> >On Tue, Mar 04, 2008 at 06:49:45PM +0300, Anton Farygin wrote:
> >>Dmitry V. Levin пишет:
> >>>On Tue, Mar 04, 2008 at 03:40:52PM +0300, Sergey Vlasov wrote:
> >>>>On Tue, Mar 04, 2008 at 03:24:37PM +0300, Dmitry V. Levin wrote:
> >><skip>
> >>>>>Можно пояснить, что именно исправляет это изменение?
> >>>>Если модуль dm-mod в этот момент уже был загружен (например, из
> >>>>initrd), и при этом udevd был запущен из rc.sysinit (RUN_UDEV=1), в
> >>>>результате выполнения этого кода файл устройства /dev/mapper/control
> >>>>удалялся, что приводило к ошибкам при последующем запуске lvm.
> >>>>Конечно, имеющаяся запись changelog никуда не годится - MD не имеет
> >>>>никакого отношения к данной проблеме.
> >>>>
> >>>>В новом варианте, правда, всё равно остаётся race - в случае
> >>>>RUN_UDEV=1 файл устройства должен создавать udevd, но ожидание его
> >>>>создания не производится.
> >>>А каким образом лучше ждать появления этого файла?
> >>я бы предложил использовать для этого inotify. Но если не очень хочется 
> >>затачиваться на относительно новый инструмент, то можно просто написать 
> >>цикл.
> >
> >Вопрос был не в этом.  Как долго имеет смысл ждать появления этого файла?
> >Возможно, есть какое-то событие, по наступлении которого ждать больше не
> >имеет смысла?  Вы же не хотите зависания rc.sysinit при некотором стечении
> >обстоятельств?
> 
> А разве /dev/mapper/control может не появиться, если загружен модуль 
> dm-mod ?

Ты процитированный код видел?  загруженный модуль dm-mod не создаёт
/dev/mapper/control, этот файл создаёт userspace.


-- 
ldv

[-- Attachment #2: Type: application/pgp-signature, Size: 197 bytes --]

^ permalink raw reply	[flat|nested] 23+ messages in thread

* Re: [devel] [git update] packages/startup: tags/0.9.8.17-alt2
  2008-03-05 12:28             ` Dmitry V. Levin
@ 2008-03-05 12:46               ` Anton Farygin
  2008-03-05 13:14                 ` Sergey Vlasov
  0 siblings, 1 reply; 23+ messages in thread
From: Anton Farygin @ 2008-03-05 12:46 UTC (permalink / raw)
  To: ALT Linux Team development discussions

Dmitry V. Levin пишет:
> On Wed, Mar 05, 2008 at 08:43:24AM +0300, Anton Farygin wrote:
>> Dmitry V. Levin пишет:
>>> On Tue, Mar 04, 2008 at 06:49:45PM +0300, Anton Farygin wrote:
>>>> Dmitry V. Levin пишет:
>>>>> On Tue, Mar 04, 2008 at 03:40:52PM +0300, Sergey Vlasov wrote:
>>>>>> On Tue, Mar 04, 2008 at 03:24:37PM +0300, Dmitry V. Levin wrote:
>>>> <skip>
>>>>>>> Можно пояснить, что именно исправляет это изменение?
>>>>>> Если модуль dm-mod в этот момент уже был загружен (например, из
>>>>>> initrd), и при этом udevd был запущен из rc.sysinit (RUN_UDEV=1), в
>>>>>> результате выполнения этого кода файл устройства /dev/mapper/control
>>>>>> удалялся, что приводило к ошибкам при последующем запуске lvm.
>>>>>> Конечно, имеющаяся запись changelog никуда не годится - MD не имеет
>>>>>> никакого отношения к данной проблеме.
>>>>>>
>>>>>> В новом варианте, правда, всё равно остаётся race - в случае
>>>>>> RUN_UDEV=1 файл устройства должен создавать udevd, но ожидание его
>>>>>> создания не производится.
>>>>> А каким образом лучше ждать появления этого файла?
>>>> я бы предложил использовать для этого inotify. Но если не очень хочется 
>>>> затачиваться на относительно новый инструмент, то можно просто написать 
>>>> цикл.
>>> Вопрос был не в этом.  Как долго имеет смысл ждать появления этого файла?
>>> Возможно, есть какое-то событие, по наступлении которого ждать больше не
>>> имеет смысла?  Вы же не хотите зависания rc.sysinit при некотором стечении
>>> обстоятельств?
>> А разве /dev/mapper/control может не появиться, если загружен модуль 
>> dm-mod ?
> 
> Ты процитированный код видел?  загруженный модуль dm-mod не создаёт
> /dev/mapper/control, этот файл создаёт userspace.

Как не создаёт ? Сергей же пишет, что если dm-mod загружен, и RUN_UDEV=1 
есть, то он будет создан udev'ом при инициализации udevstart. Т.е. - 
этот код нужен в том случае, если udev не запускается ?

Серёг, поясни плз..




^ permalink raw reply	[flat|nested] 23+ messages in thread

* Re: [devel] [git update] packages/startup: tags/0.9.8.17-alt2
  2008-03-05 12:46               ` Anton Farygin
@ 2008-03-05 13:14                 ` Sergey Vlasov
  2008-03-05 18:00                   ` Vitaly Ostanin
  2008-03-05 19:01                   ` Dmitry V. Levin
  0 siblings, 2 replies; 23+ messages in thread
From: Sergey Vlasov @ 2008-03-05 13:14 UTC (permalink / raw)
  To: devel

[-- Attachment #1: Type: text/plain, Size: 1643 bytes --]

On Wed, Mar 05, 2008 at 03:46:10PM +0300, Anton Farygin wrote:
> >загруженный модуль dm-mod не создаёт
> >/dev/mapper/control, этот файл создаёт userspace.
> 
> Как не создаёт ? Сергей же пишет, что если 
> dm-mod загружен, и RUN_UDEV=1 есть, то он будет 
> создан udev'ом при инициализации udevstart. Т.е. 
> - этот код нужен в том случае, если udev не 
> запускается ?
> 
> Серёг, поясни плз..

Модуль dm-mod при инициализации регистрирует с помощью misc_register()
устройство с именем "device-mapper"; при этом ядро генерирует событие
о добавлении этого устройства, которое передаётся в userspace через
netlink (кроме того, может вызываться программа, указанная через
sysctl kernel.hotplug - по умолчанию это /sbin/hotplug, но при запуске
udevd туда пишется пустая строка, отключающая такой механизм обработки
событий).

udevd принимает события через netlink и обрабатывает их в соответствии
с настроенными правилами; для device-mapper в правилах указано
создание симлинка /dev/mapper/control.  Эта обработка выполняется
асинхронно - неизвестно, сколько пройдёт времени между завершением
modprobe dm-mod и созданием udevd соответствующих файлов в /dev.

В принципе можно вызвать /sbin/udevsettle, чтобы дождаться завершения
обработки всех событий, которые могли находиться в очереди (как в
очереди сокета netlink, так и в очереди в самом udevd); аналогичная
операция выполняется при вызове /etc/init.d/udevd start (это
"Populating /dev").  Таймаут udevsettle по умолчанию - 180 секунд;
можно изменить его опцией --timeout=N.

Код для случая, если udevd не запущен, в rc.sysinit есть, и раньше он
работал.

[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 189 bytes --]

^ permalink raw reply	[flat|nested] 23+ messages in thread

* Re: [devel] [git update] packages/startup: tags/0.9.8.17-alt2
  2008-03-05 13:14                 ` Sergey Vlasov
@ 2008-03-05 18:00                   ` Vitaly Ostanin
  2008-03-05 19:01                   ` Dmitry V. Levin
  1 sibling, 0 replies; 23+ messages in thread
From: Vitaly Ostanin @ 2008-03-05 18:00 UTC (permalink / raw)
  To: ALT Linux Team development discussions

[-- Attachment #1: Type: text/plain, Size: 680 bytes --]

Sergey Vlasov пишет:

<skipped/>

> В принципе можно вызвать /sbin/udevsettle, чтобы дождаться завершения
> обработки всех событий, которые могли находиться в очереди 

А по обработке каждого события отдельно какой-нибудь статус выдаётся?

> (как в
> очереди сокета netlink, так и в очереди в самом udevd); аналогичная
> операция выполняется при вызове /etc/init.d/udevd start (это
> "Populating /dev").  Таймаут udevsettle по умолчанию - 180 секунд;
> можно изменить его опцией --timeout=N.
> 
> Код для случая, если udevd не запущен, в rc.sysinit есть, и раньше он
> работал.

-- 
Regards, Vyt
mailto:  vyt@altlinux.org
JID:     vitaly.ostanin@gmail.com


[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 252 bytes --]

^ permalink raw reply	[flat|nested] 23+ messages in thread

* Re: [devel] [git update] packages/startup: tags/0.9.8.17-alt2
  2008-03-05 13:14                 ` Sergey Vlasov
  2008-03-05 18:00                   ` Vitaly Ostanin
@ 2008-03-05 19:01                   ` Dmitry V. Levin
  2008-03-05 21:47                     ` Anton Farygin
  1 sibling, 1 reply; 23+ messages in thread
From: Dmitry V. Levin @ 2008-03-05 19:01 UTC (permalink / raw)
  To: ALT Devel discussion list

[-- Attachment #1: Type: text/plain, Size: 1803 bytes --]

On Wed, Mar 05, 2008 at 04:14:19PM +0300, Sergey Vlasov wrote:
> On Wed, Mar 05, 2008 at 03:46:10PM +0300, Anton Farygin wrote:
> > >загруженный модуль dm-mod не создаёт
> > >/dev/mapper/control, этот файл создаёт userspace.
> > 
> > Как не создаёт ? Сергей же пишет, что если 
> > dm-mod загружен, и RUN_UDEV=1 есть, то он будет 
> > создан udev'ом при инициализации udevstart. Т.е. 
> > - этот код нужен в том случае, если udev не 
> > запускается ?
> > 
> > Серёг, поясни плз..
> 
> Модуль dm-mod при инициализации регистрирует с помощью misc_register()
> устройство с именем "device-mapper"; при этом ядро генерирует событие
> о добавлении этого устройства, которое передаётся в userspace через
> netlink (кроме того, может вызываться программа, указанная через
> sysctl kernel.hotplug - по умолчанию это /sbin/hotplug, но при запуске
> udevd туда пишется пустая строка, отключающая такой механизм обработки
> событий).
> 
> udevd принимает события через netlink и обрабатывает их в соответствии
> с настроенными правилами; для device-mapper в правилах указано
> создание симлинка /dev/mapper/control.  Эта обработка выполняется
> асинхронно - неизвестно, сколько пройдёт времени между завершением
> modprobe dm-mod и созданием udevd соответствующих файлов в /dev.
> 
> В принципе можно вызвать /sbin/udevsettle, чтобы дождаться завершения
> обработки всех событий, которые могли находиться в очереди (как в
> очереди сокета netlink, так и в очереди в самом udevd); аналогичная
> операция выполняется при вызове /etc/init.d/udevd start (это
> "Populating /dev").  Таймаут udevsettle по умолчанию - 180 секунд;
> можно изменить его опцией --timeout=N.

Короче говоря, после modprobe dm-mod имеет смысл вызвать udevsettle?
С каким значением таймаута?


-- 
ldv

[-- Attachment #2: Type: application/pgp-signature, Size: 197 bytes --]

^ permalink raw reply	[flat|nested] 23+ messages in thread

* Re: [devel] [git update] packages/startup: tags/0.9.8.17-alt2
  2008-03-05 19:01                   ` Dmitry V. Levin
@ 2008-03-05 21:47                     ` Anton Farygin
  0 siblings, 0 replies; 23+ messages in thread
From: Anton Farygin @ 2008-03-05 21:47 UTC (permalink / raw)
  To: ALT Devel discussion list



Dmitry V. Levin пишет:
> On Wed, Mar 05, 2008 at 04:14:19PM +0300, Sergey Vlasov wrote:
>> On Wed, Mar 05, 2008 at 03:46:10PM +0300, Anton Farygin wrote:
>>>> загруженный модуль dm-mod не создаёт
>>>> /dev/mapper/control, этот файл создаёт userspace.
>>> Как не создаёт ? Сергей же пишет, что если 
>>> dm-mod загружен, и RUN_UDEV=1 есть, то он будет 
>>> создан udev'ом при инициализации udevstart. Т.е. 
>>> - этот код нужен в том случае, если udev не 
>>> запускается ?
>>>
>>> Серёг, поясни плз..
>> Модуль dm-mod при инициализации регистрирует с помощью misc_register()
>> устройство с именем "device-mapper"; при этом ядро генерирует событие
>> о добавлении этого устройства, которое передаётся в userspace через
>> netlink (кроме того, может вызываться программа, указанная через
>> sysctl kernel.hotplug - по умолчанию это /sbin/hotplug, но при запуске
>> udevd туда пишется пустая строка, отключающая такой механизм обработки
>> событий).
>>
>> udevd принимает события через netlink и обрабатывает их в соответствии
>> с настроенными правилами; для device-mapper в правилах указано
>> создание симлинка /dev/mapper/control.  Эта обработка выполняется
>> асинхронно - неизвестно, сколько пройдёт времени между завершением
>> modprobe dm-mod и созданием udevd соответствующих файлов в /dev.
>>
>> В принципе можно вызвать /sbin/udevsettle, чтобы дождаться завершения
>> обработки всех событий, которые могли находиться в очереди (как в
>> очереди сокета netlink, так и в очереди в самом udevd); аналогичная
>> операция выполняется при вызове /etc/init.d/udevd start (это
>> "Populating /dev").  Таймаут udevsettle по умолчанию - 180 секунд;
>> можно изменить его опцией --timeout=N.
> 
> Короче говоря, после modprobe dm-mod имеет смысл вызвать udevsettle?
> С каким значением таймаута?

Это если запущен udevd. Таймаут можно по умолчанию.



^ permalink raw reply	[flat|nested] 23+ messages in thread

end of thread, other threads:[~2008-03-05 21:47 UTC | newest]

Thread overview: 23+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2008-03-04 12:24 ` [devel] [git update] packages/startup: tags/0.9.8.17-alt2 Dmitry V. Levin
2008-03-04 12:40   ` Sergey Vlasov
2008-03-04 14:38     ` Dmitry V. Levin
2008-03-04 15:49       ` Anton Farygin
2008-03-04 16:06         ` Led
2008-03-04 16:17           ` Sergey V Turchin
2008-03-04 16:34             ` Led
2008-03-04 17:28           ` Anton Farygin
2008-03-04 18:19           ` Mikhail Gusarov
2008-03-04 19:40             ` Led
2008-03-04 19:43               ` Mikhail Gusarov
2008-03-04 20:06                 ` Led
2008-03-04 20:20                   ` Mikhail Gusarov
2008-03-04 20:50                     ` Led
2008-03-04 20:53                       ` Mikhail Gusarov
2008-03-04 22:43         ` Dmitry V. Levin
2008-03-05  5:43           ` Anton Farygin
2008-03-05 12:28             ` Dmitry V. Levin
2008-03-05 12:46               ` Anton Farygin
2008-03-05 13:14                 ` Sergey Vlasov
2008-03-05 18:00                   ` Vitaly Ostanin
2008-03-05 19:01                   ` Dmitry V. Levin
2008-03-05 21:47                     ` Anton Farygin

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