"value":"In the Linux kernel, the following vulnerability has been resolved:\n\ndmaengine: idxd: Prevent use after free on completion memory\n\nOn driver unload any pending descriptors are flushed at the\ntime the interrupt is freed:\nidxd_dmaengine_drv_remove() ->\n\tdrv_disable_wq() ->\n\t\tidxd_wq_free_irq() ->\n\t\t\tidxd_flush_pending_descs().\n\nIf there are any descriptors present that need to be flushed this\nflow triggers a \"not present\" page fault as below:\n\n BUG: unable to handle page fault for address: ff391c97c70c9040\n #PF: supervisor read access in kernel mode\n #PF: error_code(0x0000) - not-present page\n\nThe address that triggers the fault is the address of the\ndescriptor that was freed moments earlier via:\ndrv_disable_wq()->idxd_wq_free_resources()\n\nFix the use after free by freeing the descriptors after any possible\nusage. This is done after idxd_wq_reset() to ensure that the memory\nremains accessible during possible completion writes by the device."
"value":"En el kernel de Linux, se ha resuelto la siguiente vulnerabilidad: dmaengine: idxd: evita el use after free la memoria al finalizar. Al descargar el controlador, los descriptores pendientes se eliminan en el momento en que se libera la interrupci\u00f3n: idxd_dmaengine_drv_remove() -> drv_disable_wq() -> idxd_wq_free_irq () -> idxd_flush_pending_descs(). Si hay alg\u00fan descriptor presente que deba eliminarse, este flujo desencadena un error de p\u00e1gina \"no presente\" como se muestra a continuaci\u00f3n: ERROR: no se puede manejar el error de p\u00e1gina para la direcci\u00f3n: ff391c97c70c9040 #PF: acceso de lectura del supervisor en modo kernel #PF: error_code(0x0000 ) - p\u00e1gina no presente La direcci\u00f3n que desencadena la falla es la direcci\u00f3n del descriptor que se liber\u00f3 momentos antes a trav\u00e9s de: drv_disable_wq()->idxd_wq_free_resources() Corrige el use-after-free liberando los descriptores despu\u00e9s de cualquier posible uso. Esto se hace despu\u00e9s de idxd_wq_reset() para garantizar que la memoria permanezca accesible durante posibles escrituras completas por parte del dispositivo."