Received: by 2002:a05:6a10:206:0:0:0:0 with SMTP id 6csp4277982pxj; Wed, 12 May 2021 01:52:38 -0700 (PDT) X-Google-Smtp-Source: ABdhPJwc2pV9tdx453DdXI3Cf5LDwWTk/xf/ggDDQliKKeCfyBOZO7HDEJBHcMjJDrmbqYcdHvkR X-Received: by 2002:a02:970c:: with SMTP id x12mr4285735jai.21.1620809558356; Wed, 12 May 2021 01:52:38 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1620809558; cv=none; d=google.com; s=arc-20160816; b=yl5j2x4eKLtojrQWCyOO5wn4zfOy73eQSlpEy6ooix2I8XKhN5NceSbQr1EKE4x8er S8Vx62Pp7fpEU4wE/mkLu9s+ao4ns9p15W+QJle4w+QOA6ideYN+IqFPCJed/gK8WzRN l7QMyKX5l4YaWtMcD7bSxXqOlZGLhRIuNr6GaDJdWZQx7yYTU4SrC6rDk3dDCN32Jmm5 KPE+72dE91QlMhYm+m7wlFrB1i73MYS65B0vEEaOdDFy3urQFlw6mDWYpWFBNnQuo5LG nEC7uWKU2uQpmVYWCiOcBJsuUDe9ZtC9CziIKKgIi8iJConoRzEfXGARu6S9c6ASUzfz xAgA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:in-reply-to:content-disposition:mime-version :references:message-id:subject:cc:to:from:date; bh=+oRsT+649SxyvpQnX4RAXfVhKiPY4lNudw2JMq3UUwo=; b=dDt6tpDOM2a21jVwgXvS4+4+AF+VJGY+WjX6wY+lZ9EYiQGImEpo94F4TCQrQ7lHU4 9/vEkBU0n6XU+AeCo+XQj+aM6PdViVpn0fM4f35tyHax4seVfQIUBlNjhogdGKmRyybU yopguTsEUxH24RZYQiy5Qanty8pDnhTPKLpy0GI7gn78GFC/8ocjrXHgaLXJnIfTbsgQ tCzVATg7MpU438bNZMMlaCoKiZZawv5hmlKM46PVHFHpFYnrOdEFhkxIm+AJbgbDY8/r 3yVZQl9P6Vtq+t7ZokA1dYCDgduKmRhlW0boI51KtzWEL282mGsIP8mWVZzLR3Nr6iD/ QaVA== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=8bytes.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id v20si21361838ilo.64.2021.05.12.01.52.25; Wed, 12 May 2021 01:52:38 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=8bytes.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S230406AbhELIvw (ORCPT + 99 others); Wed, 12 May 2021 04:51:52 -0400 Received: from 8bytes.org ([81.169.241.247]:38848 "EHLO theia.8bytes.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S230137AbhELIvv (ORCPT ); Wed, 12 May 2021 04:51:51 -0400 Received: by theia.8bytes.org (Postfix, from userid 1000) id D8842F3; Wed, 12 May 2021 10:50:42 +0200 (CEST) Date: Wed, 12 May 2021 10:50:41 +0200 From: 'Joerg Roedel' To: Juergen Gross Cc: David Laight , "x86@kernel.org" , Hyunwook Baek , Joerg Roedel , "stable@vger.kernel.org" , "hpa@zytor.com" , Andy Lutomirski , Dave Hansen , Peter Zijlstra , Jiri Slaby , Dan Williams , Tom Lendacky , Kees Cook , David Rientjes , Cfir Cohen , Erdem Aktas , Masami Hiramatsu , Mike Stunes , Sean Christopherson , Martin Radev , Arvind Sankar , "linux-coco@lists.linux.dev" , "linux-kernel@vger.kernel.org" , "kvm@vger.kernel.org" , "virtualization@lists.linux-foundation.org" Subject: Re: [PATCH 3/6] x86/sev-es: Use __put_user()/__get_user Message-ID: References: <20210512075445.18935-1-joro@8bytes.org> <20210512075445.18935-4-joro@8bytes.org> <0496626f018d4d27a8034a4822170222@AcuMS.aculab.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Wed, May 12, 2021 at 10:16:12AM +0200, Juergen Gross wrote: > You want something like xen_safe_[read|write]_ulong(). From a first glance I can't see it, what is the difference between the xen_safe_*_ulong() functions and __get_user()/__put_user()? The only difference I can see is that __get/__put_user() support different access sizes, but neither of those disables page-faults by itself, for example. Couldn't these xen-specific functions not also be replaces by __get_user()/__put_user()? Regards, Joerg