Received: by 10.223.185.116 with SMTP id b49csp568364wrg; Fri, 23 Feb 2018 03:23:02 -0800 (PST) X-Google-Smtp-Source: AH8x225VXtmbBLV0ZWlmS1upE73OivwG60lAhWe0IKBOMENCXRXQ47Dg1rz7Wv+MU6g+Gvqtsb9h X-Received: by 2002:a17:902:50e:: with SMTP id 14-v6mr1413086plf.360.1519384982243; Fri, 23 Feb 2018 03:23:02 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1519384982; cv=none; d=google.com; s=arc-20160816; b=UeUxeWczLFnNrKejDXCNroVEFQK6eFYHXfUshXc/6h1kGReaFF2ck7itMrYVnEgPJY jpjAiGHEZr2ALxQ5yXedh4j2sMrsfuQZYQjY0H6bkpX4KOeePp/BbNUi1MplLJmmRrok 5ds5hqjuWrtmpwlcj2QGRcXmHE+ezKhCpAICBy4MHLg305jx1QMsirKNsKadGf9esqV/ UP8heliHJcH4kFW0pOd2iBksv+fillb1hykeSyKtWYwZFqGIu/Go/e1Fw6NqH+c1GS1J ImOJGrRrNOU3S+ysQeUI2bVRbmmBEMxDe162mfdIp7Dpecx39ZSod33uoBYifpD676vN U9PA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:message-id:date:subject:cc:to:from :arc-authentication-results; bh=yuCqFYzm6vLc3NEaJOtVXsGR+WuexKH/T1qEKt/OSao=; b=sj9PTljBuFH3AuidORr6Q8ihRWPVAUm/21WOwS+ZWy/Os/TV96s+forFqf3DwuTKU9 joGpX3EfPpu80dzi6CckAiCBZ2JlUDGj5CAq6I8qZF9bjetZnzeo4SA7QGdEfEODuxeG ZUsObZ42Gh34dDmLKQ/OJHuOUO/STHDLMPhO4xqEFe6avDnBXaRXpvtT6USL/yukwluX RhJWQ4EGXX5SWp9PyCSJjbvXGJLxYzonPaXXQniokuNO8hrw9qC3+v24Ly1vBmmnekHb e0SEIGz8KIytp1IJBo/HrIi0iwsdBfBUZO6YKbMrIelMaDYvvxVNR60cZ6Ct4GbH2sfc 1kjQ== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id m73si1674237pfj.131.2018.02.23.03.22.47; Fri, 23 Feb 2018 03:23:02 -0800 (PST) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751563AbeBWLTi (ORCPT + 99 others); Fri, 23 Feb 2018 06:19:38 -0500 Received: from mga04.intel.com ([192.55.52.120]:53962 "EHLO mga04.intel.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751317AbeBWLTh (ORCPT ); Fri, 23 Feb 2018 06:19:37 -0500 X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from orsmga007.jf.intel.com ([10.7.209.58]) by fmsmga104.fm.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 23 Feb 2018 03:19:36 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.47,383,1515484800"; d="scan'208";a="19758518" Received: from debian.sh.intel.com ([10.67.104.164]) by orsmga007.jf.intel.com with ESMTP; 23 Feb 2018 03:19:34 -0800 From: Tiwei Bie To: mst@redhat.com, virtualization@lists.linux-foundation.org, linux-kernel@vger.kernel.org, netdev@vger.kernel.org Cc: jasowang@redhat.com, wexu@redhat.com, jfreimann@redhat.com, tiwei.bie@intel.com Subject: [PATCH RFC 0/2] Packed ring for virtio Date: Fri, 23 Feb 2018 19:17:59 +0800 Message-Id: <20180223111801.15240-1-tiwei.bie@intel.com> X-Mailer: git-send-email 2.11.0 Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Hello everyone, This RFC implements a subset of packed ring which is described at https://github.com/oasis-tcs/virtio-docs/blob/master/virtio-v1.1-packed-wd08.pdf The code was tested with DPDK vhost (testpmd/vhost-PMD) implemented by Jens at http://dpdk.org/ml/archives/dev/2018-January/089417.html Minor changes are needed for the vhost code, e.g. to kick the guest. It's not a complete implementation, here is what's missing: - Device area and driver area - VIRTIO_RING_F_INDIRECT_DESC - VIRTIO_F_NOTIFICATION_DATA - Virtio devices except net are not tested - See FIXME in the code for more details Thanks! Best regards, Tiwei Bie Tiwei Bie (2): virtio: introduce packed ring defines virtio_ring: support packed ring drivers/virtio/virtio_ring.c | 699 ++++++++++++++++++++++++++++++++----- include/linux/virtio_ring.h | 8 +- include/uapi/linux/virtio_config.h | 18 +- include/uapi/linux/virtio_ring.h | 68 ++++ 4 files changed, 703 insertions(+), 90 deletions(-) -- 2.14.1