# Grausame Festplatten-Performance

## xfuser4

Ich hab ein DELL Inspiron 6400 und fahre darauf Gentoo Linux mit einem aktuellen 2.6.23er Kernel (vanilla-sources). Hab seid einigen Monaten das Problem, dass das System extrem ins Stocken gerät, wenn der Rechner viel auf der Platte arbeitet. Das ganze ist auch dann ein Problem, wenn der Prozess, der den Zugriff macht, eigentlich eine niedrige Priorität hat. D.h. ein niederprioritärer Plattenprozess kann trotzdem mein ganzes System lahmlegen. Insbesondere, wenn man im Hintergrund was emerged, ist das sehr ärgerlich, weil bei Aktionen wie "Updating Icons Cache" oder "Regenerating ld.so Cache" das System komplett zum Stillstand kommt.

Ich weiß zumindest, dass ich das Problem früher auf anderen (Desktop-)Rechnern nicht hatte. Da konnte ich bequem nebenbei kompilieren und arbeiten, ohne dass alles ruckelte und stockte. Und meine sogar zu glauben, dass das Problem noch nicht so da war, als ich das Notebook vor einem Jahr gekauft hatte (war aber natürlich ein viel älterer Kernel).

Hat jemand ein paar Tipps, wie ich das Problem weiter untersuchen kann?

Meine Hardwareausstattung ist die folgende:

Dell Inspiron 6400 Notebook (E1505)

Core 2 Duo T7200 mit 1 GB RAM

Intel 82801GBM SATA IDE Controller (ICH7)

ATI Mobility x1400 Grafikkarte

Hitachi HTS54161 (S-ATA-Platte)

Philips DVD+-RW SDVD8820

Meine Kernel-Konfiguration sieht so aus:

#

# Automatically generated make config: don't edit

# Linux kernel version: 2.6.23

# Tue Nov 27 20:27:40 2007

#

CONFIG_X86_64=y

CONFIG_64BIT=y

CONFIG_X86=y

CONFIG_GENERIC_TIME=y

CONFIG_GENERIC_TIME_VSYSCALL=y

CONFIG_GENERIC_CMOS_UPDATE=y

CONFIG_ZONE_DMA32=y

CONFIG_LOCKDEP_SUPPORT=y

CONFIG_STACKTRACE_SUPPORT=y

CONFIG_SEMAPHORE_SLEEPERS=y

CONFIG_MMU=y

CONFIG_ZONE_DMA=y

CONFIG_RWSEM_GENERIC_SPINLOCK=y

CONFIG_GENERIC_HWEIGHT=y

CONFIG_GENERIC_CALIBRATE_DELAY=y

CONFIG_X86_CMPXCHG=y

CONFIG_EARLY_PRINTK=y

CONFIG_GENERIC_ISA_DMA=y

CONFIG_GENERIC_IOMAP=y

CONFIG_ARCH_MAY_HAVE_PC_FDC=y

CONFIG_ARCH_POPULATES_NODE_MAP=y

CONFIG_DMI=y

CONFIG_AUDIT_ARCH=y

CONFIG_GENERIC_BUG=y

CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config"

#

# General setup

#

CONFIG_EXPERIMENTAL=y

CONFIG_LOCK_KERNEL=y

CONFIG_INIT_ENV_ARG_LIMIT=32

CONFIG_LOCALVERSION=""

CONFIG_LOCALVERSION_AUTO=y

CONFIG_SWAP=y

CONFIG_SYSVIPC=y

CONFIG_SYSVIPC_SYSCTL=y

CONFIG_POSIX_MQUEUE=y

CONFIG_IKCONFIG=y

CONFIG_IKCONFIG_PROC=y

CONFIG_LOG_BUF_SHIFT=18

CONFIG_SYSFS_DEPRECATED=y

CONFIG_RELAY=y

CONFIG_BLK_DEV_INITRD=y

CONFIG_INITRAMFS_SOURCE=""

CONFIG_SYSCTL=y

CONFIG_UID16=y

CONFIG_SYSCTL_SYSCALL=y

CONFIG_KALLSYMS=y

CONFIG_HOTPLUG=y

CONFIG_PRINTK=y

CONFIG_BUG=y

CONFIG_ELF_CORE=y

CONFIG_BASE_FULL=y

CONFIG_FUTEX=y

CONFIG_ANON_INODES=y

CONFIG_EPOLL=y

CONFIG_SIGNALFD=y

CONFIG_EVENTFD=y

CONFIG_SHMEM=y

CONFIG_VM_EVENT_COUNTERS=y

CONFIG_SLAB=y

CONFIG_RT_MUTEXES=y

CONFIG_BASE_SMALL=0

CONFIG_MODULES=y

CONFIG_MODULE_UNLOAD=y

CONFIG_MODULE_FORCE_UNLOAD=y

CONFIG_STOP_MACHINE=y

CONFIG_BLOCK=y

#

# IO Schedulers

#

CONFIG_IOSCHED_NOOP=y

CONFIG_IOSCHED_DEADLINE=y

CONFIG_IOSCHED_CFQ=y

CONFIG_DEFAULT_CFQ=y

CONFIG_DEFAULT_IOSCHED="cfq"

#

# Processor type and features

#

CONFIG_X86_PC=y

CONFIG_MCORE2=y

CONFIG_X86_L1_CACHE_BYTES=64

CONFIG_X86_L1_CACHE_SHIFT=6

CONFIG_X86_INTERNODE_CACHE_BYTES=64

CONFIG_X86_TSC=y

CONFIG_X86_GOOD_APIC=y

CONFIG_MICROCODE=y

CONFIG_MICROCODE_OLD_INTERFACE=y

CONFIG_X86_MSR=y

CONFIG_X86_CPUID=y

CONFIG_X86_HT=y

CONFIG_X86_IO_APIC=y

CONFIG_X86_LOCAL_APIC=y

CONFIG_MTRR=y

CONFIG_SMP=y

CONFIG_SCHED_MC=y

CONFIG_PREEMPT=y

CONFIG_PREEMPT_BKL=y

CONFIG_ARCH_SPARSEMEM_ENABLE=y

CONFIG_ARCH_FLATMEM_ENABLE=y

CONFIG_SELECT_MEMORY_MODEL=y

CONFIG_FLATMEM_MANUAL=y

CONFIG_FLATMEM=y

CONFIG_FLAT_NODE_MEM_MAP=y

CONFIG_SPLIT_PTLOCK_CPUS=4

CONFIG_RESOURCES_64BIT=y

CONFIG_ZONE_DMA_FLAG=1

CONFIG_BOUNCE=y

CONFIG_VIRT_TO_BUS=y

CONFIG_NR_CPUS=2

CONFIG_PHYSICAL_ALIGN=0x200000

CONFIG_HOTPLUG_CPU=y

CONFIG_ARCH_ENABLE_MEMORY_HOTPLUG=y

CONFIG_HPET_TIMER=y

CONFIG_HPET_EMULATE_RTC=y

CONFIG_IOMMU=y

CONFIG_SWIOTLB=y

CONFIG_X86_MCE=y

CONFIG_X86_MCE_INTEL=y

CONFIG_X86_MCE_AMD=y

CONFIG_PHYSICAL_START=0x200000

CONFIG_SECCOMP=y

CONFIG_HZ_1000=y

CONFIG_HZ=1000

CONFIG_K8_NB=y

CONFIG_GENERIC_HARDIRQS=y

CONFIG_GENERIC_IRQ_PROBE=y

CONFIG_ISA_DMA_API=y

CONFIG_GENERIC_PENDING_IRQ=y

#

# Power management options

#

CONFIG_PM=y

CONFIG_PM_SLEEP_SMP=y

