Re: sg_write kernel logging flood
[email protected] Mon, 9 Jul 2007 22:35:29 -0400
| Newsgroups | gmane.comp.audio.cd-paranoia.general |
|---|---|
| Message-ID | <[email protected]> |
On 7/8/07, Douglas Gilbert <[email protected]> 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 Chlorpram. <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. </flame> > 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. Cheers, Monty