UEK R7 (5.15.0)

O Unbreakable Enterprise Kernel Release 7 (UEK R7) é baseado no kernel 5.15.0 upstream.

Observação

Não há suporte para o upgrade de uma release do Unbreakable Enterprise Kernel Developer Preview para sua versão oficial posterior. Se você estiver executando a versão Developer Preview, reinstale a versão oficial do UEK mediante sua disponibilidade geral.

O UEK 7 foi inicialmente lançado com a versão 5.15.0-0.30.19 do kernel. O código-fonte do kernel está disponível por meio de um repositório de código-fonte git público em https://github.com/oracle/linux-uek.

A seguir, uma descrição geral do escopo do suporte para o UEK 7:

  • O kernel é desenvolvido, construído e testado nas arquiteturas Arm de 64 bits (aarch64), Intel® de 64 bits x86_64 e AMD de 64 bits x86_64 e é baseado na versão principal do kernel Linux 5.15.0.

  • O UEK 7 é disponibilizado para instalação nas versões mais recentes de atualização do Oracle Linux 8 e do Oracle Linux 9.

  • No UEK 7, mais recursos são ativados para fornecer suporte para os principais requisitos funcionais e os patches são aplicados para melhorar o desempenho e otimizar o kernel para uso em ambientes operacionais Oracle. Observe que a Oracle monitora ativamente check-ins upstream e aplica correções críticas de bugs e segurança ao UEK 7.

  • Embora o UEK 7 use o mesmo modelo de controle de versão da versão principal do kernel do Linux, é possível que alguns aplicativos não entendam o esquema de controle de versão do 5.15.0. Observe, no entanto, que os aplicativos regulares do Linux geralmente não têm conhecimento nem são afetados pelos números de versão do kernel do Linux.

  • Uma versão do UEK 7 que ativa páginas 64k está disponível para plataformas Arm (aarch64) de 64 bits para o Oracle Linux 9. O pacote kernel-uek64k só está disponível nas formas de computação Arm do Oracle Cloud Infrastructure. O uso desse kernel fora do Oracle Cloud Infrastructure só está disponível como uma visualização técnica.

Alterações notáveis nos cabeçalhos do kernel

Alterações upstream nos cabeçalhos do kernel podem significar que os módulos de terceiros não são compilados em diferentes versões do kernel sem modificação no código-fonte. Notavelmente, a estrutura memcg_cache_params foi movida de include/linux/slab.h para mm/slab.h, o que significa que o código precisa ser refatorado para levar em conta a alteração se você estiver compilando em versões do kernel.

Para resolver este problema para que o código possa compilar para UEK R6 e UEK R7, altere os requisitos de cabeçalho no código-fonte. Por exemplo, altere as linhas como as do exemplo a seguir para o que é mostrado no segundo exemplo:

#ifdef CONFIG_SLUB
#include <linux/slub_def.h>
#endif
#if ( LINUX_VERSION_CODE < KERNEL_VERSION(5,4,0) )

#ifdef CONFIG_SLUB
#include <linux/slub_def.h>
#endif

#endif