Hi Bart, here's a first attempt at removing all references to ide_atapi_pc in the ATAPI IRQ handler. I've moved some of the members to the drive struct and will deal with them later :). The next step is to add an ide_atapi_queue_pc() routine similar to ide_cd_queue_pc() and then rewrite all functions in the drivers to use struct requests and local buffers instead of pc->buf and then, after that works reliably, finally get rid of ide_atapi_pc completely. This has been tested with ide-floppy. drivers/ide/ide-atapi.c | 123 ++++++++++++++++------------- drivers/ide/ide-floppy.c | 56 +++++++------- drivers/ide/ide-floppy.h | 4 +- drivers/ide/ide-floppy_ioctl.c | 19 +++-- drivers/ide/ide-tape.c | 173 ++++++++++++++++++++++------------------ include/linux/ide.h | 20 +++-- 6 files changed, 214 insertions(+), 181 deletions(-) -- To unsubscribe from this list: send the line "unsubscribe linux-ide" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html