2007-11-09 18:55:25

by Bernd Strieder

[permalink] [raw]
Subject: x86_64 SATA DVD drive + libata trouble

Hello,

please CC me, I'm not subscribed.

If any kernel developer is interested in more specific information
please mail me, I can build kernels, I can apply patches, though
have not done it regularly.

I'd like to get the DVD drive working somehow. I have googled a lot
and did not find any more ideas what to do. Some good keywords to
find a solution would suffice at that end.

Rough problem description:

I have a Tyan mainboard with NVIDIA chipset CK804. The only
SATA/IDE device is a SATA DVD combo, the harddisks are on a RAID
controller from 3ware. The harddisks are fine.

The openSuSE 10.3 boot dvds fail after booting from the BIOS, the
installation kernel cannot use the DVD drive. That kernel uses
libata and sata_nv pata_amd as drivers. The drive is recognized
but it cannot be used. This is the situation probably during
install from DVD and now in the running system after a network
install it persists.

Reading from the dvd device /dev/sr0 with dd stops after at most
119kb of rubbish read. Mounting fails with superblock not found.
When trying to remove the pata_amd module I get an Oops. I tried to
remove the modules to have a chance to reload them with other
options (atapi_enable), but that did not help, even after
rebooting.

A vanilla 2.6.23.1 kernel behaves even less friendly, the dd
on /dev/sr0 causes a hard reset.

So there are clearly some problems with libata in this system.

I have failed switching away from libata getting the drive to be
recognized at all.


Thanks for any help,

Bernd Strieder



2007-11-09 19:06:14

by Alan

[permalink] [raw]
Subject: Re: x86_64 SATA DVD drive + libata trouble

> I have a Tyan mainboard with NVIDIA chipset CK804. The only
> SATA/IDE device is a SATA DVD combo, the harddisks are on a RAID
> controller from 3ware. The harddisks are fine.

Interesting. I have only one other report of this problem that resembles
yours. They also have a 3ware raid controller.

> installation kernel cannot use the DVD drive. That kernel uses
> libata and sata_nv pata_amd as drivers. The drive is recognized

These are the correct drivers.

> A vanilla 2.6.23.1 kernel behaves even less friendly, the dd
> on /dev/sr0 causes a hard reset.

A dmesg and further info would be useful here. Also knowing how much
memory your system has and whether it passes memtest86.

> So there are clearly some problems with libata in this system.

CK804 is known to work reliably. That means we are looking for something
thats "different" about your system - perhaps the devices, the amount of
memory etc.

Alan

2007-11-10 19:14:52

by Robert Hancock

[permalink] [raw]
Subject: Re: x86_64 SATA DVD drive + libata trouble

Bernd Strieder wrote:
> Hello,
>
> please CC me, I'm not subscribed.
>
> If any kernel developer is interested in more specific information
> please mail me, I can build kernels, I can apply patches, though
> have not done it regularly.
>
> I'd like to get the DVD drive working somehow. I have googled a lot
> and did not find any more ideas what to do. Some good keywords to
> find a solution would suffice at that end.
>
> Rough problem description:
>
> I have a Tyan mainboard with NVIDIA chipset CK804. The only
> SATA/IDE device is a SATA DVD combo, the harddisks are on a RAID
> controller from 3ware. The harddisks are fine.
>
> The openSuSE 10.3 boot dvds fail after booting from the BIOS, the
> installation kernel cannot use the DVD drive. That kernel uses
> libata and sata_nv pata_amd as drivers. The drive is recognized
> but it cannot be used. This is the situation probably during
> install from DVD and now in the running system after a network
> install it persists.
>
> Reading from the dvd device /dev/sr0 with dd stops after at most
> 119kb of rubbish read. Mounting fails with superblock not found.
> When trying to remove the pata_amd module I get an Oops. I tried to
> remove the modules to have a chance to reload them with other
> options (atapi_enable), but that did not help, even after
> rebooting.
>
> A vanilla 2.6.23.1 kernel behaves even less friendly, the dd
> on /dev/sr0 causes a hard reset.
>
> So there are clearly some problems with libata in this system.
>
> I have failed switching away from libata getting the drive to be
> recognized at all.

There is a known problem with ATAPI devices on CK804 chipsets which have
memory above the 4GB mark, being debugged here:

https://bugzilla.redhat.com/show_bug.cgi?id=351451

If you are running into that one you can workaround it for now by
passing the adma=0 parameter to the sata_nv module (not sure how this
would be done on Suse's setup) or pass sata_nv.adma=0 on the kernel
command line if sata_nv is built into the kernel. If that does help, I
could ask you to test patches :-)

--
Robert Hancock Saskatoon, SK, Canada
To email, remove "nospam" from [email protected]
Home Page: http://www.roberthancock.com/

2007-11-12 16:52:35

by Bernd Strieder

[permalink] [raw]
Subject: Re: x86_64 SATA DVD drive + libata trouble

Hello,

> > I have a Tyan mainboard with NVIDIA chipset CK804. The only
> > SATA/IDE device is a SATA DVD combo, the harddisks are on a
> > RAID controller from 3ware. The harddisks are fine.

> A dmesg and further info would be useful here. Also knowing how
> much memory your system has and whether it passes memtest86.

