Re: 2.6.19-rc3 system freezes when ripping with cdparanoia at ioctl(SG_IO)

From: Monty Montgomery
Date: Tue Nov 14 2006 - 17:52:32 EST


On 11/11/06, Luben Tuikov <ltuikov@xxxxxxxxx> wrote:
--- Christoph Hellwig <hch@xxxxxxxxxxxxx> wrote:
> On Fri, Nov 10, 2006 at 12:08:15PM -0800, Luben Tuikov wrote:
> > P.S. I'd love to see SG_DXFER_TO_FROM_DEV completely ripped out
> > of sg.c, for obvious reasons. Can you not duplicate the resid "fix"
> > it provides into "FROM_DEV" -- do apps really rely on it?
>
> At the beginning of this thread it was mentioned cdparanio uses it.
> But in general we can't just rip out userland interfaces, we pretend
> to have a stable userspace abi (and except for the big sysfs mess that
> actually comes very close to the truth).

The more reason to think things thorougly when introducing
new code and architecture into a kernel.

It was introduced for a good reason, and that reason is still relevant
today. Cdparanoia is not using it gratuitously. The only problem is
that the implementation had a bug (well, at least two bugs) and only
sg ever implemented it correctly. Had block and sata implemente dit
correctly, we'd not be having this discussion.

Or you can blame a lower level layer for having no way to inform
mid-level drivers that DMA only completed a partial transfer.

"but anyway"...

This lockup was happening using SATA through the block layer, or does
SATA implement its own version of the ioctl? Back when I was testing
my probing code, the buggy kernel would reject the request, not lock
up-- did a change make it inot 2.6.18 or later that causes a lockup
instead?

(I never tested with SATA cdroms, as I don't have any. I tested with
IDE and SCSI and saw correct or detectable behavior)

Monty
-
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/