Nilay Shroff <[email protected]> writes: > Hi Nam, Hi Nilay, > On the latest upstream mainline kernel, I am encountering a kernel > crash when attempting to unload the NVMe driver module (rmmod nvme) > on a POWER9 system. The crash appears to be triggered by the recent > work on using MSI parent domains, discussed here: > https://lore.kernel.org/all/[email protected]/
Thanks for the detailed analysis. This should be fixed by: https://lore.kernel.org/linuxppc-dev/[email protected]/T/#u which currently is in powerpc/fixes-test > Possible Cause: > =============== > This looks like a cleanup ordering issue introduced by the recent MSI parent > domain rework. The PCI/MSI teardown seems to assume that the MSI descriptor > remains valid until after the domain teardown path executes — which no longer > appears to hold true in this sequence. I think the reason is more idiotic than that, the msi_alloc_info_t passed to pseries_msi_ops_teardown() is always all zeroes, thus we have the NULL pointer deref regardless of the sequence. See the patch I mentioned. Nam
