Re: C-states of Intel CPU's cause firewire transfer corruptions
Brought to you by:
aeb,
bencollins
From: Damien D. <dd...@do...> - 2012-08-08 14:58:05
|
Shawkat, On Wed, 2012-08-08 at 14:46 +0200, Nizamov Shawkat wrote: [snip] > Looking through the vendors site I found an application note > which blamed that newer Intel CPU's introduced so known C-states for > power consumption reduction. They claimed that even if a single core > of CPU gets into such state, not only its frequency, but the bandwidth > of buses will be reduced too! Being a little bit skeptic, I > nevertheless disabled these C-states. It turns out that disabling them > in BIOS is not enough, linux kernel loads module intel_idle which > re-enables these C-states. The solution is loading the kernel with > "intel_idle.max_cstate=0" option. Check in dmesg for the "intel_idle: > disabled" line to see if it worked. > > And it really solved both my problems - both USB2 and FW400 cameras > work on my workstation with practically saturation level transfer > speeds (more than 30MB/s) and without any corruptions! > > Hopefully it will help someone to fix their problem with firewire corruptions. The corruption of 1394 data (or at least IIDC data) when entering C1E and possibly other sleep states is a known issue. For 5 or 6 years, the very first thing I do when I buy a computer is disable all the C-states in the BIOS! But I was not aware that Linux could re-enable them; this is probably a feature of newer kernels. I will definitely keep your kernel option in mind in the future... Thanks for sharing :) -- Damien 高原 Douxchamps http://damien.douxchamps.net/ |