On Wed, Oct 13, 2010 at 11:08:23AM +0200, BenoƮt Knecht wrote:
> Package: qemubuilder
> Version: 0.62
> Severity: normal
> Tags: patch
>
> I'm using qemubuilder to emulate an armel system on an amd64 machine.
> The speed of the block devices in the emulated environment is terribly
> low (packages are downloaded at a few hundred bytes per second only, and
> reading the package database takes forever). This leads to lots of
> "lsi_scsi: error: Unimplemented message 0x0c" and "task kjournald:22 blocked
> for more than 120 seconds." errors, and a very slow building process.
Hi,
I am also having problems with disk performance when emulating an amd64
builder in a real i386 box. Disk access becomes terribly slow with some of
those 'blocked for more than 120 seconds' messages and DMA errors, making
my amd64 builder unusable in practice.
> I'd like to propose the following three patches, that greatly improved
> performance in my case (maybe other setup won't see such a big
> performance improvement, but I don't think these changes can reduce
> performance in any case).
>
> The first patch makes qemu use writeback instead of writethrough for
> caching, and gets rid of the lsi_scsi and "blocked for more than 120
> seconds" errors.
>
> The second patch creates qcow2 images instead of the deprecated qcow, as
> it is supported since qemu-0.8.3.
Tested with these two first patches applied. Big success, thanks a lot.
While system is still slow, there is no trace of 'blocked for more than
120 seconds' nor DMA error messages.
> The last patch replaces ext3 with ext2 for the image filesystem, which
> should be faster because it doesn't need to write transactions in the
> journal.
With this change I had some problems. Did not really investigate, but I get
Loading, please wait...
-> qemu-pbuilder first-stage
mount: proc already mounted
[ 79.649780] ext3: No journal on filesystem on sdb
mount: wrong fs type, bad option, bad superblock on /dev/sdb,
missing codepage or helper program, or other error
In some cases useful info is found in syslog - try
dmesg | tail or so
I may need to refresh some things in orginal qemubuilder image.
Anyway, thanks a lot. First two changes at least make me have a minimally
working amd64 qemubuilder image.
Regards,
--
Agustin
--
To UNSUBSCRIBE, email to [email protected]
with a subject of "unsubscribe". Trouble? Contact [email protected]