Linux completa 30 anos e Printk ainda passa por refinamentos

Linux 6.0-rc5 lançado após uma semana calma de desenvolvimento do kernel
tux

Talvez tão antigo quanto o próprio sistema operacional e seu kernel são algumas funções básicas presentes até os dias atuais no Linux. Uma delas é a função printk () que remonta ao lançamento do kernel Linux original. Então, mesmo com o Linux completando trinta anos esta semana, o trabalho em printk não acabou e ainda passa por muitos refinamentos.

Durante a versão do kernel Linux 5.10 no ano passado, uma reformulação do printk (), há muito esperada, começou a acontecer. Então, agora com o Linux 5.13 mais desse trabalho está cruzando a linha de chegada. Na versão 5.10, o buffer de ring tornou-se totalmente sem bloqueio, mas ainda contando com um bloqueio de buffer de log.

Com o Linux 5.13, agora ele está configurado para parar de sincronizar os leitores do buffer de log por meio desse bloqueio. Como tal, acessar o buffer de log do kernel agora é considerado totalmente sem bloqueio. Embora ainda haja bloqueios usados ??por printk () junto com buffers temporários por CPU, mas o objetivo final é mudá-los no futuro.

Linux completa 30 anos e Printk ainda passa por refinamentos

Linux completa 30 anos e Printk ainda passa por refinamentos

O buffer de log do kernel totalmente sem bloqueio para printk () junto com outras melhorias foram enviadas e subsequentemente mescladas na terça-feira por meio desta solicitação de pull.

Mais detalhes sobre o trabalho de modernização do printk por meio do vídeo anterior da Linux Plumbers Conference (2019) incorporado abaixo por John Ogness.

Linux 5.13 apresentando controlador Cgroup Misc

O kernel de desenvolvimento Linux 5.13 está introduzindo um novo controlador cgroup “misc”. O controlador misc cgroup deve ser usado para recursos que são controlados simplesmente contando e limitando o número de instâncias de recursos de maneira escalar.

Este controlador cgroup pode ser usado para fins de rastreamento / limitação do número de enclaves no sistema com base em restrições de hardware. O usuário inicial deste controlador cgroup misc é para IDs de espaço de endereço usados ??para criptografia de memória de máquina virtual.

Conforme descrito por meio da solicitação pull, o controlador misc cgroup deve funcionar bem para “recursos de hardware de nicho com limites de recursos concretos e modelos de uso simples”.

Procure por este controlador Diversos para ser construído em frente, agora que a implementação inicial foi fundida com o Linux 5.13. Esta documentação descreve melhor o novo controlador cgroup.

Linux 5.13 estreia suporte para Randomizing Stack Offsets

Um dos novos recursos de segurança do Linux 5.13 é a capacidade de randomizar os deslocamentos da pilha do kernel em cada chamada do sistema. Este recurso opcional agora está como principal.

Randomizar o deslocamento da pilha do kernel por chamada de sistema tem o objetivo de tornar mais desafiador para certos agentes realizar ataques baseados em pilha no kernel Linux. Isso está em desenvolvimento há mais de dois anos e foi inspirado pelo recurso “RANDKSTACK” do PaX, mas a implementação real teve uma abordagem diferente. Simplificando, esta randomização da pilha do kernel em cada chamada de sistema é para afastar exploits que dependem do determinismo da pilha do kernel.

No momento da inicialização, a funcionalidade pode ser alternada via parâmetro randomize_kstack_offset = com on/off dependendo do comportamento desejado. x86/x86_64 e ARM64 são as arquiteturas iniciais suportadas.

Espera-se que a ativação desse recurso randomize_kstack_offset resulte em um impacto de desempenho de 1% para pelo menos algumas atividades. 

Mais detalhes sobre esse recurso de pilha aleatória do kernel por chamada de sistema podem ser encontrados por meio desta solicitação de pull honrada no Linux 5.13.