[devel] q: installer: Killing all remaining processes (forever)
Evgeny Sinelnikov
=?iso-8859-1?q?sin_=CE=C1_altlinux=2Eru?=
Вт Апр 15 02:13:14 MSD 2008
2008/4/14 Stanislav Ievlev <inger at altlinux.org>:
> On Mon, Apr 14, 2008 at 04:00:38AM +0400, Evgeny Sinelnikov wrote:
> > > Что касается финального loop_change_fd, то сдаётся мне в свете
> > > накопившегося опыта стоит попробовать следующее:
> > > * copy+reexec init'a с tmpfs (тогда точно не будет никаких зависаний ибо
> > > файл процесса уже будет вне опасности)
> > > * по окончании работы pivot_root в tmpfs (откуда был запущен) далее kill и umount.
> > > После второй операции возможно и повторный loop_change_fd не пригодится.
> > >
> > > Мы один раз уже пробовали эту схему, но тогда видать не дотумкали насчёт
> > > ожидания убиения процессов, увидели что не получается отмонтирование и
> > > отказались от неё. Стоит попробовать ещё разок.
> > >
> >
> > Да, это интересная идея... Завтра проверю...
> А я тогда подожду результатов ;)
> зависание видимо было из-за того что несмотря на статичность файла init,
> он был загружен при помощи mmap и не вся его часть попала с loop в память.
>
Что-то оно сегодня не всё успелось... я собрал, но не опробовал
вариант первичного перенесения init в tmpfs. По итоге стало ясно, что
вариант переносить init по завершении работы выглядит разумнее...
--
Sin (Sinelnikov Evgeny)
Подробная информация о списке рассылки Devel