Received: by 2002:a25:c205:0:0:0:0:0 with SMTP id s5csp6323984ybf; Thu, 5 Mar 2020 18:10:35 -0800 (PST) X-Google-Smtp-Source: ADFU+vtf9pBATgqweVhT4jZ7kDiFITjn9hI9fBO1S/pJ7L1hqWOV4hZIOTgH5mZcRRfS4yihQoYa X-Received: by 2002:aca:815:: with SMTP id 21mr1087469oii.52.1583460634985; Thu, 05 Mar 2020 18:10:34 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1583460634; cv=none; d=google.com; s=arc-20160816; b=iL26SwR3ulpndEVfQ8nvMuioUx8AREP1lfkeGeOh687pX2kepZExyEUxAaKFrvC2m5 t82SBBJuKk9cdGT/cA9TUNKdYOaAchwzRjKDxK/y+6/8iI2Qoue/BTy1BgcfPgIaUVzG FD/R2++Vq8xIKSb9t/NXICGuxm+VcOTbnqbsFZe6imFO/MrpUY2YCpyTsMSQzBze3Ke3 or4IIRGlaeuz6Mv3porBUo+kUDYp0V4gEI+Ep0zgcPoU+WHtpZtaoSpG1XMhTLp/Z1qb iecLYOBmR/5R0zIyFXYFU+B+sCDG9H31srnOjGGiiSJHYUecR9JYxXhw8aRUa7XFKHdA ARaA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:message-id:from:cc:to:subject :content-transfer-encoding:mime-version:references:in-reply-to :user-agent:date:dkim-signature:dkim-filter; bh=u42XpQkEklwk2jgju0E0ou84vbvPEJiWthnbO8cPS3A=; b=B+gwvLbFC8BHS2jTmJpdMBwAHAP7Pz3IQTM3RMzH5LroPRF8I7vGC7xCBBjYM5g3sX ym6S5VgKvNR8DulfNkGVqtd6Jd8VsRIZ7HxQJ/h9prrVbOzIQfXCxGiQu/McdI0KXM1/ OHgCb7mjblwi3gr9oxr9JM7hbhzkqCgTj4M+Vh9oo9ZNSm2cXMTjeWPKGl+b0UTJ6GAs rw1W2ur5IpfX5QQYvJzokX2fImK9Fzv0UUchl/w5Tez7hrjUVgHAZ82iGNeCMQSEEFd6 jBDba7o53ZbBvkRNfI4yZnSDdRakzLyUdAS208M2Nm+8raIH5HBZEv/b2ggt1UseqPEH 8lvw== ARC-Authentication-Results: i=1; mx.google.com; dkim=fail header.i=@zytor.com header.s=2020022001 header.b=dVhLHqko; 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=zytor.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id 7si453701oiy.68.2020.03.05.18.10.22; Thu, 05 Mar 2020 18:10:34 -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=fail header.i=@zytor.com header.s=2020022001 header.b=dVhLHqko; 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=zytor.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726682AbgCFCJ7 (ORCPT + 99 others); Thu, 5 Mar 2020 21:09:59 -0500 Received: from terminus.zytor.com ([198.137.202.136]:47713 "EHLO mail.zytor.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726251AbgCFCJ6 (ORCPT ); Thu, 5 Mar 2020 21:09:58 -0500 Received: from [IPv6:2601:646:8600:3281:d841:929b:f37:3a31] ([IPv6:2601:646:8600:3281:d841:929b:f37:3a31]) (authenticated bits=0) by mail.zytor.com (8.15.2/8.15.2) with ESMTPSA id 02629Jmv816866 (version=TLSv1.3 cipher=TLS_AES_128_GCM_SHA256 bits=128 verify=NO); Thu, 5 Mar 2020 18:09:20 -0800 DKIM-Filter: OpenDKIM Filter v2.11.0 mail.zytor.com 02629Jmv816866 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=zytor.com; s=2020022001; t=1583460561; bh=u42XpQkEklwk2jgju0E0ou84vbvPEJiWthnbO8cPS3A=; h=Date:In-Reply-To:References:Subject:To:CC:From:From; b=dVhLHqkoS7wQ5iiiNvkSuJ7TeTy9eTtrM72qtwVXXmBWXvq6x/puyEvZ3QWgVOXJi H7CLZxQ0/bxM+BNhQqi+KAFnYuny7P7VlRi41ATfnDjvRgF/OSOMGT1wckQ4LKFs0O eQkPF/mSRKwk2d6aFiJt9FzzB28orhc0XG9UhxQy7okGS1hjo8G9LzeDq1uCWzhHEu Xa80YmRLKkhpa5d0myzE/8LYZ9ujCJ4E3uKB3JJhf98eqX9Qj7mUGy8DLFmPHwfxVH w1XDQIKVqD6XsghK7mkdIyrR9arhNGky2KqnQbarq1yEJHzrv7BZrUw12L1NRwZRdg KmSX8YiSAzz4A== Date: Thu, 05 Mar 2020 18:09:10 -0800 User-Agent: K-9 Mail for Android In-Reply-To: <82b7d2d8c75e4c80a7704ae43940392a@huawei.com> References: <82b7d2d8c75e4c80a7704ae43940392a@huawei.com> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Subject: Re: [PATCH] KVM: x86: small optimization for is_mtrr_mask calculation To: linmiaohe , Paolo Bonzini CC: "kvm@vger.kernel.org" , "linux-kernel@vger.kernel.org" , "x86@kernel.org" , "rkrcmar@redhat.com" , "sean.j.christopherson@intel.com" , "vkuznets@redhat.com" , "jmattson@google.com" , "joro@8bytes.org" , "tglx@linutronix.de" , "mingo@redhat.com" , "bp@alien8.de" From: hpa@zytor.com Message-ID: <9209A69A-899B-47A9-8483-E3E5F545D2C4@zytor.com> Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On March 5, 2020 6:05:40 PM PST, linmiaohe wrote: >Hi, >Paolo Bonzini wrote: >>On 05/03/20 03:48, linmiaohe wrote: >>> From: Miaohe Lin >>>=20 >>> We can get is_mtrr_mask by calculating (msr - 0x200) % 2 directly=2E >>> index =3D (msr - 0x200) / 2; >>> - is_mtrr_mask =3D msr - 0x200 - 2 * index; >>> + is_mtrr_mask =3D (msr - 0x200) % 2; >>> if (!is_mtrr_mask) >>> *pdata =3D vcpu->arch=2Emtrr_state=2Evar_ranges[index]=2Ebase; >>> else >>>=20 >> >>If you're going to do that, might as well use ">> 1" for index instead >of "/ 2", and "msr & 1" for is_mtrr_mask=2E >> > >Many thanks for suggestion=2E What do you mean is like this ? > > index =3D (msr - 0x200) >> 1; > is_mtrr_mask =3D msr & 1; > >Thanks again=2E You realize that the compiler will probably produce exactly the same code,= right? As such, it is about making the code easy for the human reader=2E Even if it didn't, this code is as far from performance critical as one ca= n possibly get=2E --=20 Sent from my Android device with K-9 Mail=2E Please excuse my brevity=2E