On Thu, May 25, 2017 at 11:43:13AM -0700, Bart Van Assche wrote: > Since the cdrom driver only supports request queues for which > struct scsi_request is the first member of their private request > data, refuse to register block layer queues for which this is > not the case. Hmm. I think we have a deeper issue there. The cdrom layer usually sends packets commands through the cdrom ops ->generic_packet method, but one function (cdrom_read_cdda_bpc) seems to directly send a scsi passthrough request. It is only used if the cdda_method is not CDDA_OLD, which is set if the cdrom_device_info structure does not have a gendisk pointer hanging off it. It seems like the legacy cdrom drivers fall into that category and would be broken by this change.