Перейти к содержанию

SATA на 2.6.19, help!


Рекомендуемые сообщения

Ребята, помогите пожалуйста.

Не могу заставить работать DMA + при работе с жёстким диском сильно нагружается процессор (до 100% при копировании больших файлов) как в в этом топике

Подскажите, что нужно указать в ядре?

Ноутбук ASUS TravelMate 4152LMi

Система Linux Gentoo ядро 2.6.19-gentoo-r5

# uname -r

00:00.0 Host bridge: Intel Corporation Mobile 915GM/PM/GMS/910GML Express Processor to DRAM Controller (rev 03)

00:1f.2 IDE interface: Intel Corporation 82801FBM (ICH6M) SATA Controller (rev 04)

# hdparm /dev/hdc

multcount = 16 (on)

IO_support = 3 (32-bit w/sync)

unmaskirq = 0 (off)

using_dma = 0 (off)

keepsettings = 0 (off)

readonly = 0 (off)

readahead = 64 (on)

geometry = 65535/16/63, sectors = 117210240, start = 0

# hdparm -i /dev/hdc

Model=TOSHIBA MK6025GAS, FwRev=KA200A, SerialNo=45PM1361S

Config={ Fixed }

RawCHS=16383/16/63, TrkSize=0, SectSize=0, ECCbytes=48

BuffType=unknown, BuffSize=0kB, MaxMultSect=16, MultSect=16

CurCHS=16383/16/63, CurSects=16514064, LBA=yes, LBAsects=117210240

IORDY=on/off, tPIO={min:120,w/IORDY:120}, tDMA={min:120,rec:120}

PIO modes: pio0 pio1 pio2 pio3 pio4

DMA modes: sdma0 sdma1 sdma2 mdma0 mdma1 mdma2

UDMA modes: udma0 udma1 udma2 udma3 udma4 *udma5

AdvancedPM=yes: unknown setting WriteCache=enabled

Drive conforms to: Unspecified: ATA/ATAPI-1 ATA/ATAPI-2 ATA/ATAPI-3 ATA/ATAPI-4 ATA/ATAPI-5 ATA/ATAPI-6

#hdparm -d1 /dev/hdc

/dev/hdc:

setting using_dma to 1 (on)

HDIO_SET_DMA failed: Operation not permitted

using_dma = 0 (off)

Ссылка на комментарий
Поделиться на другие сайты

Решение:

При штатных настройках ("старые настройки") при работе жёсткого диска съедается куча процессорного времени, причём при работе с большими файлами система может даже подвисать. Необходимо использовать libata, для этого надо включить поддержку нужных драйверов в секции -->Serial ATA (prod) and Parallel ATA (experimental) driver (в ядрах >2.6.18 всё уехало сюда из -->SCSI device support), включить поддержку SCSI дисков и сидиромов, а также к параметрам ядра приписать combined_mode=libata libata.atapi_enabled=1 (для поддержки SATA cdrom).

Ну а DMA включать и не надо, он в libata уже включён =).

P.S. Поддержку ATA/ATAPI и DMA Engine можно вырубить вообще.

Ну и конечно жёсткий диск станет sda, а dvdrom sr0

Про libata тут: http://linux-ata.org/faq.html

Ссылка на комментарий
Поделиться на другие сайты

Цитата:

UDMA modes: udma0 udma1 udma2 udma3 udma4 *udma5

У вас уже по умолчанию UDMA5 используется, надобности

включать режим DMA нет никакой, да оно и не дает вам

это сделать Smile

Попробуйте сделать hdparm -t /dev/hdc или hdparm -T /dev/hdc

и посмотреть вывод.

Ссылка на комментарий
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

Загрузка...
×
×
  • Создать...