# DVD drive fails to read some DVD disks

## kukibl

Recently noticed that my DVD drive fails to read some DVDs. Problem occurs with most data DVDs, but with some other regular and double layer DVDs and all tested CDs works just fine. It starts spinning disk for a second then stops completely and so on - indefinitely.

First I thought it was bad medium or even hardware related, but then I loaded SystemRescueCD to RAM, put problematic medium into drive and it read them without any hassle. Obviously there is something wrong with my Gentoo's configuration.

Some information:

```

ata4.00: ATAPI: TSSTcorp CDDVDW TS-L633L, 0400, max UDMA/100

scsi 3:0:0:0: CD-ROM            TSSTcorp CDDVDW TS-L633L  0400 PQ: 0 ANSI: 5

```

```

Portage 2.1.8.3 (default/linux/amd64/10.0/desktop, gcc-4.4.3, glibc-2.10.1-r1, 2.6.32-zen7 x86_64)

=================================================================

System uname: Linux-2.6.32-zen7-x86_64-AMD_Turion-tm-_X2_Dual-Core_Mobile_RM-70-with-gentoo-2.0.1

Timestamp of tree: Tue, 22 Jun 2010 17:15:03 +0000

app-shells/bash:     4.0_p37

dev-java/java-config: 2.1.10

dev-lang/python:     2.6.5-r2, 3.1.2-r3

dev-util/cmake:      2.6.4-r3

sys-apps/baselayout: 2.0.1

sys-apps/openrc:     0.6.1-r1

sys-apps/sandbox:    1.6-r2

sys-devel/autoconf:  2.13, 2.65

sys-devel/automake:  1.9.6-r3, 1.10.3, 1.11.1

sys-devel/binutils:  2.20.1-r1

sys-devel/gcc:       4.4.3-r2

sys-devel/gcc-config: 1.4.1

sys-devel/libtool:   2.2.6b

virtual/os-headers:  2.6.30-r1

ACCEPT_KEYWORDS="amd64"

ACCEPT_LICENSE="*"

CBUILD="x86_64-pc-linux-gnu"

CFLAGS="-march=native -O2 -pipe"

CHOST="x86_64-pc-linux-gnu"

CONFIG_PROTECT="/etc /usr/share/X11/xkb /usr/share/config"

CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/env.d/java/ /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/revdep-rebuild /etc/sandbox.d /etc/terminfo"

CXXFLAGS="-march=native -O2 -pipe"

DISTDIR="/home/distfiles"

FEATURES="assume-digests distlocks fixpackages news parallel-fetch protect-owned sandbox sfperms strict unmerge-logs unmerge-orphans userfetch"                 

GENTOO_MIRRORS="http://gd.tuwien.ac.at/opsys/linux/gentoo/ http://gentoo.supp.name/ http://mirror.netcologne.de/gentoo/"                                        

LDFLAGS="-Wl,-O1"                                                               

MAKEOPTS="-j3"

PKGDIR="/usr/portage/packages"

PORTAGE_CONFIGROOT="/"

PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --stats --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages"

PORTAGE_TMPDIR="/var/tmp"

PORTDIR="/usr/portage"

PORTDIR_OVERLAY="/var/lib/layman/sunrise /var/lib/layman/belak /var/lib/layman/kde /var/lib/layman/gentoo-quebec /usr/local/portage"

SYNC="rsync://rsync.de.gentoo.org/gentoo-portage"

USE="3dnow 3dnowext X a52 aac acl acpi alsa amd64 bash-completion berkdb bluetooth branding bzip2 cairo cdda cddb cdr cli consolekit cracklib crypt css cups cxx dbus dirac dri dts dvd dvdr emboss encode exif fam ffmpeg firefox flac fontconfig fortran gdbm gif gnutls gpm hal iconv id3tag jpeg kde lame lcms ldap lm_sensors lzma lzo mad matroska mikmod mmx mmxext mng modules mp3 mp4 mpeg mplayer mudflap multilib ncurses networkmanager nls nptl nptlonly offensive ogg opengl openmp pam pango pcre pdf perl png ppds pppd python qt3support qt4 quicktime readline reflection schroedinger sdl session spell spl sse sse2 ssl startup-notification stream svg sysfs taglib tcpd theora threads tiff truetype unicode usb v4l2 vcd vim-syntax vorbis wifi x264 xcb xft xine xinerama xml xorg xulrunner xv xvid zlib" ALSA_CARDS="ali5451 als4000 atiixp atiixp-modem bt87x ca0106 cmipci emu10k1x ens1370 ens1371 es1938 es1968 fm801 hda-intel intel8x0 intel8x0m maestro3 trident usb-audio via82xx via82xx-modem ymfpci" ALSA_PCM_PLUGINS="adpcm alaw asym copy dmix dshare dsnoop empty extplug file hooks iec958 ioplug ladspa lfloat linear meter mmap_emul mulaw multi null plug rate route share shm softvol" APACHE2_MODULES="actions alias auth_basic authn_alias authn_anon authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache dav dav_fs dav_lock deflate dir disk_cache env expires ext_filter file_cache filter headers include info log_config logio mem_cache mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias" ELIBC="glibc" INPUT_DEVICES="evdev synaptics" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" RUBY_TARGETS="ruby18" USERLAND="GNU" VIDEO_CARDS="radeon" XTABLES_ADDONS="quota2 psd pknock lscan length2 ipv4options ipset ipp2p iface geoip fuzzy condition tee tarpit sysrq steal rawnat logmark ipmark dhcpmac delude chaos account" 

Unset:  CPPFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, FFLAGS, INSTALL_MASK, LANG, LC_ALL, LINGUAS, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS
```

