Received: by 2002:ac0:a5a7:0:0:0:0:0 with SMTP id m36-v6csp2593012imm; Fri, 20 Jul 2018 01:08:32 -0700 (PDT) X-Google-Smtp-Source: AAOMgpcnAk8s/fSSSn7+WdXzzop6f5s9ywLpSVpo95tnhg/3/u+iCsu68irt+u3rVjQsl6wwANXG X-Received: by 2002:a63:6345:: with SMTP id x66-v6mr1107579pgb.43.1532074112477; Fri, 20 Jul 2018 01:08:32 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1532074112; cv=none; d=google.com; s=arc-20160816; b=reN3EskuP69DETSSQlWbeLJAlZkCrrUEBO9hNrhvXimeuT69E5OzgHZofJf2GdcCG0 xf80C954dlWso2k//t2lF3yEbQUB7DOZOxX30MAO3i8IY9IGwXH42UTWsboneNiiUSzl vkCWGDHQXrhBmmiJBkEHN2bediOILbuClz3USlNLLxqitnQu9SNvwzCDKo74eH4W4W8t g5YwEyfqJfURopCaIKjvBcxRQ+GBBG+Hursx3eaNlNhx8o4k0myw+9KYG6udmSUoOHQt //qBZOGDeg6RPSjoqOEdvJUNIhNQQfRJMXYtEjLHOrQTG+b41W8DDLsI7Nk+bjtxEwBB GdDA== 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 :content-language:in-reply-to:mime-version:user-agent:date :message-id:autocrypt:openpgp:from:references:cc:to:subject :arc-authentication-results; bh=5HIliCTArGEjHjRGGEmBh/Z7X4Ms0Scjso6V3SKqWS8=; b=JLbBM3vd1c8EM8WMgBVDTGpag/gwmq0FRDqdJPqa5J4XFLa7DT+m+hH/NZ67gwLX/9 PiZFH3Tz7Iq9iu230SC68yojrrjpXjsIYJIcerffpikfrDB7ErydpJ4CTveIoum3kWfY qeeQKaKB+diVpgypYhAX0aK+h5ccqRmN26fBl+mvl1n1V6geQnOJiQrBqJz4Xkj3sNNv mqVfnIfzwl8aw6zyAm5eKYX0msNS1Q2lWCIJuNOQEM1qsNd5vmu4IU9CrM5ryuLotRnH 59dZjOVJo8lPRq9F22dC+CPe8QnYM833Ho2VdO7D34dJx1amgqOdlvuZa1b3CY9alqUz b2Xw== 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 l33-v6si1140520pld.514.2018.07.20.01.08.17; Fri, 20 Jul 2018 01:08:32 -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 S1727529AbeGTIyB (ORCPT + 99 others); Fri, 20 Jul 2018 04:54:01 -0400 Received: from mx3-rdu2.redhat.com ([66.187.233.73]:37734 "EHLO mx1.redhat.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1727139AbeGTIyB (ORCPT ); Fri, 20 Jul 2018 04:54:01 -0400 Received: from smtp.corp.redhat.com (int-mx05.intmail.prod.int.rdu2.redhat.com [10.11.54.5]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.redhat.com (Postfix) with ESMTPS id 3EF0D402B032; Fri, 20 Jul 2018 08:06:56 +0000 (UTC) Received: from [10.36.117.156] (ovpn-117-156.ams2.redhat.com [10.36.117.156]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 0B97B16870; Fri, 20 Jul 2018 08:06:54 +0000 (UTC) Subject: Re: [PATCH v3 2/6] KVM: X86: Implement PV IPIs in linux guest To: Wanpeng Li Cc: Radim Krcmar , LKML , kvm , Vitaly Kuznetsov References: <1530598891-21370-1-git-send-email-wanpengli@tencent.com> <1530598891-21370-3-git-send-email-wanpengli@tencent.com> <20180719162826.GB11749@flask> <1357a0b5-0cd8-8cb5-6c61-c9662219bed0@redhat.com> From: Paolo Bonzini Openpgp: preference=signencrypt Autocrypt: addr=pbonzini@redhat.com; prefer-encrypt=mutual; keydata= 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 Message-ID: <2a7a78b3-cc4e-de17-ee5d-6f6582683d34@redhat.com> Date: Fri, 20 Jul 2018 10:06:52 +0200 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.8.0 MIME-Version: 1.0 In-Reply-To: Content-Type: text/plain; charset=utf-8 Content-Language: en-US Content-Transfer-Encoding: 7bit X-Scanned-By: MIMEDefang 2.79 on 10.11.54.5 X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.5.16 (mx1.redhat.com [10.11.55.5]); Fri, 20 Jul 2018 08:06:56 +0000 (UTC) X-Greylist: inspected by milter-greylist-4.5.16 (mx1.redhat.com [10.11.55.5]); Fri, 20 Jul 2018 08:06:56 +0000 (UTC) for IP:'10.11.54.5' DOMAIN:'int-mx05.intmail.prod.int.rdu2.redhat.com' HELO:'smtp.corp.redhat.com' FROM:'pbonzini@redhat.com' RCPT:'' Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 20/07/2018 07:58, Wanpeng Li wrote: >> >> We could keep the cluster size of 128, but it would be more complicated >> to do the left shift in the first "else if". If the limit is 64, you >> can keep the two arguments in the hypercall, and just pass 0 as the >> "high" bitmap on 64-bit kernels. > As David pointed out, we need to scale to higher APIC IDs. The offset is enough to scale to higher APIC IDs. It's just an optimization to allow 128 CPUs per hypercall instead of 64 CPUs. But actually you can use __uint128_t on 64-bit machines, I forgot about that. With u64 on 32-bit and __uint128_t on 64-bit, you can do 64 CPUs per hypercall on 32-bit and 128 CPUs per hypercall on 64-bit. I will add > the cpu id to apic id transfer in the for loop. How about: > kvm_hypercall2(KVM_HC_SEND_IPI, ipi_bitmap, vector); directly. In > addition, why need to pass the 0 as the "high" bitmap even if for 128 > vCPUs case?