CONFIG_PM_SLEEP=y

CONFIG_SUSPEND_SMP_POSSIBLE=y

CONFIG_SUSPEND=y

CONFIG_HIBERNATION_SMP_POSSIBLE=y

CONFIG_HIBERNATION=y

CONFIG_PM_STD_PARTITION=""

CONFIG_ACPI=y

CONFIG_ACPI_SLEEP=y

CONFIG_ACPI_PROCFS=y

CONFIG_ACPI_PROC_EVENT=y

CONFIG_ACPI_AC=y

CONFIG_ACPI_BATTERY=y

CONFIG_ACPI_BUTTON=y

CONFIG_ACPI_FAN=y

CONFIG_ACPI_PROCESSOR=y

CONFIG_ACPI_HOTPLUG_CPU=y

CONFIG_ACPI_THERMAL=y

CONFIG_ACPI_BLACKLIST_YEAR=0

CONFIG_ACPI_EC=y

CONFIG_ACPI_POWER=y

CONFIG_ACPI_SYSTEM=y

CONFIG_X86_PM_TIMER=y

CONFIG_ACPI_CONTAINER=y

#

#

CONFIG_CPU_FREQ=y

CONFIG_CPU_FREQ_TABLE=y

CONFIG_CPU_FREQ_DEBUG=y

CONFIG_CPU_FREQ_STAT=y

CONFIG_CPU_FREQ_DEFAULT_GOV_PERFORMANCE=y

CONFIG_CPU_FREQ_GOV_PERFORMANCE=y

CONFIG_CPU_FREQ_GOV_POWERSAVE=y

CONFIG_CPU_FREQ_GOV_USERSPACE=y

CONFIG_CPU_FREQ_GOV_ONDEMAND=y

CONFIG_CPU_FREQ_GOV_CONSERVATIVE=y

#

#

CONFIG_X86_ACPI_CPUFREQ=y

#

# shared options

#

CONFIG_X86_ACPI_CPUFREQ_PROC_INTF=y

#

# Bus options (PCI etc.)

#

CONFIG_PCI=y

CONFIG_PCI_DIRECT=y

CONFIG_PCI_MMCONFIG=y

CONFIG_PCIEPORTBUS=y

CONFIG_PCIEAER=y

CONFIG_ARCH_SUPPORTS_MSI=y

CONFIG_PCI_MSI=y

#

# PCCARD (PCMCIA/CardBus) support

#

CONFIG_PCCARD=y

CONFIG_PCMCIA=y

CONFIG_PCMCIA_LOAD_CIS=y

CONFIG_PCMCIA_IOCTL=y

CONFIG_CARDBUS=y

#

# PC-card bridges

#

#

# Executable file formats / Emulations

#

CONFIG_BINFMT_ELF=y

CONFIG_IA32_EMULATION=y

CONFIG_IA32_AOUT=y

CONFIG_COMPAT=y

CONFIG_COMPAT_FOR_U64_ALIGNMENT=y

CONFIG_SYSVIPC_COMPAT=y

#

# Networking

#

CONFIG_NET=y

#

# Networking options

#

CONFIG_PACKET=y

CONFIG_UNIX=y

CONFIG_INET=y

CONFIG_IP_MULTICAST=y

CONFIG_IP_FIB_HASH=y

CONFIG_IP_PNP=y

CONFIG_IP_PNP_DHCP=y

CONFIG_INET_DIAG=y

CONFIG_INET_TCP_DIAG=y

CONFIG_TCP_CONG_CUBIC=y

CONFIG_DEFAULT_TCP_CONG="cubic"

CONFIG_NETFILTER=y

#

#

CONFIG_NETFILTER_XTABLES=y

#

# IP: Netfilter Configuration

#

CONFIG_IP_NF_IPTABLES=y

CONFIG_IP_NF_MATCH_IPRANGE=y

CONFIG_IP_NF_FILTER=y

CONFIG_IP_NF_TARGET_REJECT=y

CONFIG_LLC=y

CONFIG_ATALK=y

CONFIG_DEV_APPLETALK=y

CONFIG_IPDDP=y

CONFIG_IPDDP_ENCAP=y

CONFIG_IPDDP_DECAP=y

#

# QoS and/or fair queueing

#

CONFIG_NET_SCHED=y

CONFIG_NET_SCH_FIFO=y

#

# Queueing/Scheduling

#

#

#

#

# Network testing

#

#

# Wireless

#

CONFIG_CFG80211=y

CONFIG_WIRELESS_EXT=y

CONFIG_MAC80211=m

#

# Device Drivers

#

#

# Generic Driver Options

#

CONFIG_STANDALONE=y

CONFIG_PREVENT_FIRMWARE_BUILD=y

CONFIG_FW_LOADER=y

CONFIG_PNP=y

#

# Protocols

#

CONFIG_PNPACPI=y

CONFIG_BLK_DEV=y

CONFIG_BLK_DEV_FD=y

CONFIG_BLK_DEV_LOOP=y

CONFIG_BLK_DEV_RAM=y

CONFIG_BLK_DEV_RAM_COUNT=16

CONFIG_BLK_DEV_RAM_SIZE=4096

CONFIG_BLK_DEV_RAM_BLOCKSIZE=1024

CONFIG_MISC_DEVICES=y

#

# SCSI device support

#

CONFIG_SCSI=y

CONFIG_SCSI_DMA=y

CONFIG_SCSI_NETLINK=y

#

# SCSI support type (disk, tape, CD-ROM)

#

CONFIG_BLK_DEV_SD=y

CONFIG_BLK_DEV_SR=y

CONFIG_CHR_DEV_SG=y

#

# Some SCSI devices (e.g. CD jukebox) support multiple LUNs

#

CONFIG_SCSI_CONSTANTS=y

CONFIG_SCSI_WAIT_SCAN=m

#

# SCSI Transports

#

CONFIG_SCSI_SPI_ATTRS=y

CONFIG_SCSI_FC_ATTRS=y

CONFIG_SCSI_LOWLEVEL=y

CONFIG_SCSI_AIC79XX=y

CONFIG_AIC79XX_CMDS_PER_DEVICE=32

CONFIG_AIC79XX_RESET_DELAY_MS=4000

CONFIG_AIC79XX_DEBUG_MASK=0

CONFIG_ATA=y

CONFIG_ATA_ACPI=y

CONFIG_ATA_PIIX=y

#

# Fusion MPT device support

#

CONFIG_FUSION=y

CONFIG_FUSION_SPI=y

CONFIG_FUSION_MAX_SGE=128

#

# IEEE 1394 (FireWire) support

#

CONFIG_IEEE1394=y

#

# Subsystem Options

#

#

#

CONFIG_IEEE1394_OHCI1394=y

#

# Protocols

#

CONFIG_IEEE1394_VIDEO1394=y

CONFIG_IEEE1394_DV1394=y

CONFIG_IEEE1394_RAWIO=y

CONFIG_NETDEVICES=y

CONFIG_NETDEVICES_MULTIQUEUE=y

CONFIG_TUN=y

CONFIG_NET_ETHERNET=y

CONFIG_MII=y

CONFIG_NET_PCI=y

CONFIG_B44=y

#

# Wireless LAN

#

#

# USB Network Adapters

#

#

# Input device support

#

CONFIG_INPUT=y

#

# Userland interfaces

#

CONFIG_INPUT_MOUSEDEV=y

CONFIG_INPUT_MOUSEDEV_PSAUX=y

CONFIG_INPUT_MOUSEDEV_SCREEN_X=1024

CONFIG_INPUT_MOUSEDEV_SCREEN_Y=768

CONFIG_INPUT_EVDEV=y

#

# Input Device Drivers

#