It has 8GB RAM and passes memtest86, I had one run.

>
> > So there are clearly some problems with libata in this system.
>
> CK804 is known to work reliably. That means we are looking for
> something thats "different" about your system - perhaps the
> devices, the amount of memory etc.

I managed to get it running with the SuSE kernel when passing
adma=0 to sata_nv module, and I managed to get it running when
passing mem=2000M to the SuSE kernel. Thanks to Robert for those
hints.

The vanilla kernels I tried 2.6.23.1 and 2.6.24-rc1-git10 (with
patch to sata_nv.c from Robert Hancock see
https://bugzilla.redhat.com/show_bug.cgi?id=351451) seem to be
very sensitive in this area. Whenever I got them to oops, I did
not have much time to get anything read on the screen.

I managed under the patched 2.6.24-rc1-git10 to manually load
sata_nv and sr_mod, and then I got an OOps like

Unable to handle ... NULL pointer dref at 0000000000000000 RIP
ffffff880edf6a
.....
libata:ata_qc_prep + 0xe2/0x15b
.....
srmod:sr_probe

I have attached 3 dmesg outputs with the openSuSE 10.3 kernel and
extracts of /var/log/messages, especially some Oopses. The oopses
from the vanilla kernels seem to be so bad that they do never end
up in a file.

I will do some more tests as soon as possible. I have attached the
files as I created them, you will have to diff the single files,
anyway, to get the important information out, I cannot select for
you.

Bernd Strieder



Attachments:
(No filename) (1.76 kB)
cdrominfo.openSuSE2.6.22.5-31-default (432.00 B)
dmesg.openSuSE2.6.22.5-31-default-2000M (40.47 kB)
cdrominfo.openSuSE2.6.22.5-31-default-2000M (433.00 B)
dmesg.openSuSE2.6.22.5-31-default-adma0 (42.01 kB)
cdrominfo.openSuSE2.6.22.5-31-default-adma0 (433.00 B)
kernelmess (33.49 kB)
dmesg.openSuSE2.6.22.5-31-default (42.16 kB)
Download all attachments

2007-11-12 17:38:32

by Robert Hancock

[permalink] [raw]
Subject: Re: x86_64 SATA DVD drive + libata trouble

Bernd Strieder wrote:
> I managed to get it running with the SuSE kernel when passing
> adma=0 to sata_nv module, and I managed to get it running when
> passing mem=2000M to the SuSE kernel. Thanks to Robert for those
> hints.
>
> The vanilla kernels I tried 2.6.23.1 and 2.6.24-rc1-git10 (with
> patch to sata_nv.c from Robert Hancock see
> https://bugzilla.redhat.com/show_bug.cgi?id=351451) seem to be
> very sensitive in this area. Whenever I got them to oops, I did
> not have much time to get anything read on the screen.
>
> I managed under the patched 2.6.24-rc1-git10 to manually load
> sata_nv and sr_mod, and then I got an OOps like
>
> Unable to handle ... NULL pointer dref at 0000000000000000 RIP
> ffffff880edf6a
> .....
> libata:ata_qc_prep + 0xe2/0x15b
> .....
> srmod:sr_probe

Which patch is this using, the original one from Nov. 2 or the updated
one from Nov. 10? The original one has a bug.

> I have attached 3 dmesg outputs with the openSuSE 10.3 kernel and
> extracts of /var/log/messages, especially some Oopses. The oopses
> from the vanilla kernels seem to be so bad that they do never end
> up in a file.
>
> I will do some more tests as soon as possible. I have attached the
> files as I created them, you will have to diff the single files,
> anyway, to get the important information out, I cannot select for
> you.


2007-11-12 18:08:47

by Bernd Strieder

[permalink] [raw]
Subject: Re: x86_64 SATA DVD drive + libata trouble

Hello,

sorry for the large amount of files in my last mail, which will be
outdated by this mail. Had I only read a little bit further on the
bugzilla page.

Robert Hancock wrote:
> There is a known problem with ATAPI devices on CK804 chipsets
> which have memory above the 4GB mark, being debugged here:
>
> https://bugzilla.redhat.com/show_bug.cgi?id=351451

There is a second patch on this bugzilla page which I did not see
in the first place.

https://bugzilla.redhat.com/attachment.cgi?id=254191

This patch gives me a working 2.6.24-rc1-git10 kernel WITH adma and
with the full 8GB of RAM. See the attached dmesg text file below.

>
> If you are running into that one you can workaround it for now
> by passing the adma=0 parameter to the sata_nv module (not sure
> how this would be done on Suse's setup) or pass sata_nv.adma=0
> on the kernel command line if sata_nv is built into the kernel.
> If that does help, I could ask you to test patches :-)

Obviously there is no need for more patches to get the drive
working. I will probably just use that working kernel after some
testing. And if I get to know that the patch gets upstream, then I
will probably use 2.6.24 when it is finished.

If there are more patches to test on this problem please let me
hear. Now I have a setup that makes testing a patch taking a lot
less time than before.

Thanks for the help,

Bernd Strieder


Attachments:
(No filename) (1.37 kB)
dmesg.2.6.24-rc1-git10-patch2Hancock-noadma=0 (22.83 kB)
Download all attachments