I'm starting to do some cleanup to the BusLogic SCSI driver. Since I'm a rank-newbie at anything SCSI, I thought I'd post a snap-shot of where I am, and solicity direction and comments from the experts... Please review and comment. This patch is against linux-2.6.1-rc1. It works for me but the normal caveats apply. Consider it a work-in-progress. Deleted dead code: - BusLogic_ReportTargetDeviceInfo() - BusLogic_SelectQueueDepths() - BusLogic_SendBusDeviceReset() - BusLogic_ResetCommand() Fixed: - removed dependancy on "scsi_obsolete.h" o Changes to BusLogic_ResetHostAdapter() o Changes to BusLogic_AbortCommand() - changed the device initialization to use module_init() and removed 'scsi_module.c' code. Left to do: - Test eh_abort_handler - Test eh_host_reset_handler - I haven't compiled as a moduled and tried to unload the module. - I'd really really like to run the code through 'indent' to match the kernel coding standards but for now I don't want to confuse formatting changes with code changes. It is very difficult to read as it is currently formatted. So - now the questions... How do I test the eh_* handler functions? I've tried everything I can think of to provoke them but haven't managed to. For now, I don't know if they work or not. Is it worth the trouble to make the device reset and bus reset handlers work? It looks like many drivers don't bother to implement them. Also I clearly don't understand the command completion in the context the error handlers. Do the eh_* functions need to do command completion? Does anyone understand what the 'reset_chain' linked list that is commented out did and/or should do? I read in some archive that it was BusLogic specific but it did not elaborate. Does it need to be re-implemented? Lastly, does someone have the BusLogic docs anymore? The code is fairly well documented but still it would be nice to have the docs. Thanks in advance, Bob.