Thanks everyone for the review. I posted v2 here: https://lore.kernel.org/netdev/[email protected]/
Following Sashiko's feedback, v2 no longer dereferences the skb: only its pointer value is reported. It also validates the saved ring under RTNL before copying the descriptors and IRQ name, then releases RTNL before calling devlink_health_report(). Przemek: thanks for the conditional Acked-by. Since the implementation changed substantially beyond the additional NULL checks, I have not carried it over. Could you take another look? Paul: the skb contents are no longer included, but the descriptor dump remains available when a ring snapshot can be taken. I dropped your Reviewed-by because the implementation changed substantially. Synchronization of tx_hang_buf between ice_tx_timeout() and the service task remains outside this patch and is documented under Limitations.
