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 6D73D2E6CB6 for ; Tue, 20 Jan 2026 19:44:01 +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=1768938243; cv=none; b=logB3kVy73JRoKfKWIQOiEWxk92O/wMTE/DhHPam/0I+e4bPxUeutJr03QzyAMTXvmG0i6dYXiC7YxbFFxAVVQRDqQwT3zIcREZmE0qjj/OcnAKvoVLZbNdI7+EDQWfURIyWOQ5AS/9sXIaxEV2u3JmnxyWbq33wtvEWhWfYf4k= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1768938243; c=relaxed/simple; bh=JgjTnujfrBhe/Ps1PuqoxmcIaMtomlyDCA9ajnJbYDM=; h=Date:From:To:Cc:Subject:Message-ID:In-Reply-To:References: MIME-Version:Content-Type; b=Nyfb9FObRclyjv5DnD5dNqwyZGHu7zhTZn3+nQndZak7HMGRS5CDY/agPjuVxPTSiKsjZ1EJkmdZOISdjzqCGIPR5Rt5J/4Q3RcxaVta1q5gaXDnirt3WwuDMp/Sn/jMzXPPst4ckvZY70ZJ/tDTF7tnYSTY3j2BxSrSOG4PKuQ= 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=mRDkbPFk; 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="mRDkbPFk" Received: by mail-wm1-f43.google.com with SMTP id 5b1f17b1804b1-47ee4539adfso48051635e9.3 for ; Tue, 20 Jan 2026 11:44:01 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1768938240; x=1769543040; 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=2HPaZyfDYzZkfqScznlO4mTkVB0pmDABf186eHWGTdE=; b=mRDkbPFkeaW6dSHxFf7R4Pl700HF6u2AJhmn7WcV70ByyWMN4SpFEni45ChgJuuVY0 7923jENzpAbSxlE66yLWuSATtqOxQWQgyMNg2LFg2wRKiyNI3oFUFxWfE4FzCLfM3D6B 3PwqEzrR40neEjjthYodPUXs1rLjcV53AaXxQ6WOE3UjBg3nSqn3p5PGviQx6e/ozqMw vU452HT5sjTWTe/EJEZtR6KvrRzLkvGKzBe41Y2GMltp1QcScDwt/ayczCRQDRzdvRMG YW4iLOGHORRoB7ov9ZZeTpZ8NldS2GdDURUImqqWwzufAu6K/I3w73DoPDZzNpu6clmf cuFQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1768938240; x=1769543040; 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=2HPaZyfDYzZkfqScznlO4mTkVB0pmDABf186eHWGTdE=; b=jXnhl4NhAH5n2U8cUN81ox7Uu//5zNIO7W2TPzedFQTdtaMI2V0QBqkwGW3NaRf7xR zxxyNtCibZj7f2Lq4i9ADaiIIsx+Op6BK5h5PEmf50nOsUvLhJO4n8JXgOJqHjf55uCd VbP82knFhkaWP99/7IzvUKLRX9EUn1NQpJTDSKsu5nz2EAnCRX/7VfN9b+HkZODy72wv RCaOnpS/HwA/ILBDtU2/ATuFnVk+l9Z1JgYxQPAvEGiWEhd2MEWA6ehBWCBBI3Z7mOn8 RHR+DhNfgGrHyQvzBwXgATl+s8bZoW1UOR0ICGOu1t6TvKEFJi09HH1KJC2uQx6STg2n gY5A== X-Forwarded-Encrypted: i=1; AJvYcCWXt7cVr2V3bveYOrZzCgDZc7OkQE2y4Jacj77WI4/FPqtkpreAZsPC/sIKPcDBn8a1nPIN3iAEbo6ekdk=@vger.kernel.org X-Gm-Message-State: AOJu0YzHjIgFfUhI6HAJckIqrOJEN7wmA+LWBP4RqlCOfsaudp00jJex 9+FYOXOennf21Zr6n61UZnUpLpgs5sb6U6geYJaoe7x07HSWPDTzqhZl X-Gm-Gg: AY/fxX7nVqMJji2GCbFs7o+3XysjhuAAMomVqnhCrV1x3Nh4pHiBEbD2eWDX29DIm7I mBpZlPcFTGEWJSmoIL+REkv8KplxE6i7d/p8KanCOk65br2Zu+PvRcy93qS9SZj1PPsMh34ri4Q h7i/xs+n/e/NxZkZn27rHs+n7fcjY1mzFUbHgFYOvYUved6jrUAQPJT9V+9vcseH0Wce6Bxb61X 0w18c85SoAj2wYDyb3NZO6EcfAYlZdbHXV/+ZPJLjqwLxwheV0N2b83h3RPw47nxaSMSr+wVdgp 97+zHGDg7RI35COHZMuOVjr05xu2dtLMwvjQDAe8OLnI46hrwk1nfHcMpj4LKLdp2Q/KMMgh2D4 pbK3FKNoae5lkcWaFS3eOzJoBzI8gqS40Cu0A5nqrBZDFeoRmZpEjDOVIFOE2mjD4snBwlWE/2z mOWA0wBQvHFkld6vXZkh8NlAJ8IJAmUrOTxAKgK4+VbDNu7ShuM4A+ X-Received: by 2002:a05:600c:8011:b0:47e:dddc:3369 with SMTP id 5b1f17b1804b1-4803e801e7dmr41628015e9.35.1768938239676; Tue, 20 Jan 2026 11:43:59 -0800 (PST) Received: from pumpkin (82-69-66-36.dsl.in-addr.zen.co.uk. [82.69.66.36]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-435924ae723sm4398574f8f.41.2026.01.20.11.43.59 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 20 Jan 2026 11:43:59 -0800 (PST) Date: Tue, 20 Jan 2026 19:43:58 +0000 From: David Laight To: Sean Christopherson Cc: Ard Biesheuvel , linux-kernel@vger.kernel.org, x86@kernel.org, Thomas Gleixner , Ingo Molnar , Borislav Petkov , Dave Hansen , "H. Peter Anvin" , Josh Poimboeuf , Peter Zijlstra , Kees Cook , Uros Bizjak , Brian Gerst , linux-hardening@vger.kernel.org Subject: Re: [RFC/RFT PATCH 10/19] x86/kvm: Use RIP-relative addressing Message-ID: <20260120194358.1bd909fa@pumpkin> In-Reply-To: References: <20260108092526.28586-21-ardb@kernel.org> <20260108092526.28586-31-ardb@kernel.org> X-Mailer: Claws Mail 4.1.1 (GTK 3.24.38; arm-unknown-linux-gnueabihf) Precedence: bulk X-Mailing-List: linux-kernel@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 Tue, 20 Jan 2026 09:04:26 -0800 Sean Christopherson wrote: > On Thu, Jan 08, 2026, Ard Biesheuvel wrote: > > Replace absolute references in inline asm with RIP-relative ones, to > > avoid the need for relocation fixups at boot time. This is a > > prerequisite for PIE linking, which only permits 64-bit wide > > loader-visible absolute references. > > > > Signed-off-by: Ard Biesheuvel > > --- > > arch/x86/kernel/kvm.c | 5 +++-- > > 1 file changed, 3 insertions(+), 2 deletions(-) > > > > diff --git a/arch/x86/kernel/kvm.c b/arch/x86/kernel/kvm.c > > index df78ddee0abb..1a0335f328e1 100644 > > --- a/arch/x86/kernel/kvm.c > > +++ b/arch/x86/kernel/kvm.c > > @@ -807,8 +807,9 @@ extern bool __raw_callee_save___kvm_vcpu_is_preempted(long); > > * restoring to/from the stack. > > */ > > #define PV_VCPU_PREEMPTED_ASM \ > > - "movq __per_cpu_offset(,%rdi,8), %rax\n\t" \ > > - "cmpb $0, " __stringify(KVM_STEAL_TIME_preempted) "+steal_time(%rax)\n\t" \ > > + "0:leaq 0b(%rip), %rax\n\t" \ > > Please use something other than '0' for the label, it took me forever (and looking > at disassembly) to realize "0b" was just a backwards label and not some fancy > syntax I didn't know. I remember taking a while to grok that as well. Can't you just use . as in: leaq .(%rip), %rax shame the assembler doesn't understand: movq %rip, %rax (maybe it does...) David