Received: by 2002:a25:ad19:0:0:0:0:0 with SMTP id y25csp6567487ybi; Sun, 21 Jul 2019 21:07:06 -0700 (PDT) X-Google-Smtp-Source: APXvYqxoIiKwCaHH81lsUkoFe+RfXXfW11omep3eFodc4ZzpkJGH6hS5z3pNbJ5P9Cm+hRUcQC/p X-Received: by 2002:a17:90a:898e:: with SMTP id v14mr74618730pjn.119.1563768426102; Sun, 21 Jul 2019 21:07:06 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1563768426; cv=none; d=google.com; s=arc-20160816; b=NqrAiErzFGlNRNap4xM468mv9ZMrc0UgdGqNcScE/9bPKO3I+2blojJwn0VazlPMK1 N81wPkdIcI2Ogq0HLTPqE2kUuoM2fTdY1osMRfPwkzOKsRj7iacFAWNpaUIZsy/UDyTo i/SFJuamAbBqCnjr2z36ghNLblcni7Q6EV7Pcrori6wiIkt8mhyfLESrkr0avwds7/H2 VgJMwW9WBMuyFGWmxhgUM09U4YqKwuBBMsvnTaFPwqmfIqvlAxTluJcjnnQ2KmusaTBd 0ErOI5QIlXao/rR6qSXxWUFZSMN9QLVtR+3kEq0+3QKYPe1+sDUALve6rXery9wr4vnW vFNA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:dkim-signature; bh=aAm6iRQPlrqd77BVpOEOx8I7+PSe0NwGfNRgqs6nZII=; b=0u5ZC8xWOdxOM4PUOc0x9Lv9Wrp+VH+726gl+/pldKzT47OR0tSjfm6EpFDa42I5yN XlQnZ2CXl2Gin4JrxMxdAek+edk97TTFdrYiZG+nWbAz3SOel43v4ZLglMTKycbs4PzV 3wvFyWt797pnkswMxQq+AKzkBBWKE3F8hUis1Kdg6TMATEYshzif7qTqiKPfXQrU/rxC Gc/7vmSkvvdESM7EfswYFSs/wgh65sYWXSReH3xfD8sFJpwQ+ISsX/QCL0K+Do0hfjlw Z1hTSuiK/4R6DEM08ASbaxS6srPfCCyywC5gmtfT8y6Zn2tdyoi+L0/FCp4D3/IBZV01 67Bw== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@bytedance-com.20150623.gappssmtp.com header.s=20150623 header.b=cDdCMvSv; 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; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=bytedance.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id p17si3194484pgm.238.2019.07.21.21.06.49; Sun, 21 Jul 2019 21:07:06 -0700 (PDT) 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; dkim=pass header.i=@bytedance-com.20150623.gappssmtp.com header.s=20150623 header.b=cDdCMvSv; 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; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=bytedance.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1727798AbfGVDWP (ORCPT + 99 others); Sun, 21 Jul 2019 23:22:15 -0400 Received: from mail-lf1-f67.google.com ([209.85.167.67]:37299 "EHLO mail-lf1-f67.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726749AbfGVDWP (ORCPT ); Sun, 21 Jul 2019 23:22:15 -0400 Received: by mail-lf1-f67.google.com with SMTP id c9so25461677lfh.4 for ; Sun, 21 Jul 2019 20:22:13 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bytedance-com.20150623.gappssmtp.com; s=20150623; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=aAm6iRQPlrqd77BVpOEOx8I7+PSe0NwGfNRgqs6nZII=; b=cDdCMvSvKcnIW2NfjF1EyVuXtQjnzbihephboKIpmrwDerjhDGgQKdb/SnbaEVfSee 4ukWvo0ljAj17DWU4/xeE1Z3yHnsUu93h7dVOcq+3QLg7tNXviQxtnwI9fT9mDmPSo68 Xo1e8bSuPtgjuLwBJxduxee6B0j21J4FQ2EBWYF6dFYIihonnxuWrYEGMtm39LnmeX+C 5UfrJiUfVYOqwWUnpnuxClsg8vmQx4roUu/yl4FQmsQORNKs+b05js9CpsV7JdaZ1Ecw kvEN1ynEMW7C+iX11ZeF1VC3ez/JQTlYhAQHK4gHyczkHflRb+Bgn7NcXb8dCA8hshDn kKgg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=aAm6iRQPlrqd77BVpOEOx8I7+PSe0NwGfNRgqs6nZII=; b=MkCf8Lw3e/RpGxWcN6W+6vyKD6XwuLHjdAB3F6ZoB7Z7Q5ALL8v46UxJ5Ew7qHxlWD On7FB7QADFmo9sCaSjIqXgvfX+2aNXm8xGCvE/9nfXsVzRV6F5mZOdKtUUw9QIkOjSK4 OHToaGmbkYjZZWGzBtWR0u0kmNwGDQRDTqHfLbEHir5H9MYxF5vmkUDgq9YPWY/vIZ/+ /fardJb63ASbmaemdZ/XnLQs60aKb3cjDHyBvek7j1eoYGXjC04WcseNnwLdL6IZVw3r X/JP4XIR9Xqgmx9LPy6AKC3HNf4VkGzeRpAKowkVUBj86HR+B4CFkU/MgpzdDNPYUhiW 5L5A== X-Gm-Message-State: APjAAAWCAH77aDzADZZfysJVDIBKYV0Mf4x11zso8+8LIkzmxLczpeRL r0U+4PF6I5XEElkKdYsreVtEhJI4F1f54rn21t2CWQ== X-Received: by 2002:a19:ca4b:: with SMTP id h11mr29019214lfj.162.1563765733032; Sun, 21 Jul 2019 20:22:13 -0700 (PDT) MIME-Version: 1.0 References: <20190719133135.32418-1-lifei.shirley@bytedance.com> <20190719110852-mutt-send-email-mst@kernel.org> In-Reply-To: <20190719110852-mutt-send-email-mst@kernel.org> From: =?UTF-8?B?5p2O6I+y?= Date: Mon, 22 Jul 2019 11:22:02 +0800 Message-ID: Subject: Re: [External Email] Re: [PATCH v1 0/2] virtio-mmio: support multiple interrupt vectors To: "Michael S. Tsirkin" , virtio-dev@lists.oasis-open.org Cc: linux-kernel@vger.kernel.org, Jason Wang , Pawel Moll , Suzuki K Poulose , Fam Zheng Content-Type: text/plain; charset="UTF-8" Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Fri, Jul 19, 2019 at 11:14 PM Michael S. Tsirkin wrote: > > On Fri, Jul 19, 2019 at 09:31:33PM +0800, Fei Li wrote: > > Hi, > > > > This patch series implements multiple interrupt vectors support for > > virtio-mmio device. This is especially useful for multiqueue vhost-net > > device when using firecracker micro-vms as the guest. > > > > Test result: > > With 8 vcpus & 8 net queues set, one vhost-net device with 8 irqs can > > receive 9 times more pps comparing with only one irq: > > - 564830.38 rxpck/s for 8 irqs on > > - 67665.06 rxpck/s for 1 irq on > > > > Please help to review, thanks! > > > > Have a nice day > > Fei > > > Interesting. The spec says though: > > 4.2.3.4 > Notifications From The Device > The memory mapped virtio device is using a single, dedicated interrupt signal, which is asserted when at > least one of the bits described in the description of InterruptStatus is set. This is how the device sends a > used buffer notification or a configuration change notification to the device. > Yes, the spec needs to be updated if we want to use mult-irqs. > > So I'm guessing we need to change the host/guest interface? Just to confirm, does the "the host/guest interface" you mentioned mean how to pass the irq information from the user space tool to guest kernel? In this patch, we do this by passing the [irq_start, irq_end] interface via setting guest kernel command line, that is done in vm_cmdline_set(). Also there is another way to do this: add two new registers describing irq info (irq_start & irq_end OR irq_start & irq_numbers) to the virtio config space. Which one do you prefer? > If true pls cc virtio-dev. Sure. > > Also, do we need to update dt bindings documentation? You mean the following doc? Sure. :) https://github.com/torvalds/linux/blob/master/Documentation/devicetree/bindings/virtio/mmio.txt Thanks for the review! Have a nice day Fei > > > > > Fam Zheng (1): > > virtio-mmio: Process vrings more proactively > > > > Fei Li (1): > > virtio-mmio: support multiple interrupt vectors > > > > drivers/virtio/virtio_mmio.c | 238 +++++++++++++++++++++++++++++++++++-------- > > 1 file changed, 196 insertions(+), 42 deletions(-) > > > > -- > > 2.11.0