Brak oczekiwania na dyski w initrd.

Łukasz Krotowski lukasz.krotowski at gmail.com
Thu Jul 25 22:39:21 CEST 2013


Cześć,
być może czegoś nie rozumiem w geninitrd ale nie wiem jak to miałoby
pomóc, ale po kolei:

W dniu 19 lipca 2013 12:23 użytkownik Arkadiusz Miśkiewicz
<arekm w maven.pl> napisał:
> Może coś w stylu (nietestowane, u mnie problem nie występuje niestety):
>
> Index: functions
> ===================================================================
> --- functions   (wersja 12710)
> +++ functions   (kopia robocza)
> @@ -104,6 +104,25 @@
>         return 0
>  }
>
> +# waits for specified device until device is found or timeout happens
> +wait_for_device() {
> +       local dev="$1"
> +       local timeout="$2"
> +       local i
> +
> +       # default = 10s
> +       [ -z "$timeout" ] && timeout=5
                                       ^^^^^^^^^^^ miało być 10s nie 5s
> +       i=0
> +       while [ "$i" -lt "$(( timeout * 10 ))" ]; then
                                                              ^^^^^^
"do" zamiast "then"
> +
> +               [ -e "$dev" ] && return 0
> +
> +               i=$(( i + 1 ))
> +               usleep 0.1
                 ^^^^^^^^^^^ usleep ma parametr w usek więc 1/10 sek to 100000
> +       done
> +       return 1
> +}
> +
>  # resolve /dev/dm-0 to lvm2 node
>  # which they got from blkid program fs was specifed as UUID= in fstab
>  dm_lvm2_name() {
> Index: geninitrd
> ===================================================================
> --- geninitrd   (wersja 12710)
> +++ geninitrd   (kopia robocza)
> @@ -1515,6 +1515,8 @@
>  initrd_gen_tuxonice
>  initrd_gen_suspend
>
> +wait_for_device "$rootdev"
> +

I tego nie rozumiem. Jeśli dobrze odczytuje pacha to (po poprawkach
jak wyżej) spowoduje oczekiwanie na dyski przy generowaniu
initrd. Jeśli dobrze rozumiem zamysł to wait_for_device powinna
zostać dodana do linuxrc i wywołana gdzieś na początku (przed
skanem /proc/partitions), prawda?

>  # clean up env
>  add_linuxrc <<-'EOF'
>  if [ ! "$DEBUGINITRD" ]; then

Pozdr.,
Łukasz


More information about the pld-devel-pl mailing list