Hi, Andreas > -----Original Message----- > From: Andreas Färber [mailto:afaer...@suse.de] > Sent: Tuesday, May 21, 2013 7:50 PM > To: Gonglei (Arei) > Cc: kw...@redhat.com; qemu-devel@nongnu.org; Wangzhenguo; Luonengjun; > Huangweidong (Hardware); Bo Yang > Subject: Re: [Qemu-devel] IDE disk FLUSH take more than 30 secs, the SUSE > guest reports "lost interrupt and the file system becomes read-only" > > Hi, > > Am 21.05.2013 09:12, schrieb Gonglei (Arei): > > In the case of physical hard disk's speed which processing IO (when grouping > RAID) is very slow, I encountered a problem. > > I dd big file in SUSE virtual machine, the command is > > linux:/ # dd if=/dev/zero of=./info bs=1M count=5000;sync > > > > but finally I get those message: > > linux:~ # dmesg > > [ 174.804114] ata1: lost interrupt (Status 0x50) > > [ 174.812305] end_request: I/O error, dev sda, sector 12085270 > > [ 174.812309] Buffer I/O error on device sda2, logical block 984530 > > [ 174.812310] lost page write due to I/O error on sda2 > > [ 174.813268] Aborting journal on device sda2. > > [ 174.828330] journal commit I/O error > > [ 174.828373] ext3_abort called. > > [ 174.828375] EXT3-fs error (device sda2): ext3_journal_start_sb: Detected > aborted journal > > [ 174.828377] Remounting filesystem read-only > > [ 182.286424] __journal_remove_journal_head: freeing b_committed_data > > [ 182.286434] __journal_remove_journal_head: freeing b_committed_data > > [ 182.286442] __journal_remove_journal_head: freeing b_committed_data > > [ 182.286452] __journal_remove_journal_head: freeing b_committed_data > > [ 182.286472] __journal_remove_journal_head: freeing b_committed_data > > > > > > Through analysis, I found that because the system call the fdatasync > command in the Qemu over 30s, > > Could you share your QEMU command line being used on the host? In > particular I'm wondering about -drive's cache option used - I've only > seen issues with cache=unsafe so far. > That's OK. linux-XQiARZ:~ # ps -ef | grep qemu root 6303 1 2 14:04 ? 00:08:55 qemu-system-i386 -xen-domid 779 -chardev socket,id=libxl-cmd,path=/var/run/xen/qmp-libxl-779,server,nowait -mon chardev=libxl-cmd,mode=control -name suse -vnc 0.0.0.0:0 -serial pty -boot order=c -usb -usbdevice tablet -device usb-ehci,id=ehci -smp 2,maxcpus=2 -device rtl8139,id=nic0,netdev=net0,mac=00:16:3e:34:40:46 -netdev type=tap,id=net0,ifname=tap779.0,bridge=br0,script=/etc/xen/scripts/qemu-ifup,downscript=no -M xenfv -m 2040 -drive file=/dev/xen/blktap-2/tapdev0,if=ide,index=0,media=disk,format=raw
> Is it an upstream qemu-system-x86_64 or a SLES qemu-kvm? What version? My environment is xen-4.1.2+qemu-1.2.2- release + SLSE11SP1 Guest > > Regards, > Andreas > > > after the Guest's kernel thread detects the io transferation is timeout, > > went > to check IDE disk state. > > But the IDE disk status is 0x50, rather than the BSY status, and then > departed error process... > > > > the path of kernel's action is : > > scsi_softirq_done > > scsi_eh_scmd_add > > scsi_error_handler > > shost->transportt->eh_strategy_handler > > ata_scsi_error > > ap->ops->lost_interrupt > > ata_sff_lost_interrupt > > Finally, the file system becomes read-only. > > > > Why not set the IDE disk for the BSY status When 0xe7 command is executed > in the Qemu? > > Anyone know it? thanks! > > > > Best Regards! > > -Arei > > -- > SUSE LINUX Products GmbH, Maxfeldstr. 5, 90409 Nürnberg, Germany > GF: Jeff Hawn, Jennifer Guild, Felix Imendörffer; HRB 16746 AG Nürnberg