Liggy/Dee: ? on "R/W Error Recovery" mode page



I need help! (Youse guys don’t like PMs, so here it is).

Question: is it possible to programatically reduce the amount of time that a drive (in my case an NEC 4550A, running 1.X7) spends trying to read sectors with errors (specifically L-EC UEs)?

After digging out the MMC-3 docs, I’ve tried quite a few things- set the “RRC” (Read Retry Count) to “1” and “0”, changed the Linux “sr” driver to send READ_12 (vs. READ_10) commands with the “Streaming” bit set in CDB[10], and tried the “RC” (Read Continuous) bit in the Error Recovery mode page (which was only settable in my DVR-105 drive).

None of those approaches worked. I have modified the underlying user-space library to ignore the read error on an -EIO returned from the driver (and just skip forward, returning garbage data (which won’t be used anyway)), and I was able to … recover … the DVD in question reliably, but because of the number of bad sectors (wait- gotta sneeze - aa aa aaa aa AAARCCOOOS! - whew - excuse me!) it took some 10 hrs, and I’d like to avoid that. Nothing seemed to reduce the amount of time the drive spent sawing on those sectors.

Any hints? The MMC-3 docs seems to describe many “real-time read” options (and it’s my understanding a popular Windows program is able to do this reliably) but none of 'em seem to work- did I miss a setting somewhere?


Sorry, but I don’t think Dee or I can help you with this one. Not sure if any of our other members have an idea about this.


OK. I’d thought that perhaps in the course of examining CDBs and perusing the MMC docs (both, I’m assuming, youse guys would have done to do the flasher/dumper programs) that some of this would sound familiar. Thanks, I’ll keep digging.

(Oh, and to be clear- your inability to answer has nothing to do with the eventual application of this technology, right? In any case, it’s all for private use only.)


I don’t think Dee knows much about MMC stuff, but you won’t find the commands for flashing there anyway. These are vendor specific commands and I haven’t seen a documentation for them.


Well, I’ve found a little more information:

1- Even the Windows guys, it appears, don’t tell the drives themselves to do anything, they just scratch it out too, with only software retries disabled, explicit lseek(2)s and garbage sector data

2 - in the course of trying out a DVD-ROM drive for this I found out they give up faster on L-EC sectors, plus at $40 I won’t cry when the seek arm bits the shed waaay before it should

3 - I’m still a bit disappointed that despite some 30 pages of content in the various docs about this, it (a) doesn’t work as expected or (b) I’m totally missing it- either way, it blows :slight_smile:


Looks like “RRC” set to “1”, and “DCR” and “PER” turned on in that mode page on a Sony DVD-ROM (specifically the DDU-1632 (AKA Plexstor PX-130A) does the trick.