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 debian-bugs-dist-requ...@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org