Received: by 10.192.165.148 with SMTP id m20csp379092imm; Fri, 20 Apr 2018 00:17:00 -0700 (PDT) X-Google-Smtp-Source: AIpwx48SHoLPIU/H6urIyhHGa3ZxDBvcRXSiWEfFAjmWDBDrDPxVL1nxqPUG5OIQ8btD9SnJxgND X-Received: by 10.99.165.3 with SMTP id n3mr7504608pgf.19.1524208620145; Fri, 20 Apr 2018 00:17:00 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1524208620; cv=none; d=google.com; s=arc-20160816; b=I7gJXN5aNBESkDFsVTafikwOlJpIUzuXpVkKMT9rxePaCnWHwg86C0/3VWlPhwwRPJ CX1SLFCoOW4jc9tJxQ4o+s7VoGdB7LRScL2Rh6qh1FuEooVJ42czIGFrEiFUq2K0pbZr dmdqSovZhjlqktV+2FMgo0QubRuFGQ4pO2UKhVDXgecnqinxoZc4eZhaQTvUEoMq211G xnGervq8MdXW1KHNLOTE0dEPHn7NrIEkBc5b6nzJhwkZqKgNKIEaeez+N3tYsz6k1QNX Uei461VVoQtkjBEpxJwkrigQ9SEMoxGn2sGJwSx4v2N+sG6F3GeM/sf+YD6fP5muJCSV +ILg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding:mime-version :organization:references:in-reply-to:message-id:subject:cc:to:from :date:arc-authentication-results; bh=6eUfBmP1oKXdzDbpcD5k3u/GbSwtIYem9vmgFcS6EPE=; b=GpSCoOgk0haDXA/y/bJKjU/JACsKQhMkmutZ/X27DLx+cWpn9dJHumYLj2tMa4ky4L MdR3DdQpelx8oQ1Ui3x6TDPP8b2UqQCHkppQxk1M2ahU25j6TP1Uo/SdLS6gqh5t+jOF nMHAOZ+J2hp0HhR90u7x72+M5/fcP9J/U8wE4yPEot+0lzSII6NZUPPvmrYJdTYcq+6J EJG+nYU7fwx89EXctPA73rKJBORa3HPaF+7qaLo9aiv035fLxe9z7PP+ZfYXeK/d8eKF bnT+ncgXCiOdCgqxKS0Nive/YseZgIiGroCRaHLJHGQWr76pIIB+wtWXBiUZObDasZdF 42ag== 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; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=redhat.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id bb4-v6si493597plb.169.2018.04.20.00.16.45; Fri, 20 Apr 2018 00:17:00 -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; 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=redhat.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753743AbeDTHPn convert rfc822-to-8bit (ORCPT + 99 others); Fri, 20 Apr 2018 03:15:43 -0400 Received: from mx3-rdu2.redhat.com ([66.187.233.73]:50730 "EHLO mx1.redhat.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1753508AbeDTHPl (ORCPT ); Fri, 20 Apr 2018 03:15:41 -0400 Received: from smtp.corp.redhat.com (int-mx03.intmail.prod.int.rdu2.redhat.com [10.11.54.3]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.redhat.com (Postfix) with ESMTPS id 11A2C4305D00; Fri, 20 Apr 2018 07:15:41 +0000 (UTC) Received: from gondolin (dhcp-192-222.str.redhat.com [10.33.192.222]) by smtp.corp.redhat.com (Postfix) with ESMTP id AEF9810B0F20; Fri, 20 Apr 2018 07:15:39 +0000 (UTC) Date: Fri, 20 Apr 2018 09:15:37 +0200 From: Cornelia Huck To: Wanpeng Li Cc: linux-kernel@vger.kernel.org, kvm@vger.kernel.org, Paolo Bonzini , Radim =?UTF-8?B?S3LEjW3DocWZ?= , Tonny Lu , Christian Borntraeger , Janosch Frank Subject: Re: [PATCH v2] KVM: Extend MAX_IRQ_ROUTES to 4096 for all archs Message-ID: <20180420091537.1c6cb06b.cohuck@redhat.com> In-Reply-To: <1524185248-51744-1-git-send-email-wanpengli@tencent.com> References: <1524185248-51744-1-git-send-email-wanpengli@tencent.com> Organization: Red Hat GmbH MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8BIT X-Scanned-By: MIMEDefang 2.78 on 10.11.54.3 X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.5.16 (mx1.redhat.com [10.11.55.5]); Fri, 20 Apr 2018 07:15:41 +0000 (UTC) X-Greylist: inspected by milter-greylist-4.5.16 (mx1.redhat.com [10.11.55.5]); Fri, 20 Apr 2018 07:15:41 +0000 (UTC) for IP:'10.11.54.3' DOMAIN:'int-mx03.intmail.prod.int.rdu2.redhat.com' HELO:'smtp.corp.redhat.com' FROM:'cohuck@redhat.com' RCPT:'' Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Thu, 19 Apr 2018 17:47:28 -0700 Wanpeng Li wrote: > From: Wanpeng Li > > Our virtual machines make use of device assignment by configuring > 12 NVMe disks for high I/O performance. Each NVMe device has 129 > MSI-X Table entries: > Capabilities: [50] MSI-X: Enable+ Count=129 Masked-Vector table: BAR=0 offset=00002000 > The windows virtual machines fail to boot since they will map the number of > MSI-table entries that the NVMe hardware reported to the bus to msi routing > table, this will exceed the 1024. This patch extends MAX_IRQ_ROUTES to 4096 > for all archs, in the future this might be extended again if needed. > > Cc: Paolo Bonzini > Cc: Radim Krčmář > Cc: Tonny Lu > Cc: Cornelia Huck > Signed-off-by: Wanpeng Li > Signed-off-by: Tonny Lu > --- > v1 -> v2: > * extend MAX_IRQ_ROUTES to 4096 for all archs > > include/linux/kvm_host.h | 6 ------ > 1 file changed, 6 deletions(-) > > diff --git a/include/linux/kvm_host.h b/include/linux/kvm_host.h > index 6930c63..0a5c299 100644 > --- a/include/linux/kvm_host.h > +++ b/include/linux/kvm_host.h > @@ -1045,13 +1045,7 @@ static inline int mmu_notifier_retry(struct kvm *kvm, unsigned long mmu_seq) > > #ifdef CONFIG_HAVE_KVM_IRQ_ROUTING > > -#ifdef CONFIG_S390 > #define KVM_MAX_IRQ_ROUTES 4096 //FIXME: we can have more than that... What about /* might need extension/rework in the future */ instead of the FIXME? As far as I understand, 4096 should cover most architectures and the sane end of s390 configurations, but will not be enough at the scarier end of s390. (I'm not sure how much it matters in practice.) Do we want to make this a tuneable in the future? Do some kind of dynamic allocation? Not sure whether it is worth the trouble. > -#elif defined(CONFIG_ARM64) > -#define KVM_MAX_IRQ_ROUTES 4096 > -#else > -#define KVM_MAX_IRQ_ROUTES 1024 > -#endif > > bool kvm_arch_can_set_irq_routing(struct kvm *kvm); > int kvm_set_irq_routing(struct kvm *kvm,