On Wed, Oct 31 2007, Jeff Garzik wrote: > Jens Axboe wrote: >> On Wed, Oct 31 2007, Alan Cox wrote: >>> On Tue, 30 Oct 2007 19:21:29 +0000 >>> Daniel Drake <dsd@xxxxxxxxxx> wrote: >>> >>>> Alan Cox wrote: >>>>> I would guess Brasero is issuing a command with the length of data >>>>> wrongly set. In the old code that might well just produce errors of the >>>>> "Umm wtf is this data left over for ?", with the new code the drive is >>>>> likely to change state as it knows the transfer size and that will >>>>> *correctly* cause an HSM error and what follows. >>>>> >>>>> Now the question is who gets the length wrong - Brasero or the ata >>>>> translation code in libata >>>> Brasero does exactly the same as my test app which I attached to my last >>>> mail. Is my test app wrong? >>> Would need to double check the SCSI specificatons to be sure but I think >>> you are asking for less data than the drive wishes to provide. You >>> aren't allowed to do that with ATA. >> ide-cd handles this by throwing the excess away, which I think is the >> sane way to do this. > > That's easy for the PIO case. But CD writing is normally DMA, which means > you will get a DMA engine exception if the device wants to give you more > data than the scatter/gather entries permit. Right, that's of course problematic... There has to be a way to recover that situation though, or you can't export any user command issue facility. -- Jens Axboe - 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