DPDK patches and discussions
 help / color / mirror / Atom feed
From: "Liu, Changpeng" <changpeng.liu@intel.com>
To: Yuanhan Liu <yliu@fridaylinux.org>
Cc: "dev@dpdk.org" <dev@dpdk.org>
Subject: Re: [dpdk-dev] [PATCH] examples/vhost: introduce a new vhost-user-scsi sample application
Date: Fri, 7 Jul 2017 02:00:38 +0000	[thread overview]
Message-ID: <FF7FC980937D6342B9D289F5F3C7C2625B5961F0@SHSMSX103.ccr.corp.intel.com> (raw)
In-Reply-To: <20170707005035.GT11626@yliu-home>



> -----Original Message-----
> From: Yuanhan Liu [mailto:yliu@fridaylinux.org]
> Sent: Friday, July 7, 2017 8:51 AM
> To: Liu, Changpeng <changpeng.liu@intel.com>
> Cc: dev@dpdk.org
> Subject: Re: [PATCH] examples/vhost: introduce a new vhost-user-scsi sample
> application
> 
> On Thu, Jun 29, 2017 at 05:28:32PM +0800, Changpeng Liu wrote:
> > +.. note::
> > +    You must check whether you Qemu can support "vhost-user-scsi" or not,
> > +    the latest Qemu code is recommended.
> 
> You should specify the least QEMU version that supports vhost-user scsi here.

Okay, will add Qemu version and  commit ID.
> 
> > +
> > +Common Issues
> > +-------------
> > +
> > +* QEMU fails to allocate memory on hugetlbfs, with an error like the
> > +  following::
> > +
> > +      file_ram_alloc: can't mmap RAM pages: Cannot allocate memory
> > +
> > +  When running QEMU the above error indicates that it has failed to allocate
> > +  memory for the Virtual Machine on the hugetlbfs. This is typically due to
> > +  insufficient hugepages being free to support the allocation request. The
> > +  number of free hugepages can be checked as follows:
> > +
> > +  .. code-block:: console
> > +
> > +      cat /sys/kernel/mm/hugepages/hugepages-<pagesize>/nr_hugepages
> > +
> > +  The command above indicates how many hugepages are free to support
> QEMU's
> > +  allocation request.
> > +
> > +* vhost-user will not work with a QEMU version without shared memory
> mapping:
> > +
> > +  Make sure ``share=on`` QEMU option is given.
> 
> They are common pitfalls of vhost-user examples. You don't have to repeat
> it again here. Instead, you could add a link to the vhost-example doc and
> let this section only cover issues belong to vhost-user scsi.
> 
> > +* vhost_scsi can not start with block size 512 Bytes:
> > +
> > +  Currently DPDK vhost library was designed for NET device(althrough the APIs
> > +  are generic now), for 512 Bytes block device, Qemu BIOS(x86 BIOS Enhanced
> > +  Disk Device) will enumerate all block device and do some IO to those block
> > +  devices with 512 Bytes sector size. DPDK vhost library can not process such
> > +  scenarios(both BIOS and OS will enumerate the block device), so as a
> > +  workaround, the vhost_scsi example application hardcoded the block size
> > +  with 512 Bytes.
> 
> A bit confused here. You said we can not use 512 bytes while you hardcode it
> with 512 bytes?

Typo, hardcoded 4096 now.
> 
> > +static void
> > +scsi_task_build_sense_data(struct vhost_scsi_task *task, int sk,
> > +			   int asc, int ascq)
> > +{
> > +	uint8_t *cp;
> > +	int resp_code;
> > +
> > +	resp_code = 0x70; /* Current + Fixed format */
> 
> Could you add macros for those magic numbers? I saw quite a lot of them.
All the numbers are defined by SCSI specifications, I think this is okay, if you looked into kernel scsi module or
kernel LIO scsi target, they also used the specification numbers directly.
> 
> BTW, you might want to build it on a 32bit system. I think this patch
> won't build successfully on it.
I didn't build it with 32bit system before, I don't know the result.
> 
> 	--yliu

  reply	other threads:[~2017-07-07  2:01 UTC|newest]

Thread overview: 22+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-06-29  9:28 Changpeng Liu
2017-07-07  0:50 ` Yuanhan Liu
2017-07-07  2:00   ` Liu, Changpeng [this message]
2017-07-07  2:09     ` Yuanhan Liu
2017-07-08  4:14 ` [dpdk-dev] [PATCH v2] " Changpeng Liu
2017-07-07  4:48   ` Yuanhan Liu
2017-07-07  4:54     ` Liu, Changpeng
2017-07-08  5:21   ` [dpdk-dev] [PATCH v3] " Changpeng Liu
2017-07-07  5:07     ` Yuanhan Liu
2017-07-07  8:40       ` Hemant Agrawal
2017-07-07  9:44         ` Yuanhan Liu
2017-07-07 12:21     ` Thomas Monjalon
2017-07-08  2:53       ` Yuanhan Liu
2017-07-09 16:42     ` Thomas Monjalon
2017-07-12 14:49     ` Wodkowski, PawelX
2017-07-15  8:20     ` [dpdk-dev] [PATCH v4] " Changpeng Liu
2017-07-18 14:24       ` Thomas Monjalon
2017-07-19  0:20         ` Liu, Changpeng
2017-07-19  4:18           ` Thomas Monjalon
2017-07-19  4:24             ` Liu, Changpeng
2017-07-20  9:16       ` [dpdk-dev] [PATCH v5] " Changpeng Liu
2017-07-19 19:48         ` Yuanhan Liu

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=FF7FC980937D6342B9D289F5F3C7C2625B5961F0@SHSMSX103.ccr.corp.intel.com \
    --to=changpeng.liu@intel.com \
    --cc=dev@dpdk.org \
    --cc=yliu@fridaylinux.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).