CONFIG_INPUT_KEYBOARD=y

CONFIG_KEYBOARD_ATKBD=y

CONFIG_INPUT_MOUSE=y

CONFIG_MOUSE_PS2=y

CONFIG_MOUSE_PS2_ALPS=y

CONFIG_MOUSE_PS2_LOGIPS2PP=y

CONFIG_MOUSE_PS2_SYNAPTICS=y

CONFIG_MOUSE_PS2_LIFEBOOK=y

CONFIG_MOUSE_PS2_TRACKPOINT=y

#

# Hardware I/O ports

#

CONFIG_SERIO=y

CONFIG_SERIO_I8042=y

CONFIG_SERIO_LIBPS2=y

#

#

CONFIG_VT=y

CONFIG_VT_CONSOLE=y

CONFIG_HW_CONSOLE=y

#

# Serial drivers

#

CONFIG_SERIAL_8250=y

CONFIG_SERIAL_8250_CONSOLE=y

CONFIG_FIX_EARLYCON_MEM=y

CONFIG_SERIAL_8250_PCI=y

CONFIG_SERIAL_8250_PNP=y

CONFIG_SERIAL_8250_NR_UARTS=4

CONFIG_SERIAL_8250_RUNTIME_UARTS=4

#

# Non-8250 serial port support

#

CONFIG_SERIAL_CORE=y

CONFIG_SERIAL_CORE_CONSOLE=y

CONFIG_UNIX98_PTYS=y

CONFIG_LEGACY_PTYS=y

CONFIG_LEGACY_PTY_COUNT=256

CONFIG_HW_RANDOM=y

CONFIG_HW_RANDOM_INTEL=y

CONFIG_RTC=y

CONFIG_AGP=y

CONFIG_AGP_AMD64=y

CONFIG_AGP_INTEL=y

#

# PCMCIA character devices

#

CONFIG_RAW_DRIVER=y

CONFIG_MAX_RAW_DEVS=256

CONFIG_HPET=y

CONFIG_HPET_MMAP=y

CONFIG_DEVPORT=y

CONFIG_I2C=y

CONFIG_I2C_BOARDINFO=y

CONFIG_I2C_CHARDEV=y

#

# I2C Algorithms

#

CONFIG_I2C_ALGOBIT=y

CONFIG_I2C_ALGOPCF=y

CONFIG_I2C_ALGOPCA=y

#

# I2C Hardware Bus support

#

CONFIG_I2C_I801=y

#

# Miscellaneous I2C Chip support

#

#

# SPI support

#

CONFIG_POWER_SUPPLY=y

CONFIG_HWMON=y

CONFIG_SENSORS_CORETEMP=y

#

# Multifunction device drivers

#

#

# Multimedia devices

#

#

# Graphics support

#

CONFIG_BACKLIGHT_LCD_SUPPORT=y

CONFIG_LCD_CLASS_DEVICE=y

CONFIG_BACKLIGHT_CLASS_DEVICE=y

#

# Display device support

#

#

#

CONFIG_VGA_CONSOLE=y

CONFIG_VGACON_SOFT_SCROLLBACK=y

CONFIG_VGACON_SOFT_SCROLLBACK_SIZE=256

CONFIG_VIDEO_SELECT=y

CONFIG_DUMMY_CONSOLE=y

#

# Sound

#

CONFIG_SOUND=y

#

# Advanced Linux Sound Architecture

#

CONFIG_SND=y

CONFIG_SND_TIMER=y

CONFIG_SND_PCM=y

CONFIG_SND_SEQUENCER=y

CONFIG_SND_OSSEMUL=y

CONFIG_SND_MIXER_OSS=y

CONFIG_SND_PCM_OSS=y

CONFIG_SND_PCM_OSS_PLUGINS=y

CONFIG_SND_SEQUENCER_OSS=y

CONFIG_SND_RTCTIMER=y

CONFIG_SND_SEQ_RTCTIMER_DEFAULT=y

CONFIG_SND_SUPPORT_OLD_API=y

#

# Generic devices

#

#

# PCI devices

#

CONFIG_SND_HDA_INTEL=y

#

# USB devices

#

#

# PCMCIA devices

#

#

# System on Chip audio support

#

#

# SoC Audio support for SuperH

#

#

# Open Sound System

#

CONFIG_HID_SUPPORT=y

CONFIG_HID=y

#

# USB Input Devices

#

CONFIG_USB_HID=y

CONFIG_USB_SUPPORT=y

CONFIG_USB_ARCH_HAS_HCD=y

CONFIG_USB_ARCH_HAS_OHCI=y

CONFIG_USB_ARCH_HAS_EHCI=y

CONFIG_USB=y

#

# Miscellaneous USB options

#

CONFIG_USB_DEVICEFS=y

#

# USB Host Controller Drivers

#

CONFIG_USB_EHCI_HCD=y

CONFIG_USB_UHCI_HCD=y

#

# USB Device Class drivers

#

CONFIG_USB_PRINTER=y

#

# NOTE: USB_STORAGE enables SCSI, and 'SCSI disk support'

#

#

# may also be needed; see USB_STORAGE Help for more information

#

CONFIG_USB_STORAGE=y

#

# USB Imaging devices

#

CONFIG_USB_MON=y

#

# USB port drivers

#

#

# USB Serial Converter support

#

#

# USB Miscellaneous drivers

#

#

# USB DSL modem support

#

#

# USB Gadget Support

#

CONFIG_MMC=y

#

# MMC/SD Card Drivers

#

CONFIG_MMC_BLOCK=y

CONFIG_MMC_BLOCK_BOUNCE=y

#

# MMC/SD Host Controller Drivers

#

CONFIG_NEW_LEDS=y

CONFIG_LEDS_CLASS=y

#

# LED drivers

#

#

# LED Triggers

#

CONFIG_LEDS_TRIGGERS=y

#

# DMA Engine support

#

#

# DMA Clients

#

#

# DMA Devices

#

#

# Userspace I/O

#

#

# Firmware Drivers

#

CONFIG_DELL_RBU=y

CONFIG_DCDBAS=y

CONFIG_DMIID=y

#

# File systems

#

CONFIG_EXT2_FS=y

CONFIG_EXT2_FS_XATTR=y

CONFIG_EXT2_FS_POSIX_ACL=y

CONFIG_EXT3_FS=y

CONFIG_EXT3_FS_XATTR=y

CONFIG_EXT3_FS_POSIX_ACL=y

CONFIG_JBD=y

CONFIG_FS_MBCACHE=y

CONFIG_FS_POSIX_ACL=y

CONFIG_INOTIFY=y

CONFIG_INOTIFY_USER=y

CONFIG_DNOTIFY=y

CONFIG_AUTOFS4_FS=y

CONFIG_FUSE_FS=y

CONFIG_GENERIC_ACL=y

#

#

CONFIG_ISO9660_FS=y

CONFIG_JOLIET=y

CONFIG_ZISOFS=y

CONFIG_UDF_FS=y

CONFIG_UDF_NLS=y

#

# DOS/FAT/NT Filesystems

#

CONFIG_FAT_FS=y

CONFIG_MSDOS_FS=y

CONFIG_VFAT_FS=y

CONFIG_FAT_DEFAULT_CODEPAGE=437

CONFIG_FAT_DEFAULT_IOCHARSET="iso8859-1"

CONFIG_NTFS_FS=y

#

# Pseudo filesystems

#

CONFIG_PROC_FS=y

CONFIG_PROC_KCORE=y

CONFIG_PROC_SYSCTL=y

CONFIG_SYSFS=y

CONFIG_TMPFS=y

CONFIG_TMPFS_POSIX_ACL=y

CONFIG_HUGETLBFS=y

