Received: by 10.223.185.116 with SMTP id b49csp2875009wrg; Mon, 12 Feb 2018 17:08:24 -0800 (PST) X-Google-Smtp-Source: AH8x226j726r7ubDhcyEotpAhHILnIJqB225rzbWL5aNjXBEhN2/uV+UNp/AICuJYahEfQaqHJ6p X-Received: by 10.101.83.76 with SMTP id w12mr10384127pgr.95.1518484104230; Mon, 12 Feb 2018 17:08:24 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1518484104; cv=none; d=google.com; s=arc-20160816; b=WkIXaQme5xrqmqkNZOnBfgL96oljTPZ18X171tLnUFZK0KW9VGY/wZUwJYFdh7fRvq m8kra01QmTetRqKtVW8xSYevhf3Vl46Xc+L+cY1myQC2VbaHETZR9uweBXJ+oeNNgKKi F6hMTDYnC/Zs6u4R5lvXe5InuYJ5hfVw50U54OCKjmnI5fnJpiTBT0Z3AY4AsXDciyfS ZwPqlMGZd684cveRmif0VbWtP3IJYs1ra5wSBRJhiEepewRCAAYluDg5hGTfK+BD1a0l NHTA2inql5lYujam3dMfoZV1BIaUt2KBg4jOv4v/edXxuD2/5b1BNeBamA8BV/RW3Z7i yS2Q== 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 :dkim-signature:arc-authentication-results; bh=xRK0+Z7bhfkf+7t8P2812jPlBmVRTFLVRFBnJ7Rf5zk=; b=NBU7+i7rMsRfvWMpg2ow/n+yFkqLmhMNg5+wWS2S8GALJt3kZCD8TfB3yIEgp5IPpa pyLsetkGryb62xNCYlIDDCmntSp1iwaxHFoARCM0cANiyDEhQPAnL+OGVSLGPxtUrnpA y4HXck72cOX1N7ckISdFadCVlUNniyw+9EUnTEVALNzavVpaYH1J1w9OGwNMudTSwKnU 4llhBUci2vmGCy3dXq/K6bnaeGDpFiH5GaPn+1vEfcLf0RRVnEcoWsFVlxh4gUVXTfuf KOV0vEeH7MNLMizbkb6Mj4T9IRwk189FCMa0xcDA0NLfHQIconXrX4KO+b+7WG2+I5MZ wYow== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@gmail.com header.s=20161025 header.b=b85KF+ku; 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=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id a12si4298542pgq.440.2018.02.12.17.08.10; Mon, 12 Feb 2018 17:08:24 -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; dkim=pass header.i=@gmail.com header.s=20161025 header.b=b85KF+ku; 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=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S933090AbeBMBFt (ORCPT + 99 others); Mon, 12 Feb 2018 20:05:49 -0500 Received: from mail-pg0-f65.google.com ([74.125.83.65]:45675 "EHLO mail-pg0-f65.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S932736AbeBMBFr (ORCPT ); Mon, 12 Feb 2018 20:05:47 -0500 Received: by mail-pg0-f65.google.com with SMTP id e11so2777569pgq.12; Mon, 12 Feb 2018 17:05:47 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id; bh=xRK0+Z7bhfkf+7t8P2812jPlBmVRTFLVRFBnJ7Rf5zk=; b=b85KF+kutteA1OGm7HNhxdr2nfNrDIopzm7WooM3MIeloiwC3oJn+6plMFGyPlGo40 hERWmxKGfOWfWZFYBEjGdccMd1McTx0JnGq8f3t+Mtc2mXhr5Cswz3qQmnneB1DeApoC QeS7IcOdwxVa/VgF5q1OuaHeMGid4Sgk6i/wa6iJopvgVp89VyH8QLCP7tzq8OLl5sW+ DzhlXnC4b1KdOG3aeVJHrZLoYirG0spGOYY2W1QhK43ajpeBPqKZCXlM0DA37qiv111Q 2jKpk2PFxn6htEhBOh4Aq/XnffMgF/nvyC8pjpZkIkNa7zERK9mLGrMptPqn3ttxdIzg qWUg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id; bh=xRK0+Z7bhfkf+7t8P2812jPlBmVRTFLVRFBnJ7Rf5zk=; b=PFEMyEbzmIJ5gn5lUK//BNlZ0cYdUCbtaEBjFbBN+soI2GxF3g+vyMHm/rPiIQZMrM 8blYVdkVs4LDtWkssyoqFVwegdzXqKN1vNciNWFBI1LSTrTzx95RVq/afFPrj+bscRkC 2+dvwXY9OU6b5XyGtwax8P6cwVXiXOcI0KeOit4GVbNIJp04AO0SXC4wkXfSYEVSChvh OKsKrRl8uJDoqL2AFzg3iB07Jz+Qwtfr1fb1pWiyY5KueWWVjBL4JZ+GcDUQYfwkOPRe vxe2tbcovecQST3LPQ8YJh2v/aHlZsZLyPcpO+HT9AeF0v/yx2/EsaqEMTfE3BzlMQJk npSQ== X-Gm-Message-State: APf1xPAOkRfjUTE0gVEmv14aqzNchJa+OmptBKsdA1N7lyfv5kQ3WX/b fe4cMNsVX6is6E7DmGIQltBBig== X-Received: by 10.99.177.67 with SMTP id g3mr11124168pgp.410.1518483946844; Mon, 12 Feb 2018 17:05:46 -0800 (PST) Received: from localhost.localdomain ([203.205.141.123]) by smtp.googlemail.com with ESMTPSA id p4sm24500416pgn.81.2018.02.12.17.05.44 (version=TLS1_2 cipher=ECDHE-RSA-AES128-SHA bits=128/128); Mon, 12 Feb 2018 17:05:46 -0800 (PST) From: Wanpeng Li X-Google-Original-From: Wanpeng Li To: linux-kernel@vger.kernel.org, kvm@vger.kernel.org Cc: Paolo Bonzini , =?UTF-8?q?Radim=20Kr=C4=8Dm=C3=A1=C5=99?= , Eduardo Habkost Subject: [PATCH v4 0/3] KVM: Introduce dedicated vCPUs hint KVM_HINTS_DEDICATED Date: Tue, 13 Feb 2018 09:05:39 +0800 Message-Id: <1518483942-14741-1-git-send-email-wanpengli@tencent.com> X-Mailer: git-send-email 2.7.4 Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org This patchset introduces dedicated vCPUs(vCPU pinning, and there is no vCPU over-commitment) hint KVM_HINTS_DEDICATED, it has two users now: 1) Waiman Long mentioned that: Generally speaking, unfair lock performs well for VMs with a small number of vCPUs. Native qspinlock may perform better than pvqspinlock if there is vCPU pinning and there is no vCPU over-commitment. 2) vCPUs are very unlikely to get preempted when they are the only task running on a CPU. PV TLB flush is slower that the native flush in that case. v3 -> v4: * update feature bit document v2 -> v3: * a separate table for CPUID[0x40000001].EDX bits * a new kvm_hint_has_feature macro v1 -> v2: * update to KVM_HINTS_DEDICATED Wanpeng Li (3): KVM: Introduce dedicated vCPUs hint KVM_HINTS_DEDICATED KVM: X86: Choose qspinlock when dedicated vCPUs available KVM: X86: Don't use PV TLB flush with dedicated vCPUs and steal time disabled Documentation/virtual/kvm/cpuid.txt | 15 +++++++++++++-- arch/mips/include/asm/kvm_para.h | 5 +++++ arch/powerpc/include/asm/kvm_para.h | 5 +++++ arch/s390/include/asm/kvm_para.h | 5 +++++ arch/x86/include/asm/kvm_para.h | 6 ++++++ arch/x86/include/uapi/asm/kvm_para.h | 8 ++++++-- arch/x86/kernel/kvm.c | 18 ++++++++++++++++-- include/asm-generic/kvm_para.h | 5 +++++ include/linux/kvm_para.h | 5 +++++ 9 files changed, 66 insertions(+), 6 deletions(-) -- 2.7.4