Forçando ext4lazyinit para terminar sua coisa?

15

Existe alguma maneira de 'forçar' ext4lazyinita terminar o que faz com prioridade máxima? Algo como "Eu não me importo com os recursos do meu sistema, apenas faça o seu trabalho o mais rápido que puder"?

Eu deveria adicionar: sem reformatar a unidade. Estou ciente da opção lazy_itable_init do mkfs.

Marius
fonte
Parece muito XY para mim. O que você está realmente tentando alcançar?
Daniel B
3
Levou o meu Raspberry Pi várias horas para terminar o ext4lazyinit em um disco rígido externo. Eu queria testar se o hd gira corretamente após algum tempo de inatividade, no entanto, isso não foi possível devido a ext4lazyinit. Depois de observar alguns códigos do kernel ( github.com/torvalds/linux/blob/master/fs/ext4/super.c#L2931 ), não é possível forçar o encadeamento a terminar, pois os atrasos são um pouco codificados. No entanto, isso não é uma resposta definitiva, não sou um especialista em kernel nem em ext4 e apenas observei essa função.
Marius
@Marius Você está certo de que o atraso está codificado.
Moshe Katz

Respostas:

11

Para forçar o ext4lazyinit a terminar a coisa que ele faz com prioridade máxima, você precisa montar o sistema de arquivos com 'init_itid = 0'. Por padrão, é 10 (para detalhes, por favor, veja o link abaixo)

Solução alternativa é desabilitar o thread ext4lazyinit pela opção de montagem ' noinit_itable ', que pode não ser uma boa idéia no sistema de produção (para detalhes veja o link abaixo).

Fonte com informações detalhadas aqui ext4lazyinit git commit comment .

Venca B Spam
fonte
1
Para obter o comando que pode ser usado para remontar (sem forro), você pode executar mount | grep /path/to/mount/point | sed -E 's/^.* on (.*) type ext4 \((.*)\)$/mount -o remount,init_itable=0,\2 \1/g'- Isso produzirá algo comomount -o remount,init_itable=0,rw,noatime,seclabel,stripe=512,data=ordered /path/to/mount/point
Iwan Aucamp
-1

Você pode definir o nível "legal" do processo para uma prioridade mais alta que os outros. Não tenho certeza se isso irá torná-lo mais rápido e poderá afetar adversamente a estabilidade do sistema se for definido muito alto (-20 é a prioridade mais alta).

nice -n [nice value] [command]
Hefewe1zen
fonte
bom seria dar-lhe mais prioridade de CPU, o que precisa é de mais prioridade IO, @VencaBSpam tem a solução certa
Jens Mühlenhoff