CONFIG_HUGETLB_PAGE=y

CONFIG_RAMFS=y

#

# Miscellaneous filesystems

#

CONFIG_HFSPLUS_FS=y

#

# Network File Systems

#

CONFIG_NFS_FS=y

CONFIG_NFS_V3=y

CONFIG_NFSD=y

CONFIG_NFSD_V3=y

CONFIG_NFSD_TCP=y

CONFIG_ROOT_NFS=y

CONFIG_LOCKD=y

CONFIG_LOCKD_V4=y

CONFIG_EXPORTFS=y

CONFIG_NFS_COMMON=y

CONFIG_SUNRPC=y

CONFIG_CIFS=y

#

# Partition Types

#

CONFIG_MSDOS_PARTITION=y

#

# Native Language Support

#

CONFIG_NLS=y

CONFIG_NLS_DEFAULT="iso8859-1"

CONFIG_NLS_CODEPAGE_437=y

CONFIG_NLS_ASCII=y

CONFIG_NLS_ISO8859_1=y

CONFIG_NLS_ISO8859_15=y

CONFIG_NLS_UTF8=y

#

# Distributed Lock Manager

#

#

# Instrumentation Support

#

CONFIG_PROFILING=y

CONFIG_OPROFILE=y

CONFIG_KPROBES=y

#

# Kernel hacking

#

CONFIG_TRACE_IRQFLAGS_SUPPORT=y

CONFIG_MAGIC_SYSRQ=y

CONFIG_UNUSED_SYMBOLS=y

CONFIG_DEBUG_BUGVERBOSE=y

#

# Security options

#

CONFIG_SECURITY=y

CONFIG_SECURITY_CAPABILITIES=y

CONFIG_CRYPTO=y

CONFIG_CRYPTO_ALGAPI=y

CONFIG_CRYPTO_BLKCIPHER=y

CONFIG_CRYPTO_MANAGER=y

CONFIG_CRYPTO_ECB=y

CONFIG_CRYPTO_CBC=m

CONFIG_CRYPTO_PCBC=m

CONFIG_CRYPTO_AES=y

CONFIG_CRYPTO_ARC4=y

CONFIG_CRYPTO_HW=y

#

# Library routines

#

CONFIG_BITREVERSE=y

CONFIG_CRC32=y

CONFIG_ZLIB_INFLATE=y

CONFIG_PLIST=y

CONFIG_HAS_IOMEM=y

CONFIG_HAS_IOPORT=y

CONFIG_HAS_DMA=y

----------

## Finswimmer

1) DMA aktiviert? hdparm /dev/sda

2) Genug RAM? Während Kompilieren mit free schauen

3) PORTAGE_NICENESS="19" in /etc/make.conf, damit hat portage die geringste Priorität

Tobi

----------

## schachti

 *Finswimmer wrote:*   

> 1) DMA aktiviert? hdparm /dev/sda

 

Ich dachte immer, bei SATA-Platten ließe sich DMA nicht explizit aktivieren, da SATA standardmäßig mit DMA arbeitet? Lasse mich aber gerne eines Besseren belehren...

 *Finswimmer wrote:*   

> 3) PORTAGE_NICENESS="19" in /etc/make.conf, damit hat portage die geringste Priorität

 

Naja, er schreibt doch

 *xfuser4 wrote:*   

> Das ganze ist auch dann ein Problem, wenn der Prozess, der den Zugriff macht, eigentlich eine niedrige Priorität hat. D.h. ein niederprioritärer Plattenprozess kann trotzdem mein ganzes System lahmlegen.

 

Tauchen evtl. im Log (je nachdem, welchen Logger Du verwendest, /var/log/messages oder /var/log/everything/current) hilfreiche Meldungen auf?

----------

## Klaus Meier

Bei SATA Platten gibt es keinen PIO-Modus mehr, deshalb gibt es da gar nichts anderes als DMA. Und wenn man IDE Platten über die PATA-Treiber anspricht, dann ist DMA auch immer an.

Welches Filesystem benutzt du? Ich habe seit einiger Zeit einen neuen Rechner und wollte wegen des vielen RAMs mal wieder xfs testen, da hat das System auch ständig gehangen. Kann eventuell eine Macke deines gerade verwendeten Kernels sein.

Und ansonsten probier mal die gentoo-sources, die sind doch so gepatcht, dass emerge das normale Arbeiten möglichst wenig behindert.

----------

## schachti

A propos Dateisystem: Ist evtl. die / Partition (fast) voll? Das kann nämlich auch die Performance ziemlich nach unten ziehen...

----------

## xfuser4

Als Dateisystem verwende ich ext3. Ich hab zwei Partitionen, die aber beide noch so ca. >10 GB frei haben. Das einzig blöde ist, dass ich den Swap unterdimensioniert habe (nur 1 GB) - allerdings tritt das Problem auch auf, wenn genug Hauptspeicher frei ist und er die Auslagerungsdatei gar nicht erst anfässt...

Das Problem ist, dass mir nicht nur emerge das System runterzieht - sondern alles, was auf der Festplatte stärker arbeitet. Also z.B. auch wenn ein Programm viel Auslagerungsspeicher benötigt. Wenn ich z.B. unter VirtualBox ein System installiere und er gerade viele Dateien dort von A nach B kopiert, dann kann ich das Host-System fast vollkommen vergessen. Wobei es natürlich bei Portage am auffälligsten ist, weil das natürlich immer extrem auf der Platte operiert.

Das einzige, was im Log in solchen Momenten auftaucht ist, dass irgendwelche Prozesse zusammenbrechen bzw. der WLAN-Treiber (iwlwifi) die Verbindung verliert, weil er irgendwelche Timeouts nicht mehr halten kann.

----------

## schachti

 *xfuser4 wrote:*   

> Das einzig blöde ist, dass ich den Swap unterdimensioniert habe (nur 1 GB)

 

Wenn Du zu wenig Swap hast, kannst Du notfalls auch noch eine Swap-Datei anlegen. Ist nicht elegant, aber als Notbehelf ok:

```
dd if=/dev/zero of=/swapfile bs=1024 count=1048576

mkswap /swapfile

swapon /swapfile
```

gibt Dir 1 GB zusätzlichen Swap.

Zurück zu Deinem Problem: Befindet sich das Dateisystem direkt auf einer Partition der Festplatte, oder ist da noch eine Schicht zwischengeschaltet (loop-device, device-mapper etc.)?

----------

## xfuser4

(Bzw. ich hab in nächster Zeit mal vor, eine Partition zu verkleinern und damit das Swap-Problem aus der Welt zu schaffen)

Also die Partitionen befinden sich alle direkt auf der Festplatte.

----------

## ChrisJumper

 *xfuser4 wrote:*   

>  ...einzig blöde ist, dass ich den Swap unterdimensioniert habe (nur 1 GB) 

 

Nee mach das nicht, der swap ist da ganz bestimmt nicht schuld! Diese "zweimal soviel Sawp wie Ram"-Regel ist schon jetzt ziemlich überholt. Die stammt noch aus Zeiten in denen 128 oder 256 mb RAM gang und gebe waren.

Mehr als 512 mb RAM, so habe ich in diversen Linux-Artikeln gelesen sind für die Katz. Was ja auch Sinn macht. Denn Swappen ist definitiv schon ein worst Case. Es gibt zwar noch gaaanz kleine Bereiche wo soviel swap Sinn machen würde aber im "normalen" Desktop-Betrieb ist das total Überflüssig.

Das es sich evtl um einen "unglücklichen" Kernel handelt scheint mir eher der Fall da ich das bei einigen System schon beobachtet hab. (2.6.22-2.6.23-r5). Der 2.6.23er-r5 schnurrt hier wie ein Kätzchen.

