FC4 - DMA on sda: HDIO_SET_DMA failed: Inappropriate ioctl for device
FedoraThis forum is for the discussion of the Fedora Project.
Notices
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
If you have any problems with the registration process or your account login, please contact us. If you need to reset your password, click here.
Having a problem logging in? Please visit this page to clear all LQ-related cookies.
Get a virtual cloud desktop with the Linux distro that you want in less than five minutes with Shells! With over 10 pre-installed distros to choose from, the worry-free installation life is here! Whether you are a digital nomad or just looking for flexibility, Shells can put your Linux machine on the device that you want to use.
Exclusive for LQ members, get up to 45% off per month. Click here for more info.
FC4 - DMA on sda: HDIO_SET_DMA failed: Inappropriate ioctl for device
Every time I use hard disc, especially when copying large files (.iso, zip or directories with many files), the CPU goes 100% under FC4. Is DMA not enabled perhaps?
I've tried:
Code:
# hdparm -d 1 /dev/sda
/dev/sda:
setting using_dma to 1 (on)
HDIO_SET_DMA failed: Inappropriate ioctl for device
My disk is SATA, MAXTOR 7Y250M0.
As I might thing that DMA is not enabled, when listing with "dmesg", at sda it says "Type: Direct-Access":
Code:
SCSI subsystem initialized
libata version 1.12 loaded.
ata_piix version 1.04
ACPI: PCI Interrupt 0000:00:1f.2[A] -> Link [LNKC] -> GSI 5 (level, low) -> IRQ 5
PCI: Setting latency timer of device 0000:00:1f.2 to 64
ata1: SATA max UDMA/133 cmd 0xC000 ctl 0xC402 bmdma 0xD000 irq 5
ata2: SATA max UDMA/133 cmd 0xC800 ctl 0xCC02 bmdma 0xD008 irq 5
ata1: dev 0 cfg 49:2f00 82:7869 83:7d09 84:4003 85:7869 86:3c01 87:4003 88:203f
ata1: dev 0 ATA, max UDMA/100, 488397168 sectors: lba48
ata1: dev 0 configured for UDMA/100
scsi0 : ata_piix
ATA: abnormal status 0x7F on port 0xC807
scsi1 : ata_piix
Vendor: ATA Model: Maxtor 7Y250M0 Rev: YAR5
Type: Direct-Access ANSI SCSI revision: 05
SCSI device sda: 488397168 512-byte hdwr sectors (250059 MB)
SCSI device sda: drive cache: write back
SCSI device sda: 488397168 512-byte hdwr sectors (250059 MB)
SCSI device sda: drive cache: write back
sda: sda1 sda2 < sda5 sda6 sda7 sda8 >
Attached scsi disk sda at scsi0, channel 0, id 0, lun 0
Is it possible that later somehow the DMA is disabled by some init script or that other hard disc drives (I have 2 more) take DMA away during runtime by some script again?
The disk read timings go as following:
Code:
# hdparm -tT /dev/sda
/dev/sda:
Timing cached reads: 1904 MB in 2.01 seconds = 946.26 MB/sec
HDIO_DRIVE_CMD(null) (wait for flush complete) failed: Inappropriate ioctl for device
Timing buffered disk reads: 156 MB in 3.02 seconds = 51.72 MB/sec
HDIO_DRIVE_CMD(null) (wait for flush complete) failed: Inappropriate ioctl for device
I asked a similar question some days ago here and the answer I got made me understand dma setting works differently on stata drives and - seeing your drive's performance - is turned on. The 100% cpu use must come from a different source.
BTW what are your system specs? Maybe you have a slow processor or little memory..
So I must have DMA enabled and something else is a bottleneck.
During measurements above, the system was not running any heavy processes, it was 0% CPU before and after measurement.
I have a Intel(R) Celeron(R) CPU 2.80GHz, with 512MB main memmory, running KDE and still there is about 200MB free memmory, that is mainly used for disk cache.
When the disk is operating, the user interface under KDE sometimes gets much less responsive or almost unresponsive.
Could it be some drivers or wrong disk partitioning?
My fdisk /dev/sda output:
Code:
Disk /dev/sda: 250.0 GB, 250059350016 bytes
255 heads, 63 sectors/track, 30401 tracks
Units = cylinders from 16065 x 512 = 8225280 bytes
Naprava Boot Start End Blocks Id System
/dev/sda1 * 1 7833 62918541 83 Linux
/dev/sda2 7834 30401 181277460 5 Extended
/dev/sda5 7834 10444 20972826 83 Linux
/dev/sda6 10445 10705 2096451 82 Linux swap / Solaris
/dev/sda7 10706 15927 41945683+ 83 Linux
/dev/sda8 15928 27676 94373811 83 Linux
It happened again. About an hour ago, while developing an app in kdevelop, because of my programm error, my program went to write into some file indefinitely. I couldn't stop the running program without hard reset the system. X was not responsive, I couldn't log in to tty1, nothing. Sometimes the same bottleneck happens when filling the swap file with some process, but after swap is filled up totally, kernel starts killing orphan processes (hopefully the problematic one too) and usially I don't have to hard-reset.
----
As you suggest, I copied a large .iso file (>3GB) in konqueror (same happens with cp),
and measured with free every 2 seconds:
CPU utilization went to 100%, exchanging system time 100% and user time 100%, about every 200 msec or so, sometimes frequently and sometimes system time got only to 30%-50%.
Could it be some strange disk access algorithm's fault in some driver in FC4?
As you can see you've not run out of Ranm and you're using little SWAP.
I've been trying to get my box to do the same thing, but although copying large files from cd to HDD produces some peaks in cpu usage, they're just that, peaks, and I can load other apps at the same time - slowly, but it works
I imagine you used ctrl+alt+F1 to try to log into tty1
If the processor is hogged this can take some time!
I'm not sure where to go from here.
Anybody else??
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.