LinuxQuestions.org

LinuxQuestions.org (/questions/)
-   Linux - Newbie (https://www.linuxquestions.org/questions/linux-newbie-8/)
-   -   hdparm "useless" WD Caviar SATA (WD1600JD-00HBB0) + SiL3112A (HD stucked to UDMA100) (https://www.linuxquestions.org/questions/linux-newbie-8/hdparm-useless-wd-caviar-sata-wd1600jd-00hbb0-sil3112a-hd-stucked-to-udma100-290393/)

Emmanuel_uk 02-15-2005 01:29 AM

hdparm "useless" WD Caviar SATA (WD1600JD-00HBB0) + SiL3112A (HD stucked to UDMA100)
 
Hello

edit added 22/05/06: There is quite a lot in this thread.
Here is some more info that a member pointed to me
Quote:

Hdparm doesn't work with scsi; try Dougls Gilberts sdparm from http://www.torque.net/sg/sdparm.html, which also has pointers to his sg-utils, for more fun with scsi/sata stuff. Not everything in hdparm is supported in sdparm though
About compiling only one kernel module, you could look into this syntx (example with reiserfs)
make fs/reiserfs/resiserfs.ko
make SUBDIRS=fs/reiserfs" which does produce a .ko file.
But even shorter is to do a "make M=fs/reiserfs", which also works.
taken from http://www.uwsg.iu.edu/hypermail/lin...08.2/0698.html

-- end edit --------

Is it normal my pata drive gives 5.8 to 6.5 Mb/s in random write (tiobenchmark) when the sata drive is just about making 3.8 Mb/s? (But for linear write, the sata is faster.) So does anybody know how to switch a sata drive from
UDMA/100 to UDMA/133 when hdparm does not work with the drive?

Below follows
- config
- dmesg
- Section I for reported data
- Section II about useless hdparm
- Section III system messages and info


160 GB WD Caviar SATA 7200 rpm 8 Mo cache model: WD1600JD-00HBB0
(Disabled Spread Spectrum Clocking on the Western digital HD)
1 pata Hitachi 80 Mo (UDMA6 mode activated) 2Mo cache 7200 rpm HDS728080PLAT20
Mobo A7N8X-E deluxe with Sil3112A version 02 (see signature)
Mandrake 10.1 CE 2.6.8.1 kernel
libata version 1.02 sata_sil version 0.54


Dmesg gives(see below).
ata1: SATA max UDMA/100 cmd 0xE094B080 ctl 0xE094B08A bmdma 0xE094B000 irq 11
ata1: dev 0 cfg 49:2f00 82:346b 83:7f61 84:4003 85:3469 86:3c41 87:4003 88:207f
ata1: dev 0 ATA, max UDMA/133, 312581808 sectors: lba48
ata1: dev 0 configured for UDMA/100

I) What works + data (preliminary)

I've read hdparm -tT is only a crude indication. On my pc it was purely wrong.
I use tiobench-0.3.3 (have downloaded bonnie as well, but no experience with it).

SATA # ./tiobench-0.3.3/tiotest -f 25 -d /hdsata11/test
Tiotest results for 4 concurrent io threads on SATA
,----------------------------------------------------------------------.
| Item | Time | Rate | Usr CPU | Sys CPU |
+-----------------------+----------+--------------+----------+---------+
| Write 100 MBs | 2.8 s |40 to 43 MB/s | 0.7 % | ~ 23.6 % |
| Random Write 16 MBs | 4.2 s |3.6 to 3.8 typical MB/s | 1.9 % |
| Read 100 MBs | 0.3 s | 100 to 350 MB/s depends on CPU usage
| Random Read 16 MBs | 0.0 s | 100 to 350 MB/s depends on CPU usage
`----------------------------------------------------------------------'

PATA # ./tiobench-0.3.3/tiotest -f 25
Tiotest results for 4 concurrent io threads on pata
Typically
| Write 100 MBs | 3.7 s | 27 to 30 MB/s | 0.5 % | 16.0 % |
| Random Write 16 MBs | 2.7 s |5.8 to 6.5 MB/s | 0.0 % | 3.0 % |

About the pata HD configuration:
multcount = 16 (on)
IO_support = 1 (32-bit)
unmaskirq = 1 (on)
using_dma6 = 1 (on)


II) What did not work (and useless hdparm)

Originally I could get only 1 Mb/s on the SATA hd while copying a 200 Mo file
with konqueror. Information from hdparm at 56 Mo/s was untrue.

The fstab line was of this kind (as inserted from drakdisk) and/or
after some reboots and issues with the journalising/superblocks
/dev/sda1 /mnt/hd auto umask=0022,user,iocharset=iso8859-15,sync,kudzu,codepage=850,noauto,exec,users 1 2

This was causing two problems:
i) very slow drive
ii) boot would stop because of a superblock or journal check error.
Warning to any newbee, this meant that one starts with a terminal only!
I needed to use vim and edit /etc/fstab and comment out the device or change 1 2 to 1 0
to disable the journal checking. Simple enough

Knowing about hdparm I tried without success

#hdparm -iv /dev/sda
HDIO_GET_MULTCOUNT failed: Operation not supported
IO_support = 0 (default 16-bit)
readonly = 0 (off)
readahead = 256 (on)
geometry = 19457/255/63, sectors = 312581808, start = 0
HDIO_GET_IDENTITY failed: Operation not supported

# hdparm -X66 /dev/sda (same problem with X67 X68 X69 and X70)
/dev/sda:
setting xfermode to 66 (UltraDMA mode2)
HDIO_DRIVE_CMD(setxfermode) failed: Operation not supported

#hdparm -c1 -d1 /dev/sda
setting using_dma to 1 (on)
HDIO_SET_DMA failed: Operation not supported
setting 32-bit IO_support flag to 1
HDIO_SET_32BIT failed: Invalid argument
IO_support = 0 (default 16-bit)

The situation was dreadfull
compare
Copy via konqueror of a 200 Mo file pata HD to sata HD 4.4 Mo/s
Copy via konqueror of a 200 Mo file sata HD to same sata HD 3.3 Mo/s
(mounted via file:/mnt/hd for the device dev/sda1)
to
Copy via konqueror of a 200 Mo file pata HD to same pata HD ~13 Mo/s

Hdparm was trully unreliable because it was telling me the same
rate was achieved on the pata and sata when I could experience it
was not at all
# hdparm -tT /dev/sda
/dev/sda:
Timing buffer-cache reads: 1620 MB in 2.00 seconds = 808.91 MB/sec
BLKFLSBUF failed: Operation not supported
HDIO_DRIVE_CMD(null) (wait for flush complete) failed: Operation not supported
Timing buffered disk reads: 170 MB in 3.03 seconds = 56.15 MB/sec
BLKFLSBUF failed: Operation not supported
HDIO_DRIVE_CMD(null) (wait for flush complete) failed: Operation not supported

# hdparm -tT /dev/hda
Timing buffered disk reads: 174 MB in 3.02 seconds = 57.68 MB/sec

I eventually edited fstab manually with somehting looking like
/dev/sda1 /hdsata11 ext3 rw,noexec,nosuid,nodev,users, 0 0
I then obtained from Konqueror sata to sata
typically 16 Mb/s (14 to 18.9 Mb/s) while hdparm was still "stupid"

Regards

III) Sytem mesages (not relevant to all tests)


#dmesg | egrep -i --color 'ata|sil|scsi|raid'
hda: HDS728080PLAT20, ATA DISK drive
md: Autodetecting RAID arrays.
EXT3-fs: mounted filesystem with ordered data mode.
SCSI subsystem initialized
libata version 1.02 loaded.
sata_sil version 0.54
ata1: SATA max UDMA/100 cmd 0xE094B080 ctl 0xE094B08A bmdma 0xE094B000 irq 11
ata2: SATA max UDMA/100 cmd 0xE094B0C0 ctl 0xE094B0CA bmdma 0xE094B008 irq 11
ata1: dev 0 cfg 49:2f00 82:346b 83:7f61 84:4003 85:3469 86:3c41 87:4003 88:207f
ata1: dev 0 ATA, max UDMA/133, 312581808 sectors: lba48
ata1: dev 0 configured for UDMA/100 [line removed as same for ata2)
scsi0 : sata_sil
ata2: no device found (phy stat 00000000)
scsi1 : sata_sil
Vendor: ATA Model: WDC WD1600JD-00H Rev: 08.0
Type: Direct-Access ANSI SCSI revision: 05
SCSI device sda: 312581808 512-byte hdwr sectors (160042 MB)
SCSI device sda: drive cache: write back
SCSI device sda: drive cache: write back
/dev/scsi/host0/bus0/target0/lun0: p1
Attached scsi disk sda at scsi0, channel 0, id 0, lun 0
Attached scsi generic sg0 at scsi0, channel 0, id 0, lun 0, type 0

#fdisk -l
Disk /dev/sda: 160.0 GB, 160041885696 bytes
255 heads, 63 sectors/track, 19457 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Device Boot Start End Blocks Id System
/dev/sda1 * 1 19457 156288321 83 Linux

#lshw | grep -i -n8 sata
234- *-storage
235- description: RAID bus controller
236: product: SiI 3112 [SATALink/SATARaid] Serial ATA Controller
237- vendor: Silicon Image, Inc. (formerly CMD Technology Inc)
238- physical id: b
239- bus info: pci@01:0b.0
240- version: 02
241- clock: 66MHz
242- capabilities: storage bus_master cap_list
243: configuration: driver=sata_sil
244- resources: ioport:9400-9407 ioport:9800-9803 ioport:9c00-9c07 ioport:a000-a003 ioport:a400-a40f iomemory:e8404000-e84041ff irq:11
280- *-cdrom:0
281- description: DVD reader
282- product: SAMSUNG CDRW/DVD SM-352F
283- physical id: 0
284- bus info: ide@1.0
285- logical name: /dev/hdc
286- version: T902
287- capabilities: packet atapi cdrom removable nonmagnetic dma lba iordy audio cd-r cd-rw dvd
288- configuration: mode=udma2
289: *-scsi
290- physical id: 0
291: bus info: scsi@0
292: logical name: scsi0
293- capabilities: emulated
294- *-channel
295: description: SCSI Channel 0
296- physical id: 0
297: bus info: scsi@0.0
298- *-disk
299: description: SCSI Disk
300- product: WDC WD1600JD-00H
301- vendor: ATA
302- physical id: 0
303: bus info: scsi@0.0:0.0
304- logical name: /dev/dvd
305- version: 08.0
306- size: 30GB
307- configuration: ansiversion=5
308- *-cdrom:1

#lsmod
sd_mod 19232 0
sata_sil 5380 0
libata 38308 1 sata_sil
scsi_mod 104044 2 sd_mod,libata
ide-cd 37280 0
cdrom 37724 1 ide-cd



__________________
Happy to join the Linux community.
Kernel 2.6.8.1-10mdk
Asus A7N8X-E deluxe (Bios 1012), i686 AMD sempron 2400+ (overclocked from 1.6 GHz to 2.0 GHz, FSB speed inc from 160 to 200 MHz)
512 Mb, HD IDE ata100, Samsung SM-352F CDRW (firmware T902), dvd drive NEC ND-3500AG,
ATI radeon 9250, cheap linmodem based on intel 536EP family chipset number MD5628D-L-C (driver from intel)
(onboard sound is South bridge NVIDIA nForce2 MCP-T with Realk ALC 650 audio codec)

Dejv 02-15-2005 06:50 AM

Exactly same problem here...

My motherboard is EPoX 8RDA6+Pro, same SATA chipset, kernel vanilla 2.6.10, Gentoo Linux, WD 160GB SATA drive...

forevertheuni 02-20-2005 11:05 PM

hi my situation is even worst since 2.6.8.1 my libata just runs at 17MB for each disk in hdparm :( can you post you .config of the kernel? or are you using the mandrake's? if it's mandrakes it's too much Y and M in there!I searched in every place in the config menu and I still have the problem. I own a a7n8x-e deluxe.and using dmraid to do a SATA raid trough the sil_3112a. and then my RAId works at 20MBs and before 2.6.8.1 worked at 90/100MBs(hdparm readings)

Emmanuel_uk 02-21-2005 01:37 AM

To forevertheuni

Do you have western digital hard drives as well?

I am using Mandrake's kernel, but I am considering rebuilding a kernel.
(but I have never done this before)

I am using mdadm for the raid admin.
Maybe it is a software raid issue you have?
What does Dmesg | grep -i UDMA give you

My raid0 packed in yesterday afternoon. I am not sure whether
it is a hardware problem. The boot does not recognise sda and sdb anymore.
(I am not asking for help (yet))
Before the big problem above happened, the boot hanged up at different stages.
I managed once to rebuild the area and re-install the sil3112a driver,
but I had to use e2fsck to clean it.
I am planning to format the area again asap.
I have tried to re-install Mandrake using the "update" menu, but this failed
telling me there was an error in the perl program (line 301) that does the
libata/fiwerire/sil_3112a detection/installation of the driver.
I will now try to re-install Mandrake with the strip set disabled in the sil_3112a bios.
I have a bootable cd of knoppix, I could test the hardware that way

forevertheuni, how proficient are you with linux?
I am a beginner myself, but learning fast (forced to...:-)

I have found those 2 pieces of information about blacklist.
I wonder if they can help us in some ways?

PLease post your progress.

http://kerneltrap.org/node/2999

And somewhere else but not for WD drives:
<<Check the kernel mailing list, this is a known issue when Seagate SATA drives are coupled with a Silicon Image 3112/3114 controller.
What you need to do is add your drive model (ex: ST3200822AS) to the blacklist in sata_sil.c (<kernel source top dir>/drivers/scsi/sata_sil.c).
Look for the section with a listing of drives and MOD_15_QUIRK. Needless to say, this involves recompiling the sata_sil kernel module.>>

forevertheuni 02-21-2005 01:45 AM

it's 2 seagate 160Gb disks not WD sorry...I'm quite experienced in linux :p I still see sda and sdb with raid0 has you should if you are using the controller ..check this page with howto for 2.6 kernels ..in 2.4 it's already in kernel(the raid support)


WEBPAGE
Note that only the parts in setting up the initrd interest the gmraid thing is a CD distro that can use raids

forevertheuni 02-21-2005 01:48 AM

...but I don't have problem in 2.6.7 or previous kernels..that ..I don't understand...

Emmanuel_uk 02-21-2005 08:12 AM

Thanks for the link.
I boot from a pata HD, so I can try to modprobe sil_sata and/or reinstall the distro first
to get my raid back in place, or at least the individual drives (it used to work ok :-(
because for now fdisk -l lists only my pata
If I cannot come back to the previous stable situation I will add mdraid
Until then... well little I can contribute

From your problem + my problem, I cannot yet see yet how to progress this further.
Any information you want me to post from my system, let me know
(please incl the command line if you think it is beyond a simple lsmod or modprobe)
I do not know exactly how to give you the detail of the kernel config.

BTW, my pata has a history of having had linux installed on a old PIII motherboard,
and then I moved the HD into the ASUS, and partially updated the install
(It worked ok !!)

BIOS version for the sil3112a 2.4.27 for completness

forevertheuni 02-21-2005 08:44 AM

ok ...I guess you need to have a Y in the kernel conf in libata (not has module but embeeded) if you are going to put your system to the raid you need to cp -av /mnt/system /mnt/backup and after the raid created and the linux partitions created put everything where it belongs :) cp -av /mnt/backup /mnt/newsystem! you are using mandrake right?hmmm I don't thing it would be easy to install a new and clean mandrake in raid0 in slackware/sourcemage/gentoo/..../..../lots and lots could be possible! I'll try to search the firmware in silicon webpage :p

Emmanuel_uk 02-22-2005 01:53 AM

raid0 recovered - back in business
 
I recovered the raid and its data. The mandrake CD 10.1 CE install- upgrade option
took about 3 min. Strangely, the sil driver was installed only when booting from
cold, and I mean very cold (disconnected computer from main for 15 min),
otherwise cold & hot boot from the CD hanged on the sil detection step.

Before re-installing Mandrake, I also removed the stripped set from the bios of the silicon bios.
Once madrake was re-installed, mdadm was still able to run the "faikeraid" without
the bios stripped set (once I ran e2fsck on the ext3 filesystem). I have recovered my data.
That answered my own question as to why I could choose the chunksize
both in the bios and in mdadm.
http://www.linuxquestions.org/questi...hreadid=280193

forevertheuni, an off-topic question about your motherboard:

Have you noticed a random detection of the integrated sound card
on the asus A7N8X-E deluxe ? On my computer the alsa layer do not always detect
the sound card at boot or (irrespective of the type of boot - hot/cold).
But running /etc/rc.d/init.d/sound restart after the boot always solve the problem.
I am thinking of switching the order of the services.
Cloesely related, I found out when I was using the OSS layer that by editing sound.sh and
inserting a loop doing nothing in the middle of the script, I was always getting
sound [OK] mixer [OK]. Otherwise I was getting sound [OK] mixer [failed].
With the alsa layer, a delay did not really help, and the result was more random.
There is something weird about my hardware (I am trying to convince myself that
it is not an OS problem).
In the log there is something about calibration/delay for the sound card, cannot remember


Anyway back to the main problem, now
Hdparm not working with my HD
A suspected kernel version and sil311a incompatibility for you

Emmanuel_uk 02-22-2005 02:04 AM

drivers
 
I did some research before setting up my raid
I thought I would need drivers for the sil until I found out
the distro had one

I downloaded 3x12A_linux_rdvr-1.0.0.16-BUNDLE.zip 1.0.0.16
from the silicon website, but the driver is difficult to find there.
http://12.24.47.40/display/2/index.asp
Serial ATA > Controllers > SiI3112/3112A >
Alternatively
http://www.upgradeware.com/english/p...e/download.htm
Bu this is not an opend driver

But I never tried it because sata_sil was with my distro.
It does not mean it is the most up to date driver.
I understand since dec 2004 (need to check date) the sil3112a
has become an "open driver/spec"

forevertheuni 02-22-2005 05:04 AM

Re: drivers
 
Quote:

Originally posted by Emmanuel_uk
I did some research before setting up my raid
I thought I would need drivers for the sil until I found out
the distro had one

I downloaded 3x12A_linux_rdvr-1.0.0.16-BUNDLE.zip 1.0.0.16
from the silicon website, but the driver is difficult to find there.
http://12.24.47.40/display/2/index.asp
Serial ATA > Controllers > SiI3112/3112A >
Alternatively
http://www.upgradeware.com/english/p...e/download.htm
Bu this is not an opend driver

But I never tried it because sata_sil was with my distro.
It does not mean it is the most up to date driver.
I understand since dec 2004 (need to check date) the sil3112a
has become an "open driver/spec"


What is your kernel? 2.4 or 2.6? I forgot something when I said it would be hard to install on raid with mandrake..2.4 has the raid support since 2.4.18 since I'm not mistaken...but I use 2.6 since 2.6.0-test3. In 2.6 is not a module but a hotplug thing :p.
the silicon website probably has the support for 2.4.x with closed source drivers..in 2.4 tha'ts not needed there's medley raid that do the job:p

About the sound....no never had problem that's a distro situation...and...mandrake boot scrips are soooooo long that it's dificult to change...do your own script a more simple one... or install the alsa source code + their script(I think they have one)

Emmanuel_uk 02-22-2005 05:15 AM

Kernel in the first email: 2.6.8.1 Mdk

yes you are right raid support in 2.6 integrated via md in the kernel

but I use mdadm instead based on readings elsewhere recommending it

good to know you have no problem with the sound

forevertheuni 02-22-2005 05:24 AM

Quote:

Originally posted by Emmanuel_uk
Kernel in the first email: 2.6.8.1 Mdk

yes you are right raid support in 2.6 integrated via md in the kernel

but I use mdadm instead based on readings elsewhere recommending it

good to know you have no problem with the sound

the md support....it's by software in linux kernel...i'm talking about dmraid and device-mapper to use de sil3112a raid sets

Emmanuel_uk 02-22-2005 06:15 AM

software/hardware raid
 
Quote:

the md support....it's by software in linux kernel...i'm talking about dmraid and device-mapper to use de sil3112a raid sets
I thought that the sil3112a was mainly working as software raid (i.e the bios
was providing only very limited support, so there was no point bothering).
Is this correct?

If there is a chance that the area speeds up by using dmraid
and setting the raid set in the bios, I am willing to try to install dmraid & compare
this to your result with your current kernel
What do you reckon?

Any luck in finding a relevant source code to have our hard drives to be UDMA133?

forevertheuni 02-22-2005 07:11 AM

Re: software/hardware raid
 
Quote:

Originally posted by Emmanuel_uk
I thought that the sil3112a was mainly working as software raid (i.e the bios
was providing only very limited support, so there was no point bothering).
Is this correct?

If there is a chance that the area speeds up by using dmraid
and setting the raid set in the bios, I am willing to try to install dmraid & compare
this to your result with your current kernel
What do you reckon?

Any luck in finding a relevant source code to have our hard drives to be UDMA133?


UDMA133..blind to it also. I never tried software raid in these disk..I had it before in my PATA disks. Yes sil3112a is almost all software...but Bios can read it so..you can boot from it without a disk outside the software raid...If you want a windows or something like that in the RAID...it's probably a good idea to run the sil3112a raid.
The speed I think is going to be pretty similar

..hmm your mandrake kernel config...try to do ' gzip -cd /proc/config.gz > .config' and post the resulting file here so that I can check a few things.
Well if you don't have a windows or don't want to have a windows in RAID....stay that way... :) it saves you some trouble :)


All times are GMT -5. The time now is 02:46 AM.