¿Aplicar automáticamente el parche del módulo y compilar el núcleo cuando se actualiza?

8

Recientemente he aplicado un parche de una línea drivers/bluetooth/btusb.cpara permitir la compatibilidad con mi dispositivo Bluetooth. Sin embargo, cada vez que obtengo una actualización del kernel, el parche se perderá hasta que alguien lo respalde (lo cual no es probable). ¿Hay alguna forma de ejecutar un script y parchear cada nueva actualización del kernel automáticamente?

DKMS parece una buena solución, pero no estoy seguro de cómo configurar las cosas. No quiero recompilar todo el kernel de Linux cada vez que recibo una actualización, pero me gustaría aplicar ese parche al módulo btusb, recompilarlo e insertarlo en mi kernel en cada actualización. ¿Cómo puedo hacer esto usando la fuente obtenida de apt-get source linux-source-3.2.0? ¿Qué archivos necesito copiar? La makellamada crítica es make M=drivers/bluetooth modules, pero esto depende de otras utilidades del núcleo que se construirán primero. ¿Cómo puedo ensamblar un módulo DKMS para esto?

Los detalles sobre cómo aplicar el parche se pueden encontrar aquí en Ask Ubuntu.

Naftuli Kay
fuente

Respuestas:

3

Sí, debe empaquetar sus cambios como un módulo DKMS. Construir módulos para varios núcleos instalados o reconstruirlos automáticamente en un núcleo actualizado es la característica principal de DKMS.

La documentación de la comunidad de Ubuntu tiene un buen artículo sobre este tema aquí .

gertvdijk
fuente
3
¿Podría dar un ejemplo de cómo configurar DKMS para mi caso de uso específico? Por ejemplo, ¿qué archivos necesito copiar para mi módulo? ¿Cómo debo configurar dkms.conf?
Naftuli Kay