Los ingenieros de AMD han estado resolviendo muchas peculiaridades y rarezas en el manejo de la suspensión/reanudación del sistema para que sea más confiable en su hardware, particularmente en las computadoras portátiles Ryzen. Además de las mejoras en la confiabilidad de suspensión/reanudación y las mejoras de suspensión a inactividad (s2idle), uno de sus ingenieros también descubrió una frase sencilla como un pequeño paso para acelerar el tiempo de reanudación del sistema.
El ingeniero de AMD, Basavaraj Natikar, se dio cuenta de que una verificación faltante en el controlador USB XHCI puede evitar un retraso adicional de 120 ms durante el tiempo de reanudación del sistema. Son solo 120 ms, pero es una gran victoria dado que es para el código del controlador XHCI y parte de su mayor esfuerzo por mejorar la plataforma AMD Ryzen en Linux y este ahorro de 120 ms proviene de alterar una línea de código.
Basavaraj Natikar explicó con el parche ahora en cola en USB-next antes del ciclo del kernel de Linux 6.5:
“Evite un retraso adicional de 120 ms durante la reanudación del sistema.
El controlador xHC puede señalar despierta hasta 120 ms antes de mostrar qué dispositivo USB provocó la activación en los registros del puerto xHC.
Por lo tanto, el controlador xhci verifica la actividad del puerto hasta 120 ms durante la reanudación, asegurándose de que el controlador del concentrador pueda ver el cambio del puerto y no se suspenda inmediatamente el tiempo de ejecución debido a que no hay actividad en el puerto.
Sin embargo, esto solo es necesario para la reanudación del tiempo de ejecución, ya que la reanudación del sistema reanudará todos los concentradores secundarios y otros dispositivos USB secundarios de todos modos”.
Busque este ahorro de tiempo de reanudación del sistema de 120 ms con el kernel de Linux 6.5 en unos pocos meses. Como está marcado como una”corrección”para un parche XHCI creado por un ingeniero de Intel en 2021, donde se introdujo este retraso de 120 ms, también es posible que después de la ventana de combinación de Linux 6.5, este parche se transfiera a las versiones estables existentes del kernel de Linux..