From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail-wm1-f43.google.com (mail-wm1-f43.google.com [209.85.128.43]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 14A6D29DB6C for ; Sat, 4 Apr 2026 15:21:02 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.128.43 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1775316064; cv=none; b=FX8bkMOzZoWKGL8U1/OQx8gkRtxgqSIQunvqsrMMQ9FBaJHT1lIxjQmKRq+J35UerypxoFnJpw8tt8Na0qWl+9UihMXND/7T3cG1DGE5QVs0QVlF3HJIBjMPeW9QrMRCJ1knSkL5houeDVhj/XnB7iio3bkWSVnA5aZ/lHAf5ag= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1775316064; c=relaxed/simple; bh=bwi3fwqRL2gMkBWbXUNgaSztWecB9cnkr2OnSeMSIqs=; h=Date:From:To:Cc:Subject:Message-ID:In-Reply-To:References: MIME-Version:Content-Type; b=JqlenGHuW7rTgVv8kuxT1o0TpYPfd5nc5YxLCVNo3tRHWSNAXjO/Ja2dGd8U9cF+OfxN1zQyi4pnldZNmsox7Jtu+VMvROPxmIto1zYymEReZ3vDBbUt+2rvzmK4TfL1ZNkExbHGCXg5E1ltdRJ9G4hJJ9Yz3InX6iJbHuzMY/Q= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=OGanoOHp; arc=none smtp.client-ip=209.85.128.43 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="OGanoOHp" Received: by mail-wm1-f43.google.com with SMTP id 5b1f17b1804b1-483487335c2so27266985e9.2 for ; Sat, 04 Apr 2026 08:21:02 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1775316061; x=1775920861; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:subject:cc:to:from:date:from:to:cc:subject:date :message-id:reply-to; bh=ya15IHYt9XPwJn5C1FMw2sI/phhivTNLETw1ZpFU9KY=; b=OGanoOHp1Zebwnc8FiqdpONklWtKx06Rr45qyxbCocloiS8fxa8iA2zxTmNm/Qu7Wf VN8M6Pr7OfHLyuyvXYEZ4EZ68bhyGem1zY6KrDcE7g7S6r26KeAiwEZo9b06n9Jtp6Rv BxxulVNC0YiKuI4s99+yQfYr2J7LNeSXHag3RDmeZlTJzrmp3L/ZfskOtQKnOr0mUmjP mk3iras8E6HQWO5Yj4VkGJcvDk8Qc3Bm1dACNRiz6mw/BXRt07cv/hkWsv0Fo+XMUyaf 7u954wAEsv9AOISAchZoazK0ZpZI7/a939lfNU4++L4MkxWVyI7PFJ5OiaxNu7q+Mo8f s19g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1775316061; x=1775920861; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:subject:cc:to:from:date:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=ya15IHYt9XPwJn5C1FMw2sI/phhivTNLETw1ZpFU9KY=; b=QBHiTyLRnU/PAO2Dhi3rent9UKWXnYowCriMPXojzcLuDhVTRYW8bzUSj2Y6evsmS8 54kPkYD+efxX/mWO1mUmuXpNJIeGvbx1lNwJBqqFGKhU/9REhvs45nycYipZTahuiLiN Gf6lhrV5fDFTfcSVSM6mkvHrUejD9M0epg0HgmAxsSe5ZJ6fQFxZY+W4GPSNDpwp3Zrs m2JE3x7z4sMxAtObmiL+2kp39yVs50eRcoV1HAp80PJ9r/wS46B+JkJ4GIwQ1mytTE6H zRSB5QlyqfVVOQgByGo5kz10cmOJoJgn09UVypytk/oRyyBv0dgK+UBbyAPAUUuPsQfQ 0gSA== X-Forwarded-Encrypted: i=1; AJvYcCV38BEZYlphpFXxOEn9aDDSZDxoYlXG9aWUhkKxyjoRjdaUvVmN+XHi4mNklT6GNs2EQVAw2bi8Xjc=@vger.kernel.org X-Gm-Message-State: AOJu0YwixPouNgUxa36sgNpzHK2EsDHs7lpLhTaGJ9HEsPSm1IdYXj6e T2mFNXVavnlNv1JXrXNKqyc25XM6ZFA0kekpYDpkAZhQXEeiI/D7Noj3 X-Gm-Gg: AeBDieuszxALz378zLb9e1o/IuTIM+tP5zyRRwvPAWGY/qBDlrnNs56LK0hV+tTGOFZ qi+93qkP/9wzUvPceRvHg1L1nuGQQlX9FLzazuHWy1o5SG2lsFIbJYq86ukAT5yiXhz+Yx18zLZ c16h3HSTdsHaARwNMnEqZjxCNeRtl0ZhRRcv2gHOimXwVAzItkTdHcyq16Cz0xecVSAvdJUTMyk gaD6yGKAkcKKzFxmDOAlVvO0hVoRERccmz/B7yw4uQ+TpiVYY5039bmiT+yH0w/hv/TXDU97q7f yRkfDMMbtyjEy/0nTgk5ykVGRrSyFK8+iUc5+HS3a1xHWSvKCpt9cgN084mI69yzXqN7+xi20+L r53Zo24ZNkGZmEnG3JJpcixIpNi2RkduXX+suBBz4KdQRIQeUFFe04SIFmTEsX4nR1ND5rOCB5m XYDIMnImxXBsX1fVKT+C6zLIEZFvKqGA== X-Received: by 2002:a05:600c:4650:b0:488:9e54:94c8 with SMTP id 5b1f17b1804b1-4889e5496acmr44565465e9.31.1775316061052; Sat, 04 Apr 2026 08:21:01 -0700 (PDT) Received: from pumpkin ([31.55.121.85]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-43d1e4e5890sm25182762f8f.31.2026.04.04.08.21.00 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 04 Apr 2026 08:21:00 -0700 (PDT) Date: Sat, 4 Apr 2026 16:20:59 +0100 From: David Laight To: Pawan Gupta Cc: x86@kernel.org, Jon Kohler , Nikolay Borisov , "H. Peter Anvin" , Josh Poimboeuf , David Kaplan , Sean Christopherson , Borislav Petkov , Dave Hansen , Peter Zijlstra , Alexei Starovoitov , Daniel Borkmann , Andrii Nakryiko , KP Singh , Jiri Olsa , "David S. Miller" , Andy Lutomirski , Thomas Gleixner , Ingo Molnar , David Ahern , Martin KaFai Lau , Eduard Zingerman , Song Liu , Yonghong Song , John Fastabend , Stanislav Fomichev , Hao Luo , Paolo Bonzini , Jonathan Corbet , linux-kernel@vger.kernel.org, kvm@vger.kernel.org, Asit Mallick , Tao Zhang , bpf@vger.kernel.org, netdev@vger.kernel.org, linux-doc@vger.kernel.org Subject: Re: [PATCH v9 00/10] VMSCAPE optimization for BHI variant Message-ID: <20260404162059.34ca90df@pumpkin> In-Reply-To: <20260402-vmscape-bhb-v9-0-94d16bc29774@linux.intel.com> References: <20260402-vmscape-bhb-v9-0-94d16bc29774@linux.intel.com> X-Mailer: Claws Mail 4.1.1 (GTK 3.24.38; arm-unknown-linux-gnueabihf) Precedence: bulk X-Mailing-List: linux-doc@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit On Thu, 2 Apr 2026 17:30:32 -0700 Pawan Gupta wrote: > v9: > - Use global variables for BHB loop counters instead of ALTERNATIVE-based > approach. (Dave & others) > - Use 32-bit registers (%eax/%ecx) for loop counters, loaded via movzbl > from 8-bit globals. 8-bit registers (e.g. %ah in the inner loop) caused > performance regression on certain CPUs due to partial-register stalls. (David Laight) > - Let BPF save/restore %rax/%rcx as in the original implementation, since > it is the only caller that needs these registers preserved across the > BHB clearing sequence. That is as dangerous as hell... Does BPF even save %rcx - I'm sure I checked that a long time ago and found it didn't. (I'm mostly AFK over Easter and can't check.) A least there should be a blood great big comment that BPF calls this code and only saves specific registers. But given the number of mispredicted branches and other pipeline stalls in this code a couple of register saves to stack are unlikely to make any difference. David