Zmuszasz ext4lazyinit, aby skończył?

19

Czy jest jakiś sposób, aby „zmusić” ext4lazyinitdo ukończenia tego, co robi, z najwyższym priorytetem? Coś w stylu „Nie dbam o zasoby mojego systemu, po prostu wykonuj swoją pracę tak szybko, jak to możliwe”?

Powinienem dodać: bez ponownego formatowania dysku. Jestem świadomy opcji lazy_itable_init mkfs.

Marius
źródło
Brzmi dla mnie całkiem XY . Co tak naprawdę próbujesz osiągnąć?
Daniel B
3
Moje Raspberry Pi zajęło wiele godzin, aby zakończyć ext4lazyinit na zewnętrznym dysku twardym. Chciałem przetestować, czy hd obraca się poprawnie po pewnym czasie bezczynności, jednak nie było to możliwe z powodu ext4lazyinit. Po przyjrzeniu się kodowi jądra ( github.com/torvalds/linux/blob/master/fs/ext4/super.c#L2931 ) wydaje się, że nie można wymusić zakończenia wątku, ponieważ opóźnienia są nieco zakodowane. Nie jest to jednak ostateczna odpowiedź, nie jestem ekspertem od jądra ani ext4 i właśnie rzuciłem okiem na tę funkcję.
Marius
@Marius Masz rację, że opóźnienie jest zakodowane na stałe.
Moshe Katz

Odpowiedzi:

16

Aby „zmusić” ext4lazyinit do zakończenia tego, co robi z maksymalnym priorytetem, musisz zamontować system plików za pomocą „init_itable = 0”. Domyślnie jest to 10 (szczegóły patrz link poniżej)

Alternatywnym rozwiązaniem jest wyłączenie wątku ext4lazyinit przez opcję montowania „ noinit_itable ”, co jednak może nie być dobrym pomysłem w systemie produkcyjnym (szczegółowe informacje znajdują się w linku poniżej).

Źródło ze szczegółowymi informacjami tutaj ext4lazyinit git commit comment .

Venca B Spam
źródło
2
Aby uzyskać polecenie, którego można użyć do ponownego zamontowania (bez off-line), możesz uruchomić mount | grep /path/to/mount/point | sed -E 's/^.* on (.*) type ext4 \((.*)\)$/mount -o remount,init_itable=0,\2 \1/g'- To wyświetli coś w stylumount -o remount,init_itable=0,rw,noatime,seclabel,stripe=512,data=ordered /path/to/mount/point
Iwan Aucamp
-2

Możesz ustawić „miły” poziom procesu na wyższy priorytet niż inne. Nie jestem pewien, czy przyspieszy to i może mieć negatywny wpływ na stabilność systemu, jeśli zostanie ustawiony zbyt wysoko (-20 jest najwyższym priorytetem).

nice -n [nice value] [command]
Hefewe1zen
źródło
1
fajnie byłoby nadać mu wyższy priorytet procesora, potrzebuję więcej priorytetu We / Wy, @VencaBSpam ma właściwe rozwiązanie
Jens Mühlenhoff