Re: readcd with 2.5 kernels and ide-cd

From: Andy Polyakov (appro@fy.chalmers.se)
Date: Thu May 29 2003 - 16:46:31 EST


> > Is there work going on to get readcd working with 2.5 kernels and
> > ide-cd (without ide-scsi)?
> >
> > strace readcd dev=/dev/dvd f=/dev/null
> > ...
> > ioctl(4, SNDCTL_TMR_TIMEBASE, 0xbfffedd8) = -1 ENOTTY (Inappropriate ioctl for device)
> > ...
> > ioctl(3, 0x2285, 0xbfffef9c) = -1 ENOTTY (Inappropriate ioctl for device)
>
> Something _very_ fishy is going on there.

Nothing fishy, nothing at all... It's as simple as
driver/block/scsi_ioctl.c doesn't accepts requestes larger than 64KB,
while readcd asks for 256KB.

> 0x2285 is the SG_IO ioctl.

sg_io returns EINVAL (line 163), but driver/block/ioctl.c transforms it
to ENOTTY (see last 8 lines).

> First call to it completes, second one returns -ENOTTY. Looks very much
> like some kernel bug, see the SNDCTL_TMR_TIMEBASE ioctl returning
> -ENOTTY in-between.

SNDCTL_TMR_TIMEBASE is actually TCGETS, originates in stdio and is not
relevant.

> I've seen this before (this very bug), but haven't chased it down.

It's not a bug, but implementation deficiency. Cheers. A.
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/