Meine Erfahrungen sind leider mehr "gefühlte Werte". Da ich bislang noch keine Direkte Messung vornehmen konnte. Fakt ist aber das ich an dem selben PC ohne PORTAGE_NICENESS mit einem kleiner als 2.6.20er Kernel ohne Problem unter voller Last (emergen) und parallel noch arbeiten konnte. Dannach kam es immer wieder zum Stocken.

Und da hier mehrere davon berichten.. mit unterschiedlichen Sata-Treibern, halte ich das eher für unwahrscheinlich.

Das kann evt. Aber auch an compiz-fusion liegen. Bzw. mit der damit verbundenen "permanenten Grund Last". Wenn nicht hab ich immer noch die Sheduler böse im Blick ;)

----------

## xfuser4

Ich hab das Problem, dass ich gegelentlich für bestimmte Projekte sehr viel Hauptspeicher brauche (geht um was wissenschaftliches) - und dass ich meinem RAM wegschmeißen müsste, wenn ich die Kiste auf 2 GB aufrüsten wollen würde  :Smile: .

Um den Kernel an sich kann es sich nicht handeln, ich hab das Problem schon mindestens seit 2.6.16. Wobei ich eben wage zu behaupten, dass es am Anfang nicht so war (da hab ich allerdings das Notebook noch nicht so intensiv genutzt). Leider hab ich das Logfile nicht mehr, um sagen zu können *welcher* Kernel das war.

Compiz läuft zwar bei mir auch - aber das Problem habe ich, selbst wenn kein X da ist. Ob es am falschen S-ATA-Treiber liegt, kann ich nicht sagen. Ich bin einfach mal davon ausgegangen, dass der "Intel ESB, ICH, PIIX3, PIIX4 PATA/SATA"-Support unter Devices/Serial-ATA der richtige für ein Notebook mit ICH7-Chipsatz ist.

Es hat auch, wie gesagt, nichts mit Rechenlast zu tun. Selbst wenn ein Prozess gerade viel rechnet, hat das System trotzdem sehr gute Reaktionszeiten und kommt nicht ins Stocken. Es hat ausschließlich was mit den Plattenzugriffen zu tun. Hab auch schon verschiedene IO-Scheduler probiert - aber das ändert das ganze kein bisschen.

----------

## ChrisJumper

Was ich auch merkwürdig finde ist:

Du hast kein einziges config_SATA-Symbol in deiner Konfiguraton.

(This option enables support for AHCI Serial ATA.)

Guck mal hier.

Ob das der selbe Controller ist.

 *Quote:*   

> 00:1f.2 IDE interface: Intel Corporation 82801GBM/GHM (ICH7 Family) Serial ATA Storage Controller IDE (rev 02)

 

Und ob du dann nicht auch CONFIG_SATA_AHCI einbauen musst.

Hab die Hardware leider nicht und kann es nicht testen..

Grüße

Edit: Hier noch ein englischer Link mit einer kurzen erklärung zum Advanced Host Controller Interface. Ein fehlen könnte also schon die Ursache für deine Performance-Probleme sein.Last edited by ChrisJumper on Wed Jan 02, 2008 1:20 pm; edited 2 times in total

----------

## franzf

 *ChrisJumper wrote:*   

>  *xfuser4 wrote:*    ...einzig blöde ist, dass ich den Swap unterdimensioniert habe (nur 1 GB)  
> 
> Nee mach das nicht, der swap ist da ganz bestimmt nicht schuld! Diese "zweimal soviel Sawp wie Ram"-Regel ist schon jetzt ziemlich überholt. Die stammt noch aus Zeiten in denen 128 oder 256 mb RAM gang und gebe waren.
> 
> Mehr als 512 mb RAM, so habe ich in diversen Linux-Artikeln gelesen sind für die Katz. Was ja auch Sinn macht. Denn Swappen ist definitiv schon ein worst Case. Es gibt zwar noch gaaanz kleine Bereiche wo soviel swap Sinn machen würde aber im "normalen" Desktop-Betrieb ist das total Überflüssig.

 

Ist zwar jetzt bissl OT, aber was solls  :Wink: 

Ich hab hier einen AMD64 auf 64bit laufen, eingebaut sind 1024MB RAM. Swap hab ich dem auch noch mal das selbe spendiert. Der Swap ist vllt. wirklich etwas groß, aber was solls, gebraucht wird er bei mir definitiv! Kompilieren von großen C++-Dateien kann schon mal ein paar 100MB brauchen, dann mit -j2 und schon wirds eng. Insbesondere wenn man noch einige Speicherintensive Programme offen hat (EMail mit vielen mails, firefox mit einigen Tabs/Fenstern, usw.) Und schon bekommt man richtig Probleme! Bestenfalls bricht das Kompilieren ab...

Und um mal ein nettes Argument gegen SWAP aufzugreifen:

RAM ist mittlerweilse total billig! einfach für 50-100€ verdoppeln und man kann sich den SWAP schenken.

Mal überlegen, meine 500GB-SATA-Platte hat knappe 90€ gekostet. 1GB davon sind, hmm, 0,18€...

Was ist da jetzt geschickter?  :Very Happy: 

Insbesondere da der SWAP nur recht selten benötigt wird und damit der zusätzliche RAM eine für mich unnötige Zusatzinvestition darstellt  :Wink: 

Grüße

Franz

----------

## xfuser4

Ist fast der gleiche Controller (nur rev 01).

Mh, muss ich den SATA-AHCI-Support wirklich zusätzlich auch einschalten?

Und wie kann denn die Festplatte überhaupt angesteuert werden, wenn es keinen SATA-Support gibt? (Immerhin ist das Device ja auch /dev/sda)

Also CONFIG_ATA_PIIX ist eingeschaltet. In der Konfiguration vom Kernel (2.6.23) nennt sich das:

 <*>   Intel ESB, ICH, PIIX3, PIIX4 PATA/SATA support

----------

## think4urs11

was sagen denn (sda durch deine Platte ersetzen) 

```
hdparm -iI /dev/sda

sdparm -al /dev/sda
```

----------

## ChrisJumper

 *xfuser4 wrote:*   

> Ist fast der gleiche Controller (nur rev 01).
> 
> Mh, muss ich den SATA-AHCI-Support wirklich zusätzlich auch einschalten?
> 
> Und wie kann denn die Festplatte überhaupt angesteuert werden, wenn es keinen SATA-Support gibt? (Immerhin ist das Device ja auch /dev/sda)
> ...

 

Ach du fragst mich Sachen :) Da müsste ich schon fast lügen wenn ich sagen würde ich würde es wissen. Aber genauso wie "vesa"-Treiber für Grafikkarten wohl alle möglichen Grafikkarten ansprechen können. So ist das vielleicht auch bei "nicht den idealen" Festplatten-Controller-Treibern.

Was und wie genau AHCI macht, kann ich dir nicht sagen aber ich hab im letzten Post den Link dabei gehängt. Klingt schon irgendwie aufschlussreich und ich würde es versuchen.

@franzf

Daher meinte ich doch auch im "normalen Desktopbetrieb". Natürlich ist unter Gentoo das immer ein wenig schwer etwas als "normal" zu bezeichnen und deswegen hab ich ja auch geschrieben in "Linux-Artikeln" :) Aber es ist immer wieder toll auch die ganzen Ausnahmefälle kennen zu lernen (-j2) in denen man aufpassen muss. Ich versuch mir das jetzt jedenfalls mal zu merken.

Zum RAM: Vielleicht ist es bei einem Laptop aber schon Recht umständlich den zu Erweitern oder wird vom Bios ja auch nicht unterstützt.

----------

## xfuser4

