qemu-devel
[Top][All Lists]
Advanced

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

Re: [Qemu-devel] [PATCH 6/9] vhost-scsi: new device supporting the tcm_v


From: Asias He
Subject: Re: [Qemu-devel] [PATCH 6/9] vhost-scsi: new device supporting the tcm_vhost Linux kernel module
Date: Wed, 29 May 2013 17:27:31 +0800
User-agent: Mutt/1.5.21 (2010-09-15)

On Wed, May 29, 2013 at 05:05:31PM +0800, Wenchao Xia wrote:
> 于 2013-5-28 17:00, Wenchao Xia 写道:
> >于 2013-5-28 16:33, Asias He 写道:
> >>On Tue, May 28, 2013 at 10:01:14AM +0200, Paolo Bonzini wrote:
> >>>Il 28/05/2013 09:13, Wenchao Xia ha scritto:
> >>>>>>From: Nicholas Bellinger <address@hidden>
> >>>>>>
> >>>>>>The WWPN specified in configfs is passed to "-device vhost-scsi-pci".
> >>>>>>The tgpt field of the SET_ENDPOINT ioctl is obsolete now, so it is
> >>>>>>not
> >>>>>>available from the QEMU command-line.  Instead, I hardcode it to
> >>>>>>zero.
> >>>>>>
> >>>>Hi, Paolo
> >>>>   Any document about how to config it correctly in configfs, before
> >>>>invoking qemu with the WWPN number?
> >>>
> >>>Unfortunately no, but vhost-scsi doesn't have many knobs (unlike
> >>>iSCSI for example) so it's quite simple.  Here is an example:
> >>>
> >>>cd /sys/kernel/config/target
> >>>mkdir -p core/fileio_0/fileio
> >>>echo 'fd_dev_name=/home/pbonzini/test.img,fd_dev_size=5905580032' >
> >>>core/fileio_0/fileio/control
> >>>echo 1 > core/fileio_0/fileio/enable
> >>>mkdir -p vhost/naa.600140554cf3a18e/tpgt_0/lun/lun_0
> >>>cd vhost/naa.600140554cf3a18e/tpgt_0
> >>>ln -sf ../../../../../core/fileio_0/fileio/ lun/lun_0/virtual_scsi_port
> >>>echo naa.60014053226f0388 > nexus
> >>>
> >>>The "nexus" value is the initiator WWN.  naa.600140554cf3a18e is the
> >>>target WWN that you have to pass to "-device vhost-scsi-pci".
> >>>
> >>>Paolo
> >>
> >>For me, I always use targetcli utils instead of the sysfs interface.
> >>targetcli in F18 has vhost support now.
> >>
> >   Thanks very much for above information, I'll try it for test.
> >
>   I have done a basic test of vhost-scsi, following is the result I'd
> like to post, generally it seems fine:
> 
> Result:
>   fdisk/mkfs: fdisk can find it, mke2fs works fine.
>   mount: can mount it.
>   file I/O: dd 90M zero to a file in that disk succeed.
> 
> Issues:
>   1) in fdisk -l, sometime timeout with dmesg "end_request: I/O error,
> dev  fd0, sector 0", I guess it is caused by nested KVM that failed
> to kick host kernel?

Did you run without nested KVM?

>   2) in fdisk -l, it shows 512 bytes larger than the parameter I
> specified in fd_dev_size parameter in configfs on host.(shows
> 104858112 bytes, see the invocation script below)

Does targetcli give you the correct size? Also, to narrow the issue down,
you can try other backstores, e.g block or ramdisk.

> ENV:
>  nested KVM:
> 
>                        RH6.4
> (Qemu Virtual CPU 1.5.50, Linux 3.10.0.rc3)
>                           |  (100M vhost-scsi hooked with file backend)
>                        RH6.4
> (Common KVM processer, Linux 3.10.0.rc3,
> qemu-system-x86_64 1.5.50+, 6a4e17711442849bf2cc731ccddef5a2a2d92d29,
> seabios 1.7.2.2, e9725dd76d5d7212cb4a97fd18ff2599538955cf)
>                           |
>                       Fefora 18
> (Intel Xeon X5650, Linux version 3.8.11-200.fc18.x86_64,
>  QEMU emulator version 1.2.2)
> 
> Invocation details:
>   On RH6.4 host:
>   1  with root, execute following script to prepare configfs system:
> 
> FILEIO=fileio_1
> IMAGE=/home/xiawenc/Work/qemu/test/test1.raw
> SIZE=104857600
> QEMU_WWPN=naa.600140554cf3a1fe
> NEXUS=naa.60014053226f03f8
> 
> mkdir -p /sys/kernel/config/target/core/$FILEIO/fileio
> echo "fd_dev_name=$IMAGE,fd_dev_size=$SIZE" >
> /sys/kernel/config/target/core/$FILEIO/fileio/control
> echo 1 > /sys/kernel/config/target/core/$FILEIO/fileio/enable
> 
> mkdir -p /sys/kernel/config/target/vhost/$QEMU_WWPN/tpgt_0/lun/lun_0
> ln -sf /sys/kernel/config/target/core/$FILEIO/fileio/ 
> /sys/kernel/config/target/vhost/$QEMU_WWPN/tpgt_0/lun/lun_0/virtual_scsi_port
> echo $NEXUS > /sys/kernel/config/target/vhost/$QEMU_WWPN/tpgt_0/nexus
> 
>   2 invoke qemu, test_guest_RH64.qcow2 is a pre-made disk containing
> RH6.4 system:
> 
> x86_64-softmmu/qemu-system-x86_64     --enablem 1024 -drive
> file=/mnt/nfs/test_guest_RH64.qcow2,if=ide,cache=writethrough -vnc
> 0.0.0.0:10 -L mybios/ -device
> vhost-scsi-pci,wwpn=naa.600140554cf3a1fe,event_idx=off
> 
> 
> -- 
> Best Regards
> 
> Wenchao Xia
> 

-- 
Asias



reply via email to

[Prev in Thread] Current Thread [Next in Thread]