Gisteren is dat door Mandrake bevestigd en heeft het softwarebedrijf een bijgewerkte kernel beschikbaar gesteld. Het probleem was dat de kernel een FLUSH_CACHE-commando naar de LG cd-romdrive stuurde waardoor de firmware van de speler overschreven werd. LG's cd-romspelers voldoen namelijk niet aan de ATAPI-specificatie. Daarin is vastgelegd dat het FLUSH_CACHE-commando alleen mag werken bij cd-rw- of dvd-rw-apparaten, en dat bij andere drives het commando een foutmelding terug moet geven. Dit gebeurt niet door de spelers, en in plaats daarvan wordt het FLUSH_CACHE-commando begrepen als UPLOAD_FIRMWARE. Een oplossing is inmiddels beschikbaar gesteld door Mandrake in de vorm van een nieuwe kernel: 2.4.22-21mdk. Aangeraden wordt echter om eerst de firmware van de cd-romspeler bij te werken en daarna pas Mandrake te updaten:
Mandrake Linux 9.2 Installation Notes: LG CD-ROM drives Errata
A problem has been discovered with certain LG-based CD-ROM drives and Mandrake Linux 9.2. The kernel that comes shipped with Mandrake Linux 9.2 and early updates would send a FLUSH_CACHE command to the drive which would make drive inoperable by overwriting its firmware. Unfortunately, many Dell computers (possibly others) come with these CD-ROM drives. Currently, it is not believed to affect DVD-ROM/R/RW drives and some CD-RW drives; but this all depends entirely upon the firmware on the device.
We are currently working with HP to determine which systems are affected by this. Dell is potentially providing LG-based CD-ROMs since the beginning of May 2002 in laptop, desktop, workstation, and server-class machines. HP and Compaq have been installing LG-based CD-ROM devices for three years, and Compaq have also re-branded some.
The problem was that the kernel would send a FLUSH_CACHE command to the LG CD-ROM drive which would make the drive inoperable by overwriting its firmware. This is because LG CD-ROM drives are not compliant with the ATAPI specification. The specification does not require an implementation of the FLUSH_CACHE command in the driver, and returning an error (or doing nothing) would have been the correct behaviour for the drive. Likewise, reusing a command is against the specification and LG has reused the FLUSH_CACHE command to modify the firmware of the drive, but they are unwilling to disclose exactly what the command does. This FLUSH_CACHE command is supposed to be supported only by CD-RW or DVD-RW devices; the LG-based CD-ROM devices are understanding this command as the UPLOAD_FIRMWARE command.
A new kernel (2.4.22-21mdk) has been released that fixes this problem in the kernel, although the CD-ROM devices are still not up to specification. New CDs and ISOs will be available shortly to correct these problems; they will come with the new kernel.
If an updated firmware for your CD-ROM is available from LG, you are encouraged to apply the firmware update prior to installing Mandrake Linux 9.2. Unfortunately, if the drive becomes inoperable, currently only the manufacturer is able to fix it.
To determine the make and model of the CD-ROM in your system, you can use dmesg to view the information. For instance, if your CD-ROM is /dev/hdc, you could use "dmesg|grep hdc" to see the make and model of CD-ROM in your computer. You can also use hdparm to view the details of your device, which should also indicate the firmware revision. For example, use hdparm -i /dev/hdc to obtain the information on the drive /dev/hdc (look for the "FwRev" string). This will allow you to determine if you have a problem drive prior to installing Mandrake 9.2.
It may also be possible to obtain the model and firmware revision from the BIOS during POST.
Under Windows, you can obtain this information via a third-party utility, such as Ner InfoTool.
Systems containing LG CD-ROMs that have this problem:
* COMPAQ CRD-8322B(CP1) (same model, but marked as LG; IBM Aptiva 2158-125)
* CRD-8400B (Dell Optiplex gx1)
* CRD-8400B (IBM PC 300 PL)
* CRD-8400B(mi)/CRD-8400C (COMPAQ)
* CRD-8402B/LG CRD-8480C (Dell XPS T650r)
* GCR-8481B (Dell Optiplex gx270; rom 1.06; date: Jun 2003)
* CRD-8482B (Dell Optiplex GX1)
* GOLDSTAR CDR-8482B (HP Vectra VL400; firmware 1.01)
* CRD-8482B (Dell Precision 220; rom 1.05)
* GCR-8523B (OEM in custom-built computer)
* GCC 4480B DVD/CD-R/RW/ROM (firmware 1.00; upgrading to 1.01 seems to workaround the problem)
* COMPAQ DRN8040B DVD/CD-ROM (Compaq M700 laptop)
Specific models that are affected:
* GRC-8521B
* CRD-8522B
* CRD-8521B
* CRD-8520B
* CRD-8483B
* CRD-8480C
* CRD-8480B
* CRD-8400C
* CRD-8400B
* CRD-8322B
* CRD-8320B
* CRD-8240B
* CRD-8241B
* CRD-8160B
* CRD-8161B
* CRN-8240E
* GCD-R580B
* GCD-R560B
* GCD-R542B
* GCD-R540C
* GCD-R540B
* GCD-R520B
* GCD-R420B
* GCD-R400B
* GCD-R320B
* GCD-R300B 4
* GCD-R200B
LG-based CD-ROMs reported to be unaffected:
* LG GMA-4020B DVD-RW
* LG GCC-4120B CD-RW/DVD
* LG CED-8080B DVD/CD-R/RW/ROM
* LG CED-8120B CD-RW
* HL-DT-ST GCC-4480B CD-RW/DVD (make sure you use firmware 1.01 not 1.00)
* HL-DT-ST GDR8186B DVD-ROM
* HL-DT-ST GCE-8240B CD-RW
* HL-DT-ST GCE-8481B CD-RW
* HL-DT-ST GCR-8520B CD-ROM
* HL-DT-ST GCE-8520B
* CRD-8322B
* CRD-8400B
* CRD-8400C
* CRD-8402B
* CRD-8480C
* GCR-8481B
* CRD-8482B
* GCC-4480B