Al actualizar el kernel, por defecto Fedora mantiene instaladas las tres últimas versiones, de forma que se puede iniciar el sistema desde cualquier de ellas, iniciándose por defecto desde la última. Cada actualización sustituye la versión más vieja e instala una nueva. Se desea evitar que al actualizar el kernel se borre una versión que queremos mantener aunque sea más vieja.
Se necesita un plugin de dnf, que instalamos (todas las instrucciones como root):

# dnf install python3-dnf-plugin-versionlock

O bien, en versiones de Fedora más antiguas:

# dnf install python3-dnf-plugins-extras-versionlock

Fijamos la versión del núcleo:

# dnf versionlock add kernel-5.8.18-200.fc32

Si tenemos instaladas los paquetes para desarrollo también necesitaremos fijar dichos paquetes:

# dnf versionlock add kernel-devel-5.8.18-200.fc32

O bien hacemos todo a la vez:

# dnf versionlock add kernel-{core,devel,modules}-5.8.18-200.fc32

Otra cuestión son las cabeceras para programación en C. Deberemos dejar que las actualice para que al instalar los módulos que exijan compilación en el momento de instalación. Si queremos volver a una versión anterior deberemos tener en el disco duro el RPM de la versión a la queremos volver y desactualizar contra esa versión:

# dnf downgrade ./kernel-headers-5.8.18-200.fc32.x86_64.rpm

Si no tienes el RPM del paquete, puedes buscarlo en la máquina de construcción de actualizaciones de Fedora, en https://bodhi.fedoraproject.org/.

El bloqueo se retirará con la acción delete. Por ejemplo:

# dnf versionlock delete kernel-5.8.18-200.f32

Podemos ver qué paquetes mantenemos bloqueados con list:

# dnf versionlock list