Un appel à __alloc_pages_slowpath() peut-il survivre à une interruption de périphérique qui appelle également __alloc_pages_slowpath() ou le deuxième appel corrige-t-il le premier?Est-ce que __alloc_pages_slowpath() est réentrant-sûr ou non?
Je vois un appel de programme en lecture (2) d'un fichier normal sur un système de fichiers XFS. La trace de la pile du noyau montre que finalement __alloc_pages_slowpath() est appelé, puis une IRQ e1000e arrive qui appelle finalement aussi __alloc_pages_slowpath() et ensuite un message de log "fooprog: échec d'allocation de page. Order: 0, mode: 0x4020" arrive presque immédiatement.
La trace toute la pile peut être vu ici: https://gist.github.com/790577
Je suggère d'accepter votre réponse en tant que «réponse», donc cette question est retirée de la liste des questions sans réponse. :) – sarnold