From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail-wm1-f49.google.com (mail-wm1-f49.google.com [209.85.128.49]) (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 547A33CEB84 for ; Wed, 11 Mar 2026 10:27:28 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.128.49 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1773224849; cv=none; b=DzCHt0sLAPgABu1RtjN8uhANJqB7eOoAcSen6CJH1CTw1fUokbu1IknaQznF+g2mcFinplGdN37MOr9ke0alrBWCG2z6vneTjyA4MTPjov9sGAAoB8PkjVxKnSvgji295bydiQa+EiLx+ScsyN8ahJCJ3VGejj/DNQSvI5RJrto= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1773224849; c=relaxed/simple; bh=D/sUWWa4J99T6ZZWlhDyVBs9TPTN6piAaeskN+Sa/YY=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=mmCC+Jlz3+hAMkyJwgGpwpsNZz33g+9SMvtLE7GqVcMp37V9aVtD4LPhuNf7OukfHG0gXXhRJjFs2euSPN1ia71UKlW3BthOhSFMnvx4lESBKSavuXpcBXU5XP3BEw/DXkw7MkWYCbzDPNWU8U/IeMwJUVHi2pJSnPDI3/wDxy8= 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=keKphpry; arc=none smtp.client-ip=209.85.128.49 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="keKphpry" Received: by mail-wm1-f49.google.com with SMTP id 5b1f17b1804b1-485409ab264so5862465e9.1 for ; Wed, 11 Mar 2026 03:27:28 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1773224847; x=1773829647; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=940oY3G5/la7E98Q1Gx5pCrHN3lxgObP5JoXKnt40o4=; b=keKphpry91BMH/R3gJIQCuWRAw98OcjnhBf4Q60I72ODjfWrPr+6xEsGMFNEIahLpA djN0dpHqOwZYnQzKD91lc3fxzFIeLIZISkdcskRLrFmfuhcYH8aCn/qA0hREucKrULEd M+mO2zSZcGremzTtpYkPZfrJDEz191NNWE05A0MEjtnH+dlNjdMoxFClWxM4+7+n8/xE FLuLPgscSYGw5zrIaBbp9ANMM29U9FJapdZHBiQejxsVrNsPHjf/fsxWmOKE5Li7jiaz NRYJ0yGKkNJQHw7H4n+Nj8pYU3vgh3R6Z5eVCQMzpf7YvdPXKjdExOITL2YiOq3ZrLFA SZhQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1773224847; x=1773829647; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=940oY3G5/la7E98Q1Gx5pCrHN3lxgObP5JoXKnt40o4=; b=KBgXHamERGNEm3iUyNTwp0DA3rKvWMf+U092O1IX0TnEwPu+8bGZh/MuofgOY72H62 UgtKubwfmERDzq6i4HUR6TEVpzWrDsbRMIQMMYFGJbJzS70GbkRRk7zmhuhPVR/X8mBd d3hgac9TfWSHI+SjJbPl18FYV7Qwx4btMZlqpyMynsm8NjlAoJc5CrznHfLmLxLvayG/ bUVOFxgwVEeI7qYwrMXo0wkS1bqTk1J+P3tEoNgYdPwIbqAoR5qKTBmhw44pgZxKlEjX qvjJp8iPB6zzzPIZuTSETO0xfShKq3nidx3cuHGzyBMC/BFt+HoIwLeMDUPuSg/+D0Ly 0A3Q== X-Forwarded-Encrypted: i=1; AJvYcCXWFKctnCjJ8P4J7ENbxBV7hzd5iyfouKNyJUPZick8D2fJunLVzZeZp8ougyxPFVGgHa7rs7Yp9ndGiJI=@vger.kernel.org X-Gm-Message-State: AOJu0YxAU/2zp4nglmZ54++baqMU6A3NmLBmBh3+pijhW+IzCN72lpPg mfWI8ppNdtAwDOfCvwiIDwxvjtDGVv0bMZSXThdZ6kO+wjNQkUp5OKEX X-Gm-Gg: ATEYQzxpxZld7jK5ilIWcKi6P/cO9qKvUnOG04FBa3rY9s1Ny8s5I2L5L5kaHqXJ8N6 RYuFucCBCq23SeQ2dNMvDAJY19vsbQUAX+paym9UA75zEKQiGcuwk1ZrzYExfFh2WAsUQfogyBs g/1KL2XaLt94jEJbh/cEgiK4HH/0o44xkubB0caZ/oqMsurbHc1oZasYcBCZaPeeBMomRTR3jU/ zfmnvGs1DQwH+db5/7eEOCE20UgIPlkeQbN8gyakUROKecLpAZlomnje7hyyZXpjRbnIp5CF+kL KnnbZ5Yd3vKVfzo4xS4n2zkhCmJm7+yAuQKdou6QgWawPh/vgPxQpmyrQ+/wI4ApSWmrzE1kLxM ZH11yZJnY0a7JvhKJd1yHIwuR+V5JJC2TzD9+lwI1DM7P+FC+EQSFzDcWA/j0wagVXHcc+kjH0i MWrjTb2ZPCga/nWU/422l7dNeOtvhcxHskmv5q9bBX443jhq5prPg91yr3T+XpvMkVNhvvpX7B0 Et634TgUxgHUO1VBo5sSB9rL9xFtY/mgZV5vVkosQjC X-Received: by 2002:a05:600c:45c4:b0:485:3428:774c with SMTP id 5b1f17b1804b1-4854b239e06mr31262465e9.4.1773224846448; Wed, 11 Mar 2026 03:27:26 -0700 (PDT) Received: from fedora ([193.77.86.199]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-4854b5f6b95sm44534915e9.6.2026.03.11.03.27.24 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 11 Mar 2026 03:27:24 -0700 (PDT) From: Uros Bizjak To: linux-hyperv@vger.kernel.org, x86@kernel.org, linux-kernel@vger.kernel.org Cc: Uros Bizjak , "K. Y. Srinivasan" , Haiyang Zhang , Wei Liu , Dexuan Cui , Long Li , Thomas Gleixner , Ingo Molnar , Borislav Petkov , Dave Hansen , "H. Peter Anvin" Subject: [PATCH -hyperv 3/3] x86/hyperv: Use any general-purpose register when saving %cr2 and %cr8 Date: Wed, 11 Mar 2026 11:26:00 +0100 Message-ID: <20260311102658.215693-3-ubizjak@gmail.com> X-Mailer: git-send-email 2.53.0 In-Reply-To: <20260311102658.215693-1-ubizjak@gmail.com> References: <20260311102658.215693-1-ubizjak@gmail.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit hv_hvcrash_ctxt_save() in arch/x86/hyperv/hv_crash.c currently saves %cr2 and %cr8 using %eax ("=a"). This unnecessarily forces a specific register. Update the inline assembly to use a general-purpose register ("=r") for both %cr2 and %cr8. This makes the code more flexible for the compiler while producing the same saved context contents. No functional changes. Signed-off-by: Uros Bizjak Cc: "K. Y. Srinivasan" Cc: Haiyang Zhang Cc: Wei Liu Cc: Dexuan Cui Cc: Long Li Cc: Thomas Gleixner Cc: Ingo Molnar Cc: Borislav Petkov Cc: Dave Hansen Cc: "H. Peter Anvin" --- arch/x86/hyperv/hv_crash.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/arch/x86/hyperv/hv_crash.c b/arch/x86/hyperv/hv_crash.c index d0f95a278fdb..5ffcc23255de 100644 --- a/arch/x86/hyperv/hv_crash.c +++ b/arch/x86/hyperv/hv_crash.c @@ -204,8 +204,8 @@ static void hv_hvcrash_ctxt_save(void) ctxt->cr0 = native_read_cr0(); ctxt->cr4 = native_read_cr4(); - asm volatile("movq %%cr2, %0" : "=a"(ctxt->cr2)); - asm volatile("movq %%cr8, %0" : "=a"(ctxt->cr8)); + asm volatile("movq %%cr2, %0" : "=r"(ctxt->cr2)); + asm volatile("movq %%cr8, %0" : "=r"(ctxt->cr8)); asm volatile("movw %%cs, %0" : "=m"(ctxt->cs)); asm volatile("movw %%ss, %0" : "=m"(ctxt->ss)); -- 2.53.0