Re: [Qemu-devel] trim in windows guest witch virtio
Il 24/07/2013 02:53, Libaiqing ha scritto: Hi paolo, I test window guest with ide device with the following config,trim with ide drive failed. 1 The host fs is ext4 with discard option: /dev/sdb1 on /home/sdb type ext4 (rw,relatime,discard,data=ordered) 2 qemu config : ide drive with discard open x86_64-softmmu/qemu-system-x86_64 -enable-kvm -name win7 -M pc-0.15 -m 1024 -smp 2 -boot c -device piix3-usb-uhci,id=usb,bus=pci.0,addr=0x1.0x2 -drive file=/home/win7_base.qcow2,if=ide,index=0,format=qcow2,id=ad -drive file=/home/sdb/raw.img,if=ide,index=1,format=raw,id=hd,discard=on -monitor stdio -vga qxl -vnc :1 -device usb-tablet,id=input0 TRIM is supported only on -M pc-1.5 and -M pc. 3 In win7 guest,init drive d,fill it with files,then shift+del files 4 The file /home/sdb/raw.img does not become small,when listing with -s option. It seems that the windows ntfs does not send trim to ide controller. No IDE_DMA_TRIM request received. Note that this may not happen immediately. NTFS may send TRIM later. Is there any config wrong? Btw,I found the info from the URL: http://msdn.microsoft.com/en-us/library/windows/desktop/hh848053(v=vs.85).aspx Qemu can do the same thing like hyper-v with windows guest? I don't know, I never tested it with Windows guests. It looks like Windows 8 would not need a filter driver to do TRIM on SCSI disks (you could try with megasas, so that you do not need a driver for the HBA). Paolo
Re: [Qemu-devel] trim in windows guest witch virtio
Hi paolo, With -M pc,trim works well in windows guest with ide device and ahci bus. About the filter driver,you mean do something in windows virtio-scsi driver,let it send unmap command to qemu? Thanks baiqing. -Original Message- From: Paolo Bonzini [mailto:pbonz...@redhat.com] Sent: Wednesday, July 24, 2013 2:46 PM To: Libaiqing Cc: qemu-devel@nongnu.org Subject: Re: trim in windows guest witch virtio Il 24/07/2013 02:53, Libaiqing ha scritto: Hi paolo, I test window guest with ide device with the following config,trim with ide drive failed. 1 The host fs is ext4 with discard option: /dev/sdb1 on /home/sdb type ext4 (rw,relatime,discard,data=ordered) 2 qemu config : ide drive with discard open x86_64-softmmu/qemu-system-x86_64 -enable-kvm -name win7 -M pc-0.15 -m 1024 -smp 2 -boot c -device piix3-usb-uhci,id=usb,bus=pci.0,addr=0x1.0x2 -drive file=/home/win7_base.qcow2,if=ide,index=0,format=qcow2,id=ad -drive file=/home/sdb/raw.img,if=ide,index=1,format=raw,id=hd,discard=on -monitor stdio -vga qxl -vnc :1 -device usb-tablet,id=input0 TRIM is supported only on -M pc-1.5 and -M pc. 3 In win7 guest,init drive d,fill it with files,then shift+del files 4 The file /home/sdb/raw.img does not become small,when listing with -s option. It seems that the windows ntfs does not send trim to ide controller. No IDE_DMA_TRIM request received. Note that this may not happen immediately. NTFS may send TRIM later. Is there any config wrong? Btw,I found the info from the URL: http://msdn.microsoft.com/en-us/library/windows/desktop/hh848053(v=vs. 85).aspx Qemu can do the same thing like hyper-v with windows guest? I don't know, I never tested it with Windows guests. It looks like Windows 8 would not need a filter driver to do TRIM on SCSI disks (you could try with megasas, so that you do not need a driver for the HBA). Paolo
Re: [Qemu-devel] trim in windows guest witch virtio
Il 24/07/2013 09:52, Libaiqing ha scritto: Hi paolo, With -M pc,trim works well in windows guest with ide device and ahci bus. About the filter driver,you mean do something in windows virtio-scsi driver,let it send unmap command to qemu? Yes, it must trap the IOCTL_STORAGE_MANAGE_DATA_SET_ATTRIBUTES ioctl and convert it to a SCSI UNMAP command. But your link may suggest that it's only needed on Windows 8 (and Server 2012). Paolo Thanks baiqing.
Re: [Qemu-devel] trim in windows guest witch virtio
Il 23/07/2013 03:05, Libaiqing ha scritto: Hi paolo, Recently I test trim function,and it works well in linux guest with ext4 fs. How to test it in windows guest? I got some info like this: 1 windows7 can send discard command when the storage device is ssd; 2 find a tool like 'fstrim', 'TRIM' the volume manually. I think it only works with IDE and AHCI on Windows. You need a filter driver to send it on SCSI disks. Paolo
Re: [Qemu-devel] trim in windows guest witch virtio
Hi paolo, I test window guest with ide device with the following config,trim with ide drive failed. 1 The host fs is ext4 with discard option: /dev/sdb1 on /home/sdb type ext4 (rw,relatime,discard,data=ordered) 2 qemu config : ide drive with discard open x86_64-softmmu/qemu-system-x86_64 -enable-kvm -name win7 -M pc-0.15 -m 1024 -smp 2 -boot c -device piix3-usb-uhci,id=usb,bus=pci.0,addr=0x1.0x2 -drive file=/home/win7_base.qcow2,if=ide,index=0,format=qcow2,id=ad -drive file=/home/sdb/raw.img,if=ide,index=1,format=raw,id=hd,discard=on -monitor stdio -vga qxl -vnc :1 -device usb-tablet,id=input0 3 In win7 guest,init drive d,fill it with files,then shift+del files 4 The file /home/sdb/raw.img does not become small,when listing with -s option. It seems that the windows ntfs does not send trim to ide controller. No IDE_DMA_TRIM request received. Is there any config wrong? Btw,I found the info from the URL: http://msdn.microsoft.com/en-us/library/windows/desktop/hh848053(v=vs.85).aspx Qemu can do the same thing like hyper-v with windows guest? Thanks baiqing -Original Message- From: Paolo Bonzini [mailto:pbonz...@redhat.com] Sent: Tuesday, July 23, 2013 2:35 PM To: Libaiqing Cc: qemu-devel@nongnu.org Subject: Re: trim in windows guest witch virtio Il 23/07/2013 03:05, Libaiqing ha scritto: Hi paolo, Recently I test trim function,and it works well in linux guest with ext4 fs. How to test it in windows guest? I got some info like this: 1 windows7 can send discard command when the storage device is ssd; 2 find a tool like 'fstrim', 'TRIM' the volume manually. I think it only works with IDE and AHCI on Windows. You need a filter driver to send it on SCSI disks. Paolo