From mboxrd@z Thu Jan 1 00:00:00 1970 From: Tetsuya Mukawa Subject: Re: [PATCH v2 2/5] EAL: Add new EAL "--qtest-virtio" option Date: Tue, 16 Feb 2016 10:32:39 +0900 Message-ID: <56C27C37.6020807@igel.co.jp> References: <1453374478-30996-6-git-send-email-mukawa@igel.co.jp> <1455075613-3605-3-git-send-email-mukawa@igel.co.jp> <56C183C4.4090105@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit To: "Tan, Jianfeng" , dev@dpdk.org Return-path: Received: from mail-pf0-f171.google.com (mail-pf0-f171.google.com [209.85.192.171]) by dpdk.org (Postfix) with ESMTP id 52A24ADA2 for ; Tue, 16 Feb 2016 02:32:42 +0100 (CET) Received: by mail-pf0-f171.google.com with SMTP id q63so95477797pfb.0 for ; Mon, 15 Feb 2016 17:32:42 -0800 (PST) In-Reply-To: <56C183C4.4090105@intel.com> List-Id: patches and discussions about DPDK List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" On 2016/02/15 16:52, Tan, Jianfeng wrote: > Hi Tetsuya, > > On 2/10/2016 11:40 AM, Tetsuya Mukawa wrote: >> To work with qtest virtio-net PMD, virtual address that maps hugepages >> should be between (1 << 31) to (1 << 44). This patch adds one more >> option > > Is there any reference about this limitation? And is it also true for > 32 bit machine? > Hi Jianfeng, 44bit limitation is come from virtio legacy device spec. The queue address register of virtio device is 32bit width. And we should set page number to this register. As a result, EAL memory should be under 44 bits. I only support virtio modern device with this patch series. So we can relax this limitation a bit. (Next limitation may be 47 bits. It seems it is come from QEMU implementation.) But I guess 44bit limitation is still not so hard, also we can leave a possibility to support legacy device. 31bits limitation is come from current memory mapping of QTest QEMU guest. Here is. * ------------------------------------------------------------ * Memory mapping of qtest quest * ------------------------------------------------------------ * 0x00000000_00000000 - 0x00000000_3fffffff : not used * 0x00000000_40000000 - 0x00000000_40000fff : virtio-net(BAR1) * 0x00000000_40001000 - 0x00000000_40ffffff : not used * 0x00000000_41000000 - 0x00000000_417fffff : virtio-net(BAR4) * 0x00000000_41800000 - 0x00000000_41ffffff : not used * 0x00000000_42000000 - 0x00000000_420000ff : ivshmem(BAR0) * 0x00000000_42000100 - 0x00000000_42ffffff : not used * 0x00000000_80000000 - 0xffffffff_ffffffff : ivshmem(BAR2) Thanks, Tetsuya > Thanks, > Jianfeng