have not had a chance to look at the new submission yet but I think you need at least the following rolled in, to avoid calling __exit code that might have been thrown away from the error path of your init function.
Building with CONFIG_DEBUG_SECTION_MISMATCH=y when you see that the kernel build tells you that you introduced new section mismatches is probably a good idea. diff --git a/drivers/infiniband/hw/qib/qib_file_ops.c b/drivers/infiniband/hw/qib/qib_file_ops.c index 781c87f..53c314f 100644 --- a/drivers/infiniband/hw/qib/qib_file_ops.c +++ b/drivers/infiniband/hw/qib/qib_file_ops.c @@ -2450,7 +2450,7 @@ done: return ret; } -void __exit qib_dev_cleanup(void) +void qib_dev_cleanup(void) { if (qib_class) { class_destroy(qib_class); -- To unsubscribe from this list: send the line "unsubscribe linux-rdma" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html