Hello Edgar. On the whole, I like this patch and I'll give it a whirl. Some comments:
1. The original patch I created tries to recover from a number of conditions other than simple timeouts based on messages that come back from the IOC. In such cases, mpt_restart() is called. I think those events can still be handled gracefully by your reworked npt_restart() routine. However, I wonder why the mpt_restart() has a second argument? Is that simply for debugging purposes? Could that second argument be dropped? -Brian