hdparm -iT /dev/sda

```

/dev/sda:

 Model=Hitachi HTS541612J9SA00                 , FwRev=SBDOC74P, SerialNo=      SB2D11E4G3GM1B

 Config={ HardSect NotMFM HdSw>15uSec Fixed DTR>10Mbs }

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

 BuffType=DualPortCache, BuffSize=7516kB, MaxMultSect=16, MultSect=?8?

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

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

 PIO [/b]modes:  pio0 pio1 pio2 pio3 pio4 

 DMA modes:  mdma0 mdma1 mdma2 

 UDMA modes: udma0 udma1 udma2 udma3 udma4 *udma5 

 AdvancedPM=yes: mode=0x80 (128) WriteCache=enabled

 Drive conforms to: ATA/ATAPI-7 T13 1532D revision 1:  ATA/ATAPI-2,3,4,5,6,7

 * signifies the current active mode

 Timing cached reads:   5090 MB in  2.00 seconds = 2549.59 MB/sec

```

sdparm -al /dev/sda

```

    /dev/sda: ATA       Hitachi HTS54161  SBDO

    Direct access device specific parameters: WP=0  DPOFUA=0

Read write error recovery [rw] mode page:

  AWRE        1  Automatic write reallocation enabled

  ARRE        1  Automatic read reallocation enabled

  TB          0  Transfer block

  RC          0  Read continuous

  EER         0  Enable early recovery

  PER         0  Post error

  DTE         0  Data terminate on error

  DCR         0  Disable correction

  RRC         0  Read retry count

  COR_S       0  Correction span (obsolete)

  HOC         0  Head offset count (obsolete)

  DSOC        0  Data strobe offset count (obsolete)

  WRC         0  Write retry count

  RTL         0  Recovery time limit (ms)

Caching (SBC) [ca] mode page:

  IC          0  Initiator control

  ABPF        0  Abort pre-fetch

  CAP         0  Caching analysis permitted

  DISC        0  Discontinuity

  SIZE        0  Size enable

  WCE         1  Write cache enable

  MF          0  Multiplication factor

  RCD         0  Read cache disable

  DRRP        0  Demand read retention priority

  WRP         0  Write retention priority

  DPTL        0  Disable pre-fetch transfer length

  MIPF        0  Minimum pre-fetch

  MAPF        0  Maximum pre-fetch

  MAPFC       0  Maximum pre-fetch ceiling

  FSW         0  Force sequential write

  LBCSS       0  Logical block cache segment size

  DRA         0  Disable read ahead

  NV_DIS      0  Non-volatile cache disable

  NCS         0  Number of cache segments

  CSS         0  Cache segment size

Control [co] mode page:

  TST         0  Task set type

  TMF_ONLY    0  Task management functions only

  D_SENSE     0  Descriptor format sense data

  GLTSD       1  Global logging target save disable

  RLEC        0  Report log exception condition

  QAM         0  Queue algorithm modifier

  QERR        0  Queue error management

  RAC         0  Report a check

  UA_INTLCK   0  Unit attention interlocks control

  SWP         0  Software write protect

  ATO         0  Application tag owner

  TAS         0  Task aborted status

  AUTOLOAD    0  Autoload mode

  BTP        -1  Busy timeout period (100us)

  ESTCT      30  Extended self test completion time (sec)

```

----------

## flash49

Ich hatte ein ziemlich ähnliches Problem als ich den neuen 2.6.23er Kernel getestet habe.(Ich fahre jetzt wieder eine 2.6.22er gentoo kernel.)

Bei mir blieb mein Rechner aber auch fast stehen (extremes Ruckeln), wenn ich eine schwer lesbare CD/DVD eingelegt habe. Passiert das bei dir auch, oder ist nur die Festplatte das Problem?

----------

## xfuser4

Also mir scheint das Problem auf die Festplatte beschränkt zu sein. Wie gesagt - das Problem ist bei mir auch schon länger da als 2.6.23...

Das komische ist, was so alles ruckelt. Exaile kann z.B. meistens noch problemlos weiterspielen, während Sachen, die mit der GUI (bzw. Tastatur / Maus) zu tun haben, oft ins lahmen geraten. Wenn es mal besonders heftig ist (das ist beim Auslagern immer so), dann krieg ich nicht mal eine Text-Konsole unter meine Kontrolle und muss die Kiste abschalten...

----------

## Klaus Meier

Schon mal unter einem anderen BS geteste? Eventuell ist die Platte platt.

----------

## flash49

 *xfuser4 wrote:*   

> Also mir scheint das Problem auf die Festplatte beschränkt zu sein. Wie gesagt - das Problem ist bei mir auch schon länger da als 2.6.23...
> 
> Das komische ist, was so alles ruckelt. Exaile kann z.B. meistens noch problemlos weiterspielen, während Sachen, die mit der GUI (bzw. Tastatur / Maus) zu tun haben, oft ins lahmen geraten.

 

Hört sich fast wie ein IRQ Konflikt an. Sowas hatte ich schon sehr lange nicht mehr. Damals hatten sich 2 pci Karten den selben IRQ Teilen müssen, was eigendlich für PCI kein Problem mehr sein sollte. Gestört haben sich Platte und Videokarte dennoch (Videoaussetzer bei der Aufnahme auf Platte). Damals half umstecken der Karte. Was sagt den: 

```
cat /proc/interrupts
```

 *xfuser4 wrote:*   

> Wenn es mal besonders heftig ist (das ist beim Auslagern immer so), dann krieg ich nicht mal eine Text-Konsole unter meine Kontrolle und muss die Kiste abschalten...

 

Wenn meinem Rechner der Speicher ausgeht und erstmal angefangen hat zu "trashen"(ständiges ein- und wieder auslagern auf Platte) ist das genauso.

Was viel interessannter ist: Was passiert wenn du nur die Platte belastest, z.B. mit 

```
cat /dev/sda >/dev/null
```

Wenn mit der Platte und dem Controller alles in Ordnung ist, dann sollte man es kaum bemerken.

----------

## xfuser4

Ein IRQ-Problem ist es nicht, da die IRQs alle unterschiedlich sind.

Beim "cat /dev/sda >/dev/null" werden nur andere Prozesse lahm, die auf die Platte zugreifen (will ich z.B. Firefox starten, startet er sehr zögerlich). Wobei das natürlich auch nicht anders zu erwarten ist...

Das mit dem Thrashing ist soweit auch einzusehen...

Ich hab ein wenig den Eindruck, dass es immer dann problematisch ist, wenn er auf besonders viele unterschiedliche Dateien zugreift (was er ja z.B. bei verschiedenen Portage-Sachen gerne tut).

----------

## obrut<-

genau dieses thema wird hier https://forums.gentoo.org/viewtopic-t-482731.html auch schon seit einiger zeit diskutiert. eine allgemeingültige lösung gibts dort jedoch auch noch nicht. bei einigen haben einige der tips jedoch linderung gebracht.

----------

## kurt

hallo,

deaktiviere mal CONFIG_X86_IO_APIC das hat früher bei den singl porcesoren auch genützt.

gruss

kurt

----------

## alien

Was sagt eigentlich 

```

cat /sys/block/<X>/queue/scheduler

```

?

<X> aus {hda, hdb, sda, sdb}

Alles Gute!

----------

## AROK

Hallo,

da ich auch dieses Problem habe, hänge ich mich mal hier an   :Confused: 

Bei mir sieht das hier schon bedenklich aus:

```

hdparm -iT /dev/sda

/dev/sda:

 Model=WDC WD5000ABYS-01TNA0                   , FwRev=12.01C01, SerialNo=     WD-WCAPW2530000

 Config={ HardSect NotMFM HdSw>15uSec SpinMotCtl Fixed DTR>5Mbs FmtGapReq }

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

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

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

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

 PIO modes:  pio0 pio3 pio4

 DMA modes:  mdma0 mdma1 mdma2

 UDMA modes: udma0 udma1 udma2 udma3 udma4 udma5

 AdvancedPM=no WriteCache=enabled

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

 * signifies the current active mode

 Timing cached reads:   5758 MB in  2.00 seconds = 2880.79 MB/sec

```

Kein DMA aktiv? oder hat das bei SATA Platten nichts zu sagen?

Mein Kernel ist ein 2.6.23-gentoo-r8, die PLatte hängt am Intel ICH9 und als Treiber habe ich AHCI. 

EDIT: Habe update auf den 24.er gemacht und auch die APIC OPtion von oben deaktiviert, hat aber nichts geändert.

Eine Platte hab ich auch mal an den anderen Controller gehängt, war aber auch genau das gleiche wie zuvor. 

```

cat /sys/block/sda/queue/scheduler

noop [cfq]

```

```

sdparm -al /dev/sda

    /dev/sda: ATA       WDC WD5000ABYS-0  12.0

    Direct access device specific parameters: WP=0  DPOFUA=0

Read write error recovery [rw] mode page:

  AWRE        1  Automatic write reallocation enabled

  ARRE        1  Automatic read reallocation enabled

  TB          0  Transfer block

  RC          0  Read continuous

  EER         0  Enable early recovery

  PER         0  Post error

  DTE         0  Data terminate on error

  DCR         0  Disable correction

  RRC         0  Read retry count

  COR_S       0  Correction span (obsolete)

  HOC         0  Head offset count (obsolete)

  DSOC        0  Data strobe offset count (obsolete)

  WRC         0  Write retry count

  RTL         0  Recovery time limit (ms)

Caching (SBC) [ca] mode page:

  IC          0  Initiator control

  ABPF        0  Abort pre-fetch

  CAP         0  Caching analysis permitted

  DISC        0  Discontinuity

  SIZE        0  Size enable

  WCE         1  Write cache enable

  MF          0  Multiplication factor

  RCD         0  Read cache disable

  DRRP        0  Demand read retention priority

  WRP         0  Write retention priority

  DPTL        0  Disable pre-fetch transfer length

  MIPF        0  Minimum pre-fetch

  MAPF        0  Maximum pre-fetch

  MAPFC       0  Maximum pre-fetch ceiling

  FSW         0  Force sequential write

  LBCSS       0  Logical block cache segment size

  DRA         0  Disable read ahead

  NV_DIS      0  Non-volatile cache disable

  NCS         0  Number of cache segments

  CSS         0  Cache segment size

Control [co] mode page:

  TST         0  Task set type

  TMF_ONLY    0  Task management functions only

  D_SENSE     0  Descriptor format sense data

  GLTSD       1  Global logging target save disable

  RLEC        0  Report log exception condition

  QAM         0  Queue algorithm modifier

  QERR        0  Queue error management

  RAC         0  Report a check

  UA_INTLCK   0  Unit attention interlocks control

  SWP         0  Software write protect

  ATO         0  Application tag owner

  TAS         0  Task aborted status

  AUTOLOAD    0  Autoload mode

  BTP        -1  Busy timeout period (100us)

  ESTCT      30  Extended self test completion time (sec)

```

Die Kopierperformance zwischen meinen PLatten liegt tlw.  bei 5-6 MB/s. Die Anderen Platten habe ich hier der Übersicht wegen nicht aufgeführt, da sich die Ausgaben nicht nennenswert unterschieden. Außer bei sdb ist  *Quote:*   

> *udma5 

  angegeben.[/b]

Das kann man wirklich nur grausam nennen   :Sad: 

Die Prozessorlasst beim Kopieren geht auch auf 100% und somit kann ich währenddessen nicht weiterarbeiten. 

Für jegliche sachdienliche Hinweise bin ich dankbar!  

Viele Grüße

AROK

----------

## Cenrim

meiner erfahrung nach ist der libata piix teh fuck, aber ordentlich.

ich hab ihn ne weile regelmäßig mal wieder ausprobiert und mit ner ICH4-M ("00:1f.1 IDE interface: Intel Corporation 82801DBM (ICH4-M) IDE Controller (rev 01)" in nem HP compaq nx7000) drück das den plattendurchsatz auf ~3 bis 6 MB/s - die platte schafft locker 30MB/s¹ mit dem 'alten'.

meine Workstation auf arbeit (Dell Prec 380, ICH7, 2,8GHz DualCore em64t, 1GB RAM) ist mir damit regelmäßig beim brennen über IDE fast stehengeblieben!

hat ne weile gebraucht, bis ich den grund gefunden hab   :Smile: 

AHCI dagegen is an sich  schon ne tolle: offener standard, hotplug, ncq,... 

(s.auch http://linux-ata.org/driver-status.html#ahci)

sehr chic insgesamt und läuft wunderbar mit CONFIG_ATA_AHCI  - nur halt kein PATA.

dafür rate ich dann zu dem alten _nicht_-libata-PIIX, macht seine sache wunderbar

probiers ma aus.

¹) kernel-ausgabe beim resume vom suspend2disc

----------

## AROK

Hallo,

Meine Config:

```

# SCSI device support

--

# CONFIG_SCSI_FC_ATTRS is not set

# CONFIG_SCSI_ISCSI_ATTRS is not set

# CONFIG_SCSI_SAS_LIBSAS is not set

# CONFIG_SCSI_SRP_ATTRS is not set

# CONFIG_SCSI_LOWLEVEL is not set

CONFIG_ATA=y

# CONFIG_ATA_NONSTANDARD is not set

CONFIG_ATA_ACPI=y

[b]CONFIG_SATA_AHCI=y[/b]

# CONFIG_SATA_SVW is not set

[b]CONFIG_ATA_PIIX=y[/b]

# CONFIG_SATA_MV is not set

# CONFIG_SATA_NV is not set

# CONFIG_PDC_ADMA is not set

# CONFIG_SATA_QSTOR is not set

CONFIG_SATA_PROMISE=y

CONFIG_SATA_SX4=y

CONFIG_SATA_SIL=y

CONFIG_SATA_SIL24=y

# CONFIG_SATA_SIS is not set

# CONFIG_SATA_ULI is not set

CONFIG_SATA_VIA=y

CONFIG_SATA_VITESSE=y

# CONFIG_SATA_INIC162X is not set

CONFIG_PATA_ACPI=y

# CONFIG_PATA_ALI is not set

# CONFIG_PATA_AMD is not set

# CONFIG_PATA_ARTOP is not set

# CONFIG_PATA_ATIIXP is not set

# CONFIG_PATA_CMD640_PCI is not set

# CONFIG_PATA_CMD64X is not set

# CONFIG_PATA_CS5520 is not set

# CONFIG_PATA_CS5530 is not set

# CONFIG_PATA_CS5535 is not set

# CONFIG_PATA_CS5536 is not set

# CONFIG_PATA_CYPRESS is not set

# CONFIG_PATA_EFAR is not set

# CONFIG_ATA_GENERIC is not set

# CONFIG_PATA_HPT366 is not set

# CONFIG_PATA_HPT37X is not set

# CONFIG_PATA_HPT3X2N is not set

# CONFIG_PATA_HPT3X3 is not set

# CONFIG_PATA_IT821X is not set

# CONFIG_PATA_IT8213 is not set

CONFIG_PATA_JMICRON=y

# CONFIG_PATA_TRIFLEX is not set

# CONFIG_PATA_MARVELL is not set

# CONFIG_PATA_MPIIX is not set

# CONFIG_PATA_OLDPIIX is not set

# CONFIG_PATA_NETCELL is not set

# CONFIG_PATA_NS87410 is not set

# CONFIG_PATA_NS87415 is not set

# CONFIG_PATA_OPTI is not set

# CONFIG_PATA_OPTIDMA is not set

# CONFIG_PATA_PDC_OLD is not set

# CONFIG_PATA_RADISYS is not set

# CONFIG_PATA_RZ1000 is not set

# CONFIG_PATA_SC1200 is not set

# CONFIG_PATA_SERVERWORKS is not set

# CONFIG_PATA_PDC2027X is not set

# CONFIG_PATA_SIL680 is not set

# CONFIG_PATA_SIS is not set

# CONFIG_PATA_VIA is not set

# CONFIG_PATA_WINBOND is not set

CONFIG_MD=y

CONFIG_BLK_DEV_MD=m

CONFIG_MD_LINEAR=m                                

```

```
# lspci

00:00.0 Host bridge: Intel Corporation DRAM Controller (rev 02)

00:01.0 PCI bridge: Intel Corporation PCI Express Root Port (rev 02)

00:1a.0 USB Controller: Intel Corporation USB UHCI Controller #4 (rev 02)

00:1a.1 USB Controller: Intel Corporation USB UHCI Controller #5 (rev 02)

00:1a.2 USB Controller: Intel Corporation USB UHCI Controller #6 (rev 02)

00:1a.7 USB Controller: Intel Corporation USB2 EHCI Controller #2 (rev 02)

00:1c.0 PCI bridge: Intel Corporation PCI Express Port 1 (rev 02)

00:1c.4 PCI bridge: Intel Corporation PCI Express Port 5 (rev 02)

00:1c.5 PCI bridge: Intel Corporation PCI Express Port 6 (rev 02)

00:1d.0 USB Controller: Intel Corporation USB UHCI Controller #1 (rev 02)

00:1d.1 USB Controller: Intel Corporation USB UHCI Controller #2 (rev 02)

00:1d.2 USB Controller: Intel Corporation USB UHCI Controller #3 (rev 02)

00:1d.7 USB Controller: Intel Corporation USB2 EHCI Controller #1 (rev 02)

00:1e.0 PCI bridge: Intel Corporation 82801 PCI Bridge (rev 92)

00:1f.0 ISA bridge: Intel Corporation LPC Interface Controller (rev 02)

00:1f.2 SATA controller: Intel Corporation 6 port SATA AHCI Controller (rev 02)

00:1f.3 SMBus: Intel Corporation SMBus Controller (rev 02)

01:00.0 VGA compatible controller: nVidia Corporation G80 [GeForce 8800 GTS] (rev a2)

03:00.0 SATA controller: JMicron Technologies, Inc. JMicron 20360/20363 AHCI Controller (rev 02)

03:00.1 IDE interface: JMicron Technologies, Inc. JMicron 20360/20363 AHCI Controller (rev 02)

```

die Festplatten sind SATA Platten und laufen über den AHCI Treiber. Die CDROMS haben IDE und dafür hab ich den CONFIG_ATA_PIIX=y drin.

Verstehe ich dich richtig, dass du denkst der CONFIG_ATA_PIIX bremst meine SATA Platten? 

VG AROK

----------

## AROK

Mir fiel gerade auf, dass ich ja nur den AHCI und den Jmicron (da hängen ja die CDROMS dran) brauche. Alle anderen hab ich jetzt raus geworfen. Und voilà:

```
hdparm -iT /dev/sda

/dev/sda:

 Model=WDC WD5000ABYS-01TNA0                   , FwRev=12.01C01, SerialNo=     WD-WCAPW2530000

 Config={ HardSect NotMFM HdSw>15uSec SpinMotCtl Fixed DTR>5Mbs FmtGapReq }

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

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

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

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

 PIO modes:  pio0 pio3 pio4

 DMA modes:  mdma0 mdma1 mdma2

 UDMA modes: udma0 udma1 udma2 udma3 udma4 udma5 *udma6

 AdvancedPM=no WriteCache=enabled

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

 * signifies the current active mode

 Timing cached reads:   7930 MB in  2.00 seconds = 3968.68 MB/sec

```

udma6   :Very Happy: 

Die Transferrate war bei einem 1. Test bei 20MB/s. Besser aber noch nicht ausreichend. Werde mal weitere Tests machen. 

Danke für den Tip!

Hat sich leider als Positiver Ausreißer entpuppt. Weiterhin Lahm  bei <10mb/s :Sad: 

----------

## Cenrim

entweder das, oder was ich dachte, dass der ATA_PIIX sich auch die SATAplatten gekrallt hat, können tut der nämlich auch das (deswegen weder P noch S vorn dran).

wobei die ICH9 ja gar kein PATA mehr hat.

wer weiß, wer weiß, kernel-kram is ne ganze menge voodoo  :Wink: 

ich könnte den ma wieder ausprobieren, aber die xen-sources sind nciht so neu, dass es interessant wäre.

----------

## Mr. Anderson

Hatte hier ein ganz ähnliches Problem mit nem ICH4 (noch keinerlei S-ATA). Es hat geholfen, mit IDEDISK_MULTI_MODE und IDEPCI_SHARE_IRQ herumzuspielen. Habe nun selbst IDEDISK_MULTI_MODE=y und IDEPCI_SHARE_IRQ=n. Perfekt läuft es nicht, aber ganz erheblich besser.

----------

## ChrisJumper

Hallo, einfach nur weil es gerade paast.

Ich verwende einen 2.6.25-Kernel und hattet die in letzter Zeit immer Probleme eine DVD zu schauen zuerst dachte ich es sei ein neuer Kopierschutz und bemerkte erst sehr viel später das Filme die Immer liefen, ruckelten. Nach einer langen Suche traf ich auf den Thread und wurde darauf aufmerkam das die libata "Verantwortlich" ist. linux-ata.org/faq.html#combined

Die Symptome waren dieselben wie mit deaktivierendem DMA. Letztlich half ein umstellen des IDE-Controllers im Bios auf AHCI.

 *linux-ata.org wrote:*   

> Recommended (where BIOS permits): Change BIOS IDE mode from "legacy" or "combined" mode to "AHCI" (recommended), "RAID" or "native".

 

Allerdings verkraftet das mein Dualbootwindows-V. nicht und ich muss das immer Ändern wenn was anderes Booten möchte. Aber das ist nicht so schlimm.

Motherboard: Asus P5 Deluxe

```
 SATA controller: Intel Corporation 82801HR/HO/HH (ICH8R/DO/DH) 6 port SATA AHCI Controller (rev 02)
```

----------

## schachti

Man kann Windows im Nachhinein den entsprechenden Treiber unterschieben - Anleitungen dazu finden sich über google, das Ganze ist allerdings nicht ganz so einfach und klappt nicht immer. Am einfachsten ist es, erst AHCI einzuschalten und dann Windows zu installieren. Für Dich jetzt natürlich zu spät, aber bei der nächsten Neuinstallation evtl. ein hilfreicher Hinweis.   :Wink: 

----------

## Aldo

 *schachti wrote:*   

> Am einfachsten ist es, erst AHCI einzuschalten und dann Windows zu installieren. 

 

Vor dem Problem stand ich letztens auch: Win-XP ist aber so blöd, während der Installation dann keine Platten zu finden.

Läßt sich also nicht auf Platten im AHCI-Mode installieren.

----------

## schachti

Für Windows XP brauchst Du dazu eine Treiberdiskette - damit geht's dann auch.

----------

## firefly

oder den Treiber mit z.b. nlite (http://www.german-nlite.de/) in die Setup-CD von XP einbinden.

----------