Kernel config:

http://pastebin.com/9HN4SLY3

When I try to mount it manually it reports that /dev/sr0 unknown device. Logs contain nothing on this topic.

I have this configuration (including kernel) for months and I don't use much optical mediums, so can't tell what could possibly cause this problem.

Any suggestion is welcome.

Thanks.

Alex

----------

## BradN

The only suggestion I can think of is trying the old IDE drivers instead of the newer PATA drivers if possible for your IDE chipset.

----------

## cach0rr0

possible to post your lspci -n output?

I ask, as I notice you have both ATA_PIIX and PATA_ATIIXP

I would wager one of these is superfluous, but can't really make any suggestions unless I know for certain.

You might also post your lspci -k so we can see what it's using currently - do this one from both sysresccd AND your regular system so we can compare.

----------

## kukibl

Thank you both for your answers. I did lspci -k on both systems, made comparision and implemented all differences to my current kernel (including removal of ATA_PIIX), recompiled it but the problem remains.

Required information below:

```

#lspci -n

00:00.0 0600: 1022:9600

00:01.0 0604: 103c:9602

00:04.0 0604: 1022:9604

00:05.0 0604: 1022:9605

00:06.0 0604: 1022:9606

00:07.0 0604: 1022:9607

00:11.0 0106: 1002:4391

00:12.0 0c03: 1002:4397

00:12.1 0c03: 1002:4398

00:12.2 0c03: 1002:4396

00:13.0 0c03: 1002:4397

00:13.1 0c03: 1002:4398

00:13.2 0c03: 1002:4396

00:14.0 0c05: 1002:4385 (rev 3a)

00:14.1 0101: 1002:439c

00:14.2 0403: 1002:4383

00:14.3 0601: 1002:439d

00:14.4 0604: 1002:4384

00:18.0 0600: 1022:1300 (rev 40)

00:18.1 0600: 1022:1301

00:18.2 0600: 1022:1302

00:18.3 0600: 1022:1303

00:18.4 0600: 1022:1304

01:05.0 0300: 1002:9612

01:05.1 0403: 1002:960f

08:00.0 0880: 197b:2382

08:00.2 0805: 197b:2381

08:00.3 0880: 197b:2383

08:00.4 0880: 197b:2384

09:00.0 0280: 168c:002a (rev 01)

0a:00.0 0200: 10ec:8136 (rev 02)

```

lspci -k on SysRescCD:

http://pastebin.com/YvvnQmvW

lspci -k on my Gentoo:

http://pastebin.com/Gt5De7GS

Differences before kernel recompilation: SysRescCD loaded amd64_edac_mod and shpchp modules, the rest was the same except my Gentoo kernel contains PATA_ATIIXP built-in, while SysRescCD loads it as module.

Edit:

Current kernel .config:

http://pastebin.com/0aamtdvH

----------

## DeepBass909

Do you get an error in your dmesg?

I've also got a problem reading certain cd's (to be precise audio-cd's) and my system seems to use the same chipset.

So far, only audio-cd's are giving me trouble. When I load a cd, I get the following error in my dmesg-output:

 *Quote:*   

> Jun 22 21:08:07 roodhaar kernel: sr 4:0:0:0: [sr0] Result: hostbyte=0x00 driverbyte=0x08
> 
> Jun 22 21:08:07 roodhaar kernel: sr 4:0:0:0: [sr0] Sense Key : 0x5 [current] 
> 
> Jun 22 21:08:07 roodhaar kernel: sr 4:0:0:0: [sr0] ASC=0x64 ASCQ=0x0
> ...

 

----------

## kukibl

No, unfortunately logs do not contain anything relevant to this problem, including dmesg and metalog's files. Thank you anyway, DeepBass909. 

What is worse, now it even fails with some data CDs... Tried using different kernel, but problem remains. 

Maybe I should try with old IDE drivers, as BradN suggested? But I don't get it - how come it works just fine with new drivers with SysRescue and same kernel version - 2.6.32?

----------

## cach0rr0

it may well be possible that additional arguments are passed during module load when sysrescuecd loads pata_atiixp

which ones? no clue. I don't even know if there *are* arguments to pass. The problem though, if you were to do yours as a module,  you'd need an initramfs to load the module in early userspace, as otherwise your shit won't boot. 

I see that you've removed ATA_PIIX as well, to no avail. Hate to say I'm out of ideas, and don't recommend the initramfs+module route.

----------

## s_bernstein

Your drive is dying. The laser for reading DVD's is busted and so the drive starts trying to read the inserted disc, can't read anything and switch to laser for cd. Starts over, can't read anything because it is a DVD and resets. Get a new drive and your happy again.

----------

## BradN

That was my initial thought too.  Drive repeatedly spinning up and down sounds like what a lot of them do when the laser/optics/detector have problems.  An old rio volt mp3/cd player I had would actually start to spin the disc backwards at times when it couldn't read it, but that's just crazy weird firmware programming.

But... this has apparently been ruled out.

 *Quote:*   

> First I thought it was bad medium or even hardware related, but then I loaded SystemRescueCD to RAM, put problematic medium into drive and it read them without any hassle. Obviously there is something wrong with my Gentoo's configuration. 

 

----------

## kukibl

 *s_bernstein wrote:*   

> Your drive is dying. The laser for reading DVD's is busted and so the drive starts trying to read the inserted disc, can't read anything and switch to laser for cd. Starts over, can't read anything because it is a DVD and resets. Get a new drive and your happy again.

 

Actually, you are right. I decided to test throughly problematic disks in SystemRescue and now it manages to read some, but most of them failed with same symptoms as on my Gentoo (even the ones it managed to read previously). So in the end, it is - hardware problem.  :Sad:  Somehow it manages to randomly read some, but for the rest it fails.

Dmesg shows nothing with problematic DVD disks, but this is output for one CD:

On my Gentoo:

```

[  423.349713] sr 3:0:0:0: [sr0] Unhandled sense code

[  423.349726] sr 3:0:0:0: [sr0] Result: hostbyte=0x00 driverbyte=0x08

[  423.349740] sr 3:0:0:0: [sr0] Sense Key : 0x4 [current] 

[  423.349756] sr 3:0:0:0: [sr0] ASC=0x3e ASCQ=0x2

[  423.349768] sr 3:0:0:0: [sr0] CDB: cdb[0]=0x28: 28 00 00 00 70 b6 00 00 02 00

[  423.349797] end_request: I/O error, dev sr0, sector 115416

[  423.349810] Buffer I/O error on device sr0, logical block 14427

```

On SystemRescue CD:

```

[  259.273046] sr 5:0:0:0: [sr0] Unhandled sense code

[  259.273051] sr 5:0:0:0: [sr0] Result: hostbyte=DID_OK driverbyte=DRIVER_SENSE

[  259.273055] sr 5:0:0:0: [sr0] Sense Key : Hardware Error [current] 

[  259.273060] sr 5:0:0:0: [sr0] Add. Sense: Timeout on logical unit

[  259.273067] sr 5:0:0:0: [sr0] CDB: Read(10): 28 00 00 00 70 b6 00 00 02 00

[  259.273077] end_request: I/O error, dev sr0, sector 115416

[  259.273081] Buffer I/O error on device sr0, logical block 14427

```

Since this is laptop and my only machine, I'll probably get external DVD drive. Also, warranty expired 3 months ago, so it is my only option...

Thank you guys for your answers.

----------

## BradN

Damn, I spoke too soon I guess.

If this is a tray style laptop drive, it would be easy to try cleaning the lens, you could give that a shot first just in case.

----------

## s_bernstein

Cleaning probably won't help, at least not for long. 

The laser for DVD is failing and doing so results in 

 A constantly fading output power of the laser, so the signal/noise ratio is getting worse by the minute

 Warming up the drive / laser system (like by reading a complete CD with the other laser) will rebuild some of the lost power for a short moment (I don't know why, it's just my experience)

 Discs may have a diffent ratio of reflecting the laser so some disc may be readable for a little while longer than others

 Trying to fix or use a failing drive is not worth the hassle given the cheap replacement drives

btw: even if your warranty ended 3 month ago trying to get a replacement from the vendor might be succesful. This, of course, would be absolutely volentary by the vendor. But I have good memories on getting a failed TFT-panel replaced by IBM/Lenovo without charge a year after warranty has ended. Although they declared the broken one fully operable and send back the laptop as "nothing to repair", they obviously replaced the panel.

----------

## kukibl

I will try to get it clean, but as I already wrote - I'll buy external DVD drive as long term solution.

I'll try contacting shop where I bought this laptop, but I highly doubt that my complaint will be successful. No need to bother you with details...

Thank you once again.

----------

