Re: Can't burn DVD under 2.5.59 with ide-cd

Jens Axboe (axboe@suse.de)
Fri, 24 Jan 2003 10:26:16 +0100


On Fri, Jan 24 2003, Henning P. Schmiedehausen wrote:
> Jens Axboe <axboe@suse.de> writes:
>
> >In drivers/ide/ide-cd.c:cdrom_end_request(), try to insert something
> >ala:
>
> > if ((rq->flags & REQ_SENSE) && uptodate) {
> > struct request *failed = (struct request *) rq->buffer;
> > struct cdrom_info *info = drive->driver_data;
> > void *sense = &info->sense_data;
>
> >+ if (failed && block_pc_request(failed))
> >+ printk("%s: failed %p\n", __FUNCTION__, failed->sense);
>
> > if (failed && failed->sense)
> > sense = failed->sense;
>
> Shouldn't this be below the 2nd if() and then just test "sense" ?
>
> Like
>
> > if (failed && failed->sense)
> > sense = failed->sense;
>
> >+ if (failed && block_pc_request(failed))
> >+ printk("%s: failed %p\n", __FUNCTION__, sense);
>
> That makes sure, that you report what is analyzed later here:

The interesting part is whether failed has a sense attached, and if so
what length.
>
> > cdrom_analyze_sense_data(drive, failed, sense);

To avoid confusion, I made the patch. Would have been easier to do in
the first place it seems :)

===== drivers/ide/ide-cd.c 1.35 vs edited =====
--- 1.35/drivers/ide/ide-cd.c Thu Nov 21 22:56:59 2002
+++ edited/drivers/ide/ide-cd.c Fri Jan 24 10:25:53 2003
@@ -649,6 +649,8 @@
struct cdrom_info *info = drive->driver_data;
void *sense = &info->sense_data;

+ if (failed && blk_pc_request(failed))
+ printk("%s: failed, sense %p, len=%d\n", __FUNCTION__, failed->sense, failed->sense_len);
if (failed && failed->sense)
sense = failed->sense;


-- 
Jens Axboe

- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/