I'm having issues fixing a system hang apparently caused by unloading my driver module. The driver module seemingly unloads fine then causes a system hang.

The last entry in my system journal is "BUG: unable to handle kernel NULL pointer dereference at 0000000000000001".

While this message seems pretty straight forward, I don't understand how this could happen after my module has unloaded seemingly correctly or how my module could even cause this. I don't feel I have the insight required to fix this issue in a timely manner. However, if I disable the section of code in my probe function that enables FF support, the driver unloads an infinite amount of times with no hitches. Perhaps it's just coincidence that removing FF support allows the module to unload correctly? I've unfortunately spent the better part of today and yesterday trying to figure out the issue with not even a hint of what it could be.

Since I can't post URLs apparently (yet), would anyone care to provide examples of what could cause this behavior?