One prep patch that fixes up some potentially bad assumptions about the value of the internal tag, and a functional patch that shifts mtip32xx over to use the normal block infrastructure for issuing and completing internal requests. I have tested this on my local box, and it works fine. I've also tested the timeouts by faking missed completions, and verified that we catch internal command timeouts and handle those appropriately. Against my for-linus branch, on top of the other mtip32xx cleanups. -- Jens Axboe