Received: by 2002:ab2:6857:0:b0:1ef:ffd0:ce49 with SMTP id l23csp306851lqp; Thu, 21 Mar 2024 01:32:04 -0700 (PDT) X-Forwarded-Encrypted: i=3; AJvYcCVCKMGQOiaNiOSGNhWkK6Psy7dsFsblHQAjYRVdg+RTJTAFh90SZOWv0Y9+Vh2MDFe79wtiNdwAA9/2x/15U5vGWCmBw3L+ZrUh0X6BKw== X-Google-Smtp-Source: AGHT+IHaNEgIX+HrXevT7HbZAEeUWCiSGxOiMkngU4z4rqZg4gz0IT/zK6ISAWnSTsdqd6VcqKkj X-Received: by 2002:a17:906:5948:b0:a46:bf6a:2a27 with SMTP id g8-20020a170906594800b00a46bf6a2a27mr7518638ejr.40.1711009923941; Thu, 21 Mar 2024 01:32:03 -0700 (PDT) ARC-Seal: i=2; a=rsa-sha256; t=1711009923; cv=pass; d=google.com; s=arc-20160816; b=Xjrh9n1dUXJZuYa+mKgEL0Y+o2MrI45qbcm7DQ5w1g5C14E+YlbjuAux5a/6wJ6RUU yC+bJyr398UBsGRWIFXKk60/ERQmeNWG5BAcGjISrm5KcW5KUXWY8lbvc9LxAB+q7JOv yd0OuSQkvreaB5qSDtbVkL5CqC+lSt3ypT73zBi+KeS3LvdXSMJjMR1Kfz1G8YAaxXQV N5LPYalh6PxhdtS9vo/l0HUFiOWMaIvxJbX5rRZKYCpRARwtiVy6zi/xnsvTDy89hcK8 doWz2gWt1c2PEXw0yfi8TllmocjHwwOoqtI19l3+moUW/WOQJ0kTG6qQCcKyJxKlqRcn WLfw== ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=content-transfer-encoding:mime-version:list-unsubscribe :list-subscribe:list-id:precedence:message-id:date:subject:cc:to :from:dkim-signature:precedence; bh=4y4z1WbAJjObghcOw14l3LhaD/LDb5HVnVDoPNdghx0=; fh=R1QYKlYOWhSdbzeq7BG0AqUFj1MK2KDcJ/5y1ofePCs=; b=T6qLcur3XASCr5hy66MuLV2SglcOKEHAr6YOJT18r0rmf2LzhpQ+iOdVpM8EusVHla a/ZQAYkpufRTfzauq9vyDb/UKrN5YkQNarXKjolIhmg05Tk0zp6eoQQe/PJQnHll3Ba0 6tyn+95nBjkFaiT05CDu8N/6czvcURz6gK/bNOtGKEMxF9Mdvq+u8sGeHl3uagmeae3A plcIRz3Lp7c1x+dbdckJ8F6GvFQFkpEoR1KPUotPGA34GJ1sfDE97PEjWQEbAF0x/JHL 2I+Qs8V2N7eYj8jMFH1O4TQwjmj6PyGhMTDj2WKOc8p68NcKT5iuPctPnlbaarwkL61d c+Aw==; dara=google.com ARC-Authentication-Results: i=2; mx.google.com; dkim=pass header.i=@yandex-team.ru header.s=default header.b=d9I+3wG3; arc=pass (i=1 spf=pass spfdomain=yandex-team.ru dkim=pass dkdomain=yandex-team.ru dmarc=pass fromdomain=yandex-team.ru); spf=pass (google.com: domain of linux-kernel+bounces-109782-linux.lists.archive=gmail.com@vger.kernel.org designates 147.75.80.249 as permitted sender) smtp.mailfrom="linux-kernel+bounces-109782-linux.lists.archive=gmail.com@vger.kernel.org"; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=yandex-team.ru Return-Path: Received: from am.mirrors.kernel.org (am.mirrors.kernel.org. [147.75.80.249]) by mx.google.com with ESMTPS id x22-20020a1709064a9600b00a463965d467si7070805eju.2.2024.03.21.01.32.03 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 21 Mar 2024 01:32:03 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel+bounces-109782-linux.lists.archive=gmail.com@vger.kernel.org designates 147.75.80.249 as permitted sender) client-ip=147.75.80.249; Authentication-Results: mx.google.com; dkim=pass header.i=@yandex-team.ru header.s=default header.b=d9I+3wG3; arc=pass (i=1 spf=pass spfdomain=yandex-team.ru dkim=pass dkdomain=yandex-team.ru dmarc=pass fromdomain=yandex-team.ru); spf=pass (google.com: domain of linux-kernel+bounces-109782-linux.lists.archive=gmail.com@vger.kernel.org designates 147.75.80.249 as permitted sender) smtp.mailfrom="linux-kernel+bounces-109782-linux.lists.archive=gmail.com@vger.kernel.org"; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=yandex-team.ru Received: from smtp.subspace.kernel.org (wormhole.subspace.kernel.org [52.25.139.140]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by am.mirrors.kernel.org (Postfix) with ESMTPS id B13691F23ADC for ; Thu, 21 Mar 2024 08:26:42 +0000 (UTC) Received: from localhost.localdomain (localhost.localdomain [127.0.0.1]) by smtp.subspace.kernel.org (Postfix) with ESMTP id 9CF5A657A7; Thu, 21 Mar 2024 08:26:33 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=yandex-team.ru header.i=@yandex-team.ru header.b="d9I+3wG3" Received: from forwardcorp1c.mail.yandex.net (forwardcorp1c.mail.yandex.net [178.154.239.200]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 564CB2AF18; Thu, 21 Mar 2024 08:26:24 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=178.154.239.200 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711009592; cv=none; b=BvgHDXAeFG9+ywatzoAgAywFxi6MMmXRd/PF1pfUL/FN5YFoE0jBH4GdjeqviXjP1Ckng4mN4E0/Osa/Tf0mMDKAlJaZa9uKh5QmTi4xBY7tu4pQOiBL6YLNkFUYIeojBpxzVW44qNdc+E2IyyCBPoXCZlC5OWirEzY8X55fNH8= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711009592; c=relaxed/simple; bh=o7eLeeb73ije49Oi1IJyOnTmSadKsQM6b8k54OUj5ME=; h=From:To:Cc:Subject:Date:Message-Id:MIME-Version; b=ilP98SwEEJ1krDgG1NdHR2NZYYk+/7MgywVnwsQMiAHCZUY6XFOc8SiRjVa580290Zxo5tlSxv95Fnii/JAqLBBc+1Uu+ZYKQRumXSdjyRawhNuDL/zTx3h1xqyKmWLOQFiCLxsYIKIEcVTVW9l3Pl3YQBsXBZxyik/P5AGqPOU= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=yandex-team.ru; spf=pass smtp.mailfrom=yandex-team.ru; dkim=pass (1024-bit key) header.d=yandex-team.ru header.i=@yandex-team.ru header.b=d9I+3wG3; arc=none smtp.client-ip=178.154.239.200 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=yandex-team.ru Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=yandex-team.ru Received: from mail-nwsmtp-smtp-corp-main-62.myt.yp-c.yandex.net (mail-nwsmtp-smtp-corp-main-62.myt.yp-c.yandex.net [IPv6:2a02:6b8:c12:400c:0:640:9907:0]) by forwardcorp1c.mail.yandex.net (Yandex) with ESMTPS id 3B20A60C14; Thu, 21 Mar 2024 11:24:58 +0300 (MSK) Received: from d-tatianin-nix.yandex-team.ru (unknown [2a02:6b8:b081:b674::1:39]) by mail-nwsmtp-smtp-corp-main-62.myt.yp-c.yandex.net (smtpcorp/Yandex) with ESMTPSA id oOB6eO0Il4Y0-TeYwma2u; Thu, 21 Mar 2024 11:24:57 +0300 Precedence: bulk X-Yandex-Fwd: 1 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yandex-team.ru; s=default; t=1711009497; bh=4y4z1WbAJjObghcOw14l3LhaD/LDb5HVnVDoPNdghx0=; h=Message-Id:Date:Cc:Subject:To:From; b=d9I+3wG3sJfM+lF+n68sGZ2T1AAbNEbyUZ/HzjHSXkwmFiX5tVYCC5rFC1mlitPpl hOxbRP/fmOWtfduXN+FYhwkZfV1V995Ezu9y0hv7YC1DkHHytkZelxaU/EeuUqHBC2 ZCMuLbNwZpD/va6Lm/suO312NsiVUxATCcCKnpWE= Authentication-Results: mail-nwsmtp-smtp-corp-main-62.myt.yp-c.yandex.net; dkim=pass header.i=@yandex-team.ru From: Daniil Tatianin To: Paolo Bonzini Cc: Daniil Tatianin , kvm@vger.kernel.org, linux-kernel@vger.kernel.org, yc-core@yandex-team.ru Subject: [PATCH] kvm_host: bump KVM_MAX_IRQ_ROUTE to 128k Date: Thu, 21 Mar 2024 11:24:42 +0300 Message-Id: <20240321082442.195631-1-d-tatianin@yandex-team.ru> X-Mailer: git-send-email 2.34.1 Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit We would like to be able to create large VMs (up to 224 vCPUs atm) with up to 128 virtio-net cards, where each card needs a TX+RX queue per vCPU for optimal performance (as well as config & control interrupts per card). Adding in extra virtio-blk controllers with a queue per vCPU (up to 192 disks) yields a total of about ~100k IRQ routes, rounded up to 128k for extra headroom and flexibility. The current limit of 4096 was set in 2018 and is too low for modern demands. It also seems to be there for no good reason as routes are allocated lazily by the kernel anyway (depending on the largest GSI requested by the VM). Signed-off-by: Daniil Tatianin --- include/linux/kvm_host.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/include/linux/kvm_host.h b/include/linux/kvm_host.h index 48f31dcd318a..10a141add2a8 100644 --- a/include/linux/kvm_host.h +++ b/include/linux/kvm_host.h @@ -2093,7 +2093,7 @@ static inline bool mmu_invalidate_retry_gfn_unsafe(struct kvm *kvm, #ifdef CONFIG_HAVE_KVM_IRQ_ROUTING -#define KVM_MAX_IRQ_ROUTES 4096 /* might need extension/rework in the future */ +#define KVM_MAX_IRQ_ROUTES 131072 /* might need extension/rework in the future */ bool kvm_arch_can_set_irq_routing(struct kvm *kvm); int kvm_set_irq_routing(struct kvm *kvm, -- 2.34.1