terça-feira, 26 de julho de 2016

XFSv5: nota para as distribuições (III)

Continua a saga (ver post anterior). Temos outra opção no mkfs.xfs causadora de incompatibilidade: -i sparse.

Está disponível a partir do mkfs.xfs 4.2.0. No kernel, a partir da versão 4.2. Recurso considerado experimental até o 4.7. No 4.8, será declarado estável e então não demorará para o mkfs.xfs habilitá-lo por padrão.

Tabela atualizada:

Kernel mkfs.xfs
≥ 2.6.23 e ≤ 3.12 -m crc=0 -n ftype=0
3.13 e 3.14 -m crc=0 -n ftype=1
3.15 -m crc=1,finobt=0 -i sparse=0
≥ 3.16 e ≤ 4.7 -m crc=1,finobt=1 -i sparse=0
≥ 4.8 -m crc=1,finobt=1 -i sparse=1
Versões requeridas do mkfs.xfs:

-m crc ≥ 3.2.0 -m finobt ≥ 3.2.1 -n ftype ≥ 3.2.0 -i sparse ≥ 4.2.0

-m crc=X,finobt=Y equivale a
-m crc=X -m finobt=Y

Reclamei dos novos recursos que quebram compatibilidade com versões anteriores do kernel. No entanto, pensando bem, não deixa de ser positivo, pois mostra um código em constante desenvolvimento, que não está morto como outros sistemas de arquivos (ReiserFS e JFS, por exemplo). E a quantidade de variáveis ainda é aceitável, dá para memorizar — ao contrário da loucura dos EXT.

Ainda sobre isso, o GRUB 2.02-beta3 adicionou suporte ao XFSv5, porém, em volumes com meta UUID configurado, falhava. Reportei o bug, que foi corrigido. Próxima tarefa é reportar outro relativo a volumes criados com -i sparse=1, não suportados pelo bootloader.

quarta-feira, 20 de julho de 2016

Ubuntu e o tal boot com "concurrency"

Como ativar todos os núcleos do seu processador no boot do Ubuntu (Diolinux)

O mau cheiroso script /etc/init.d/rc nem é executado no boot:

Mask /etc/init.d/rc and /etc/init.d/rcS from initscripts

Trata-se de entulho remanescente do tempo das cavernas.

Rode aí:
(Ubuntu 16.04)

$ systemctl is-enabled rc.service 
masked

Um serviço masked está super ultra desabilitado.

Tem influência no desempenho o serviço ondemand.service. Por padrão, o kernel do Ubuntu configura o escalonador de frequência de todos os núcleos com performance [1], que os mantêm sempre na frequência máxima nominal — faz sentido durante o boot, para usar ao máximo o hardware, sem preocupar-se com consumo elétrico. O serviço, depois de 60 segundos, altera todos os núcleos para ondemand, com objetivo de aproveitar os recursos SpeedStep, Cool'n'Quiet e similares. Até o Ubuntu 16.04, esse serviço é na verdade um script SysV (/etc/init.d/ondemand), suportado pelo systemd através do sysv-generator. No futuro Ubuntu 16.10, será um pouco diferente:

On Ubuntu, provide an "ondemand.service" that replaces /etc/init.d/ondemand

O shell script /lib/systemd/set-cpufreq é chamado através de um arquivo .service nativo, Type=idle, executado pelo systemd quando não houver mais jobs pendentes, em outras palavras, no final do boot. Outra mudança é que, ao ser detectado o uso do driver intel_pstate, o script não mexe no escalonador e mantém performance. Esse driver funciona de forma diferente do acpi-cpufreq e powernow-k8 e com ele não é recomendado usar ondemand (bons dados vindos do pessoal da Canonical podem ser obtidos aqui).

Quanto ao número de núcleos ativos, não há nada a fazer. O kernel ativa todos, a menos que passemos a opção de boot maxcpus=<número>. A saída de lscpu diz quantos núcleos estão ativos ("On-line CPU(s) list"). É uma maneira amigável de mostrar o que está em /sys/devices/system/cpu/online.

Resumo: ao que tudo indica, a tal configuração milagrosa não tem efeito algum.


[1] CONFIG_CPU_FREQ_DEFAULT_GOV_PERFORMANCE=y.

sexta-feira, 15 de julho de 2016

Tela preta no Dell Vostro 3550 com o Windows 10

Mesmo sintoma do Inspiron 14 N4050. Este Vostro 3550 tem etiqueta de serviço G64X9R1. Estava com BIOS A7 (18/07/2011). Resolveu depois de atualizar para a última versão A12 (18/02/2014).

Quem está pendurado no pincel sem imagem no Windows 10, use a saída VGA, que funciona.

Dell Vostro 3550 System BIOS

O executável 3550A12.EXE roda em Windows e DOS, como de costume.

terça-feira, 12 de julho de 2016

segunda-feira, 11 de julho de 2016

Contato

Fazia tempo que pretendia assistir à adaptação cinematográfica de Contato (1985), de Carl Sagan, dirigida por Robert Zemeckis e lançada em 1997.

Blu-ray, livro

Como todos filmes adaptados de livros, o enredo é severamente simplificado. Contudo, em Contato os roteiristas abusaram. Há várias passagens esquisitas.

- Logo de início, é dito que a mãe de Eleanor Arroway morreu devido a complicações no parto. No livro, sua mãe morre de causas naturais na velhice.
- Ellie, ainda no começo do filme, começa um tênue relacionamento amoroso com Palmer Joss. Em nenhum momento no livro os dois chegam sequer a flertar.
- A Máquina transporta uma pessoa apenas e Ellie é a escolhida. No livro, são cinco pessoas, dentre elas Ellie.
- O relacionamento entre Ellie e Ken der Heer não é abordado.
- O pai biológico de Ellie não é revelado.
- Praticamente a parte científica inteira se perde: explicações sobre quasares, pulsares, buracos negros, etc. Nada sobre o computador supercondutor Cray 21.

Entre outras. Faz alguns anos desde minha leitura. Provavelmente estou esquecendo outros pontos importantes.

Temos um retrato pobre da personalidade dos personagens — isso quando simplesmente não são ignorados, como Vasily Gregorovich Lunacharsky (conhecido como Vaygay — por ele sim Ellie nutre afeição no limiar da amizade) e Abonnema Eda. S. R. Hadden é quase uma caricatura no filme. Excêntrico e misterioso, é um personagem interessante. A densidade dos diálogos entre Ellie e Palmer Joss e de toda a cena da praia, com as reminiscências dos cinco viajantes, é inexistente no filme.

Para quem leu o livro, que é muito bom, o filme deixa a desejar. De positivo, gostei da atuação de Jodie Foster e dos efeitos especiais. Nota 6 no máximo.