Port-xen archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: Dom0 starvs DomU



tg%gmplib.org@localhost (=?utf-8?Q?Torbj=C3=B6rn?= Granlund) writes:

>Please understand that I have yet to hit a (NetBSD release x Xen release
>x configuration) where compiling in Dom0 does not make DomU disk
>operations outragously slow.

WAPBL would only affect write operations anyway.

Here is what a DomU does when Dom0 is idle. The test
is just reading from the raw (virtual) disk which is
configured as a file on the host.

test# dd if=/dev/rxbd0e bs=64k count=1600 of=/dev/null
1600+0 records in
1600+0 records out
104857600 bytes transferred in 1.845 secs (56833387 bytes/sec)

A small test program simulates the 'compiler'.

% cat loop.c
int main()
{
        while (1) {
        }

        return 0;
}

Starting this program on the Dom0 now stops I/O on the DomU completely.
It's not just slow but any process accessing the disk is frozen.

wd0          0.00      0   0.00     0.00       0.00      0   0.00     0.00
wd0          0.00      0   0.00     0.00       0.00      0   0.00     0.00
wd0         31.66     92   0.12     2.85       0.00      0   0.12     0.00   <-- dd starts on DomU
wd0          0.00      0   0.00     0.00       6.58      6   0.00     0.04   <-- loop starts on Dom0
wd0          0.00      0   0.00     0.00       0.00      0   0.00     0.00
wd0         42.67      3   0.02     0.12      15.30      5   0.02     0.07   <-- loop stops on Dom0
wd0         32.08   1614   0.90    50.56      11.37     15   0.90     0.16
wd0         32.07   1452   0.71    45.48       0.00      0   0.71     0.00
wd0          0.00      0   0.00     0.00       0.00      0   0.00     0.00

Stopping the Dom0 endless loop lets I/O continue in the DomU.

Even a simple ls command that doesn't access already cached data just stops
in DomU, and it affects every DomU disk.

On Dom0 there is a kernel thread in state RUN but that doesn't take any CPU time.

    0    60 root       0 RUN        0:00  0.00%  0.00% xbdb1i0   [system]

This is the process that would serve the DomU disk. Normally top shows it as

    0    60 root       0 RUN        0:00  0.68%  0.68% xbdb1i0   [system]

or

    0    60 root       0 xbdb1i0    0:01  2.54%  2.54% xbdb1i0   [system]


N.B. the tests were done with NetBSD-current for Dom0 and DomU.


-- 
-- 
                                Michael van Elst
Internet: mlelstv%serpens.de@localhost
                                "A potential Snark may lurk in every tree."


Home | Main Index | Thread Index | Old Index