[Paranoia] sg_write kernel logging flood

xiphmont at xiph.org xiphmont at xiph.org
Mon Jul 9 19:35:29 PDT 2007

On 7/8/07, Douglas Gilbert <dgilbert at interlog.com> wrote:
> This warning was added to the sg driver (not by me) to
> annoy the crap out of maintainers (and users) of apps that:
>    1) continue to use the sg version 2 or earlier interface, and
>    2) use the old interface in a slightly ambiguous way

When the old interface arbitrarily got something wrong, it was
necessary to end run around it in hacky ways.

Eg, the old interface (actually, lower layers) will often abort DMA
early with no error message and hand back a buffer half full of
garbage and claim successful completion.  The only way to get around
that is to force-fill the transfer buffer with a known pattern first
by abusing the transfer direction flag.  This is not 'ambiguous'.
This is 'I'm forced to do absurd things to get simple transfers to
work reliably'.  The interface authors and I agreed at the time this
should be as upported behavior because it was way easier than fixing
the rest of the kernel. Welcome to Linux.  Here's a party hat and some

<flame target="not dgilbert">

If some new maintainer decided that this was 'not cool' I hope they
also bothered to implement DMA completion status reporting.
Otherwise, whining about it in their
Livejournal^H^H^H^H^H^H^H^H^Hkernel log is not going to solve the
original problem of unreliable transfers.

I'll note that brand spanking new SGIO *also* allows prefill of a DMA
transfer buffer for exactly the reason I state above: Last I looked,
most drivers are swallowing DMA errors and never reporting.  So I'm
guessing SG3 is also still broken this way, and someone needs to go
remove the idiot 'waaaah!  Stop touching me!' kernel log message.

Or we could all just buy Macs.  I hear they can do simple transfers
from CDROM pretty well.


> March 23, 2001 ???

There's a new release that's on hold because it turns out using SGIO
on SATA cdrom drives is a good way to panic the kernel.  I should
release it anyway as 'incentive' for the kernel maintainers to 'fix'
their 'code'.

If you don't have a SATA cdrom, the cdparanoia10pre in SVN is fully up
to date with the latest kernel interfaces in that it will prefer SGIO
over SG.  If you force it to use SG, you will still get the whiny
kernel log messages because the kernel log message is ill considered.


More information about the Paranoia mailing list