Me gustaría poder imprimir el seguimiento de la pila de un hilo en el kernel de Linux.
En detalles: quiero agregar código a funciones específicas (por ejemplo swap_writepage() ) que imprimirá el seguimiento completo de la pila del hilo donde se llama a esta función. Algo como esto:
int swap_writepage(struct page *page, struct writeback_control *wbc) { /* code goes here to print stack trace */ int ret = 0; if (try_to_free_swap(page)) { unlock_page(page); goto out; } if (frontswap_store(page) == 0) { set_page_writeback(page); unlock_page(page); end_page_writeback(page); goto out; } ret = __swap_writepage(page, wbc, end_swap_bio_write); out: return ret; }@rakib tiene toda la razón, por supuesto.
Además, me gustaría señalar que se pueden definir macros simples y elegantes que ayudan a imprimir información de depuración cuando sea necesario. A lo largo de los años, he puesto estas macros y rutinas de conveniencia en un archivo de encabezado; puede consultarlo y descargarlo aquí: "Un encabezado de conveniencia" .
Hay macros/funciones para:
Vaya :-)