From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mx1.redhat.com (mx1.redhat.com [209.132.183.28]) by dpdk.org (Postfix) with ESMTP id C21565A4F for ; Tue, 22 Dec 2015 04:50:47 +0100 (CET) Received: from int-mx14.intmail.prod.int.phx2.redhat.com (int-mx14.intmail.prod.int.phx2.redhat.com [10.5.11.27]) by mx1.redhat.com (Postfix) with ESMTPS id CA609E708C for ; Tue, 22 Dec 2015 03:50:46 +0000 (UTC) Received: from pxdev.xzpeter.org (vpn1-6-183.pek2.redhat.com [10.72.6.183]) by int-mx14.intmail.prod.int.phx2.redhat.com (8.14.4/8.14.4) with ESMTP id tBM3ogCY006587 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=NO); Mon, 21 Dec 2015 22:50:44 -0500 Date: Tue, 22 Dec 2015 11:50:41 +0800 From: Peter Xu To: DPDK Dev Message-ID: <20151222035041.GA7532@pxdev.xzpeter.org> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline User-Agent: Mutt/1.5.24 (2015-08-30) X-Scanned-By: MIMEDefang 2.68 on 10.5.11.27 Subject: [dpdk-dev] [Question] How pmd virtio works without UIO? X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: patches and discussions about DPDK List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 22 Dec 2015 03:50:48 -0000 Hi, I got a question related to how virtio pmd driver work without UIO layer. I see that in virtio PMD driver, DPDK will first try to init the device using UIO interfaces. If it fails, it will try to init by manipulating IO ports directly (see virtio_resource_init()). For the ioport case, is it okay to do it like this? E.g., in eth_virtio_dev_init(), we are resetting the virtio device, however, this device should still be owned by virtio-pci driver in the kernel. How is that working? Did I miss anything? Thanks in advance. Peter