Bug 24426 - Нет задержки перед монтированием USB
: Нет задержки перед монтированием USB
Status: CLOSED WORKSFORME
: Sisyphus
(All bugs in Sisyphus/startup)
: unstable
: all Linux
: P3 normal
Assigned To:
:
:
:
:
: 23155
  Show dependency tree
 
Reported: 2010-10-26 17:54 by
Modified: 2011-07-01 17:45 (History)


Attachments
патч добавления задержки (1.50 KB, patch)
2010-10-28 17:24, Dmitry A. Kharitonov
no flags Details | Diff


Note

You need to log in before you can comment on or make changes to this bug.


Description From 2010-10-26 17:54:59
У меня на eeepc в качестве дополнительного диска стоит USB flash, которая
смонтирована как /usr. По этому для нормальной работы пришлось патчить
/etc/rc.d/rc.sysinit:
*** 136,141 ****
--- 136,144 ----
  # Set the system clock (when /etc/adjtime is missing)
  [ -s /etc/adjtime ] || /etc/init.d/clock start

+ # Pause for USB
+ action "Wainting for USB:" sleep 5
+
  # Activate swap
  action "Activating swap partitions:" swapon -a -e 

Правильнее в /etc/rc.d/rc.sysinit ввести какой-нить параметр задержки в
секундах, который по умолчанию равен 0 (задержки на опрос USB устройств нет), а
в этом скрипте его проверять.
------- Comment #1 From 2010-10-27 05:27:51 -------
(В ответ на комментарий №0)
параметр delay_use для модуля usb-storage не помогает?
------- Comment #2 From 2010-10-27 07:02:31 -------
Я бы попробовал, если б знал где этот параметр установить.
Да и на вскидку, помочь не должен. Там происходит формирование каталога /dev, и
далее сразу монтирование устройств. Понятное дело udev просто не успевает всё
опросить. т.е. система в этот момент ещё не в курсе, что подключена флешка и
соответственно модуль usb-storage ещё не запущен.
------- Comment #3 From 2010-10-27 07:40:08 -------
#modinfo usb-storage G parm:
parm:           option_zero_cd:ZeroCD mode (1=Force Modem (default), 2=Allow
CD-Rom (uint)
parm:           swi_tru_install:TRU-Install mode (1=Full Logic (def), 2=Force
CD-Rom, 3=Force Modem) (uint)
parm:           delay_use:seconds to delay before using a new device (uint)
parm:           quirks:supplemental list of device IDs and their quirks
(string)
------- Comment #4 From 2010-10-27 08:18:58 -------
Я оказался прав

После
echo "options usb-storage delay_use=10" | sudo dd of=/etc/modprobe.d/usbup_test
мою задержку в /etc/rc.d/rc.sysinit пришлось увеличить до 15

Такое решение не подходит
------- Comment #5 From 2010-10-27 12:16:38 -------
Можно ещё парсить fstab в ожидании появления всех прописанных там устройств.
Естественно предусмотреть тайм аут такого ожидания скажем в 30 секунд.
Это чуть сложнее, но зато правильнее -- ожидание будет автоматически
минимально-оптимальное
------- Comment #6 From 2010-10-28 17:24:38 -------
Created an attachment (id=4627) [details]
патч добавления задержки

Вариант опроса USB с ожиданием пока не появятся устройства, которые по fstab
должны подключаться во время загрузки
------- Comment #7 From 2010-11-28 05:21:48 -------
(В ответ на комментарий №4)
> Я оказался прав
> 
> После
> echo "options usb-storage delay_use=10" | sudo dd of=/etc/modprobe.d/usbup_test
> мою задержку в /etc/rc.d/rc.sysinit пришлось увеличить до 15
> 
> Такое решение не подходит

Вообще-то я имел ввиду delay_use=0 (потому что по-умолчанию этот параметр равен
5)
------- Comment #8 From 2010-11-28 10:21:08 -------
(В ответ на комментарий №7)
> (В ответ на комментарий №4)
> > Я оказался прав
> > 
> > После
> > echo "options usb-storage delay_use=10" | sudo dd of=/etc/modprobe.d/usbup_test
> > мою задержку в /etc/rc.d/rc.sysinit пришлось увеличить до 15
> > 
> > Такое решение не подходит
> 
> Вообще-то я имел ввиду delay_use=0 (потому что по-умолчанию этот параметр равен
> 5)
похоже сейчас по умолчанию 0
После модификации патчем, во время работы скрипта на экран выводится счётчик
секунд. Чаще всего задержка не отрабатывает (на ядре 35), иногда требуется
1-3с, а если подключен USB-CDROM -- до 6-7. При этом, мой патч USB-CDROM не
ждёт -- застревает на другом устройстве. Там многое зависит в каком порядке
зарегистрировались устройства, а порядок этот часто меняется.
------- Comment #9 From 2011-04-15 16:37:44 -------
Мне usb-storage.delay_use=0 помог, спасибо led@!

Может закроем как WORKSFORME?
------- Comment #10 From 2011-07-01 17:45:42 -------
Следую предложению Ленар.