D-state processes on i2o servers [message #7884] |
Sun, 29 October 2006 23:48 |
iurly
Messages: 2 Registered: October 2006
|
Junior Member |
|
|
Hi,
we are running Virtuozzo on a quad-core 3.20 GHz Xeon with 8 GBs of RAM and a SmartRAID V i2o controller.
The system hosts about a dozen VPSes used as individual software factories which we use to edit and compile a software package.
I don't know if simultaneous compilations of a project way bigger than the Linux kernel are a likely scenario of a Virtuozzo/OpenVZ
installation, but given the available resources I would expect reasonable performance.
What happens is that (apparently when the workload is high) the machine freezes for 5-10 seconds, then starts working again, then freezes again, and so on. These hiccups render the system unusable (and/or people frustrated) for several minutes.
I have been trying to trace this, and it seems like when this happens there are several processes stuck in the "D" state, waiting on "__wait_on_buffer". Somehow, this seems related to intense I/O activity on the disk.
However, even the most innocent processes (vi for instance) suffer from this problem, which is again very frustrating because one would expect at least lightweight programs to be responsive, but this is not the case.
We are running a 2.6.8-022stab070.4-enterprise kernel with i2o_block v.0.9 (don't know about the version of other i2o modules).
I also noticed the following lines in dmesg:
mtrr: type mismatch for dd000000,1000000 old: uncachable new: write-combining
i2o: could not enable write combining MTRR
Could this be the cause of the problem?
Could this behavior be related to the fault pointed out in
(http://forum.openvz.org/index.php?&t=msg&th=914)?
Note that in our case the machine does not hang forever, it just freezes for a few seconds.
Has this been solved in recent kernels?
If anyone has any idea on how to fix (or improve) this, it would be highly appreciated!
Thank you,
Gerlando
|
|
|