From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 8D974E7717D for ; Wed, 11 Dec 2024 22:06:18 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender: Content-Transfer-Encoding:Content-Type:List-Subscribe:List-Help:List-Post: List-Archive:List-Unsubscribe:List-Id:Cc:To:From:Subject:Message-ID: References:Mime-Version:In-Reply-To:Date:Reply-To:Content-ID: Content-Description:Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc :Resent-Message-ID:List-Owner; bh=K9z8bQhqfA0YVDYgN3yyqAiOvLJISeVhnwLo4o8rd3c=; b=im3wiViQ7JiVjXbKqYE+l/rNaE gG7ruH9u6wTqpOK/b2SehEEivI7f9SfGEa6BEc8dMjy+fcHPasTAJCVWsHJhBx4rvIJztgdHbTN+8 zoVlZ62SYVXGr9x5D0sDBggcRYg2oa8FJoG8wL1wzX8N/xtsbskormrKzmTiuVfsVqQAyHrhKwx/T n03wgP1d9n81bDRRXOaXsImreD307qBCOJx4nngQbYExG45N0JsPFtRuIpw56bXyng1U88tzgYJKn wkRn60A8rNVvxAJ3hby60wxSaGT9FtcFxAAq66A8eIvx2YjxiFKqp4x8ZZeLUqUSfbW8uEq+OqVpM +MT4olbQ==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.98 #2 (Red Hat Linux)) id 1tLUqY-0000000GGpD-1NjT; Wed, 11 Dec 2024 22:06:18 +0000 Received: from mail-pl1-x649.google.com ([2607:f8b0:4864:20::649]) by bombadil.infradead.org with esmtps (Exim 4.98 #2 (Red Hat Linux)) id 1tLUqW-0000000GGog-1kro for kvm-riscv@lists.infradead.org; Wed, 11 Dec 2024 22:06:17 +0000 Received: by mail-pl1-x649.google.com with SMTP id d9443c01a7336-2161d185f04so41513255ad.3 for ; Wed, 11 Dec 2024 14:06:15 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20230601; t=1733954774; x=1734559574; darn=lists.infradead.org; h=cc:to:from:subject:message-id:references:mime-version:in-reply-to :date:from:to:cc:subject:date:message-id:reply-to; bh=uTDUEy5ndzyMUOmAANu+2Q5dKv5CytQeXy0bYdZM4AE=; b=M3Bru2PMItz8Wrb0HTDjhRXHVYAn3fdohKpOzG7w6AaYNo8fNyFcmvkZGEO9dflZN0 5rXU4ersi/gkulxG9ojafWKJ5TWnlJxeF4kTTfnM4ZKgeObq+0o/V/zPP8SWW3LXnEhy fSx6ttdiRPvl0fAvFzrsr0Ww4jusgtLdVf5+Y7E9q/QAnEHi3Xb93TFK0RoHdsw/Zr+k uy6urti6vHUpPafFA14slgvqUxe5TNvhqu9lIJ+9wIROU3no7MSLlLm/1LcD58/R3dsC KpXSKClOQQGFAcGhR+NPX3kjGWSo4+kE/t0C9j1o2zIxFgWu/UBeT7FJGXY6QL9dOXtm 8bUg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1733954774; x=1734559574; h=cc:to:from:subject:message-id:references:mime-version:in-reply-to :date:x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=uTDUEy5ndzyMUOmAANu+2Q5dKv5CytQeXy0bYdZM4AE=; b=AI8eL3adxLQgqBRF7CSQrWTAZAdrc8MFcVz4Yqd6BuyJUGS+T3K2XWfHsPN+lFfUOx Hslelijp0pMMmegYtcXiJmh9+7GEipQsuqOshB6YUtRQFKKyJxYi6CbZ0QKnIGN2+gy0 PBf5M2zZdqC/3VM0EgUwCOq96AmHkytmATcq1RbOY1hiTAhkXzHBna3WhQJD05WnSrug adNtUwzD5NP9MbIoFRDzXTxU1AvIRcwJaoVnrO8jcDK5eB51gP2u+jPMYtpCYbqFi61d qMvX/nKSIl6vk7kVGRxnVPiy5qUCSFm+uo1RydS/XAn1Rd4OnBe/9qUyC+V7Vb1BOaS7 Hkug== X-Forwarded-Encrypted: i=1; AJvYcCWNaZKgC4WOCzjA8Hz2Osz99AZn94z7RiD41gqtSv6FBn15JmWecroQcxUsXGBrzjgKqqrJpXY/jLc=@lists.infradead.org X-Gm-Message-State: AOJu0YzjpqprCKNNEJmR9b05XcSOJuBD49+A0T6ND60SUdAe7onCmopd +jL7VcB19vWruZAM56FlwT7y9KLVtderx4J/HNLFWNpV2DVwX7Zv3cB2U/Vyaczc8KcRiEvj94r T3w== X-Google-Smtp-Source: AGHT+IHFSnyjPEDTcWJnAvaiGma2JfY/srzHSvKplMJ9OueXQOEiKTtjMmaF+b36NOyPghd7X0ZdCPZjbkA= X-Received: from plgn1.prod.google.com ([2002:a17:902:f601:b0:216:499e:dadb]) (user=seanjc job=prod-delivery.src-stubby-dispatcher) by 2002:a17:902:db04:b0:215:44fe:163e with SMTP id d9443c01a7336-21778397514mr77377935ad.1.1733954774653; Wed, 11 Dec 2024 14:06:14 -0800 (PST) Date: Wed, 11 Dec 2024 14:06:12 -0800 In-Reply-To: <20240910152207.38974-15-nikwip@amazon.de> Mime-Version: 1.0 References: <20240910152207.38974-1-nikwip@amazon.de> <20240910152207.38974-15-nikwip@amazon.de> Message-ID: Subject: Re: [PATCH 14/15] KVM: x86: Implement KVM_TRANSLATE2 From: Sean Christopherson To: Nikolas Wipper Cc: Paolo Bonzini , Vitaly Kuznetsov , Nicolas Saenz Julienne , Alexander Graf , James Gowans , nh-open-source@amazon.com, Thomas Gleixner , Ingo Molnar , Borislav Petkov , Dave Hansen , linux-kernel@vger.kernel.org, kvm@vger.kernel.org, x86@kernel.org, linux-doc@vger.kernel.org, linux-kselftest@vger.kernel.org, kvmarm@lists.linux.dev, kvm-riscv@lists.infradead.org X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20241211_140616_453482_0653E9BD X-CRM114-Status: UNSURE ( 7.67 ) X-CRM114-Notice: Please train this message. X-BeenThere: kvm-riscv@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Sender: "kvm-riscv" Errors-To: kvm-riscv-bounces+kvm-riscv=archiver.kernel.org@lists.infradead.org On Tue, Sep 10, 2024, Nikolas Wipper wrote: > +int kvm_arch_vcpu_ioctl_translate2(struct kvm_vcpu *vcpu, > + struct kvm_translation2 *tr) > +{ > + int idx, set_bit_mode = 0, access = 0; > + struct x86_exception exception = { }; > + gva_t vaddr = tr->linear_address; > + u16 status = 0; > + gpa_t gpa; > + > + if (tr->flags & KVM_TRANSLATE_FLAGS_SET_ACCESSED) > + set_bit_mode |= PWALK_SET_ACCESSED; > + if (tr->flags & KVM_TRANSLATE_FLAGS_SET_DIRTY) > + set_bit_mode |= PWALK_SET_DIRTY; > + if (tr->flags & KVM_TRANSLATE_FLAGS_FORCE_SET_ACCESSED) > + set_bit_mode |= PWALK_FORCE_SET_ACCESSED; > + > + if (tr->access & KVM_TRANSLATE_ACCESS_WRITE) > + access |= PFERR_WRITE_MASK; > + if (tr->access & KVM_TRANSLATE_ACCESS_USER) > + access |= PFERR_USER_MASK; > + if (tr->access & KVM_TRANSLATE_ACCESS_EXEC) > + access |= PFERR_FETCH_MASK; WRITE and FETCH accesses need to be mutually exclusive. -- kvm-riscv mailing list kvm-riscv@lists.infradead.org http://lists.infradead.org/mailman/listinfo/kvm-riscv From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail-pl1-f202.google.com (mail-pl1-f202.google.com [209.85.214.202]) (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 33C071DE4F4 for ; Wed, 11 Dec 2024 22:06:15 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.214.202 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1733954776; cv=none; b=ne6uwxmXhUwrDTWtMZ17AurWGM6hAFAX+Ge0hN6v+P/JltzavaFQ4cbWgwcpuxdoxkKct3CChqq3LKv8g2TyAVZyH0eZPLMdNJE+LtfvtAH7YsNYiFP407/wU7/aLYbvCebxxukQ/vsY+DJwr6vfNPr7GPkwKZvsYXNZ6VUxJnc= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1733954776; c=relaxed/simple; bh=dc04m6m7A0zBx/3GsGuHlwEymHutsumTTMAD3LQrhZQ=; h=Date:In-Reply-To:Mime-Version:References:Message-ID:Subject:From: To:Cc:Content-Type; b=dac8iXWEmwInW7lS2wf6H/5hDEY8WdKF6na2q7SJDRxsgRNI6xMqO8beaYTWEc+d/7DOvJ37/+C1L1IJwZmcp4Qt7LWC3aV7kq+jkGywiAR5RmK/howkOBUoJPwUYtL2CllI2otQ4DRJEPJLFWtvKQqUHctlihVOU87L0NA2iuo= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=google.com; spf=pass smtp.mailfrom=flex--seanjc.bounces.google.com; dkim=pass (2048-bit key) header.d=google.com header.i=@google.com header.b=Auj4CTDk; arc=none smtp.client-ip=209.85.214.202 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=google.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=flex--seanjc.bounces.google.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=google.com header.i=@google.com header.b="Auj4CTDk" Received: by mail-pl1-f202.google.com with SMTP id d9443c01a7336-2166855029eso27398595ad.0 for ; Wed, 11 Dec 2024 14:06:15 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20230601; t=1733954774; x=1734559574; darn=vger.kernel.org; h=cc:to:from:subject:message-id:references:mime-version:in-reply-to :date:from:to:cc:subject:date:message-id:reply-to; bh=uTDUEy5ndzyMUOmAANu+2Q5dKv5CytQeXy0bYdZM4AE=; b=Auj4CTDkhS7LzhaNcAPn5mYq6OF8PgwSK7WQQhbEOpT7tWIDubpIezmPMNuoe9GMHz 7CdRufWp+F4w+gfK1zolvBvlL8W8bwpE7sC80wV044hKSeuT+mVVpKuc3SkhUkBYUlb8 9xt6kN3ge476OS9hpEPCVj5ADX4iduN+WRYgWRaQ4e67e0QxTeWp3iOhe14oPwTIS0Dc bOkRSsk2649RXCsMZ/8F2scbDivSabuOgqLPoQDtiCTd1271HrBHvvNJ2cdVPPoPDD5n 18lLyYrZhbOztthodbfPp40xsTKktCeJQiQIOTunZCXbWnOOvhLiaIRQGLjUZZngUh26 ztvg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1733954774; x=1734559574; h=cc:to:from:subject:message-id:references:mime-version:in-reply-to :date:x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=uTDUEy5ndzyMUOmAANu+2Q5dKv5CytQeXy0bYdZM4AE=; b=UzGei8vHJfjevOoEGjICvuQ1vXSRqCfsoLNvbhE7CVXi8Qw0mH6J9GM+7wPli1UHcD 8YfAlVDltkMG6TmkYqJm7CjwzAS/lUQRaryPrkudzcvsLx5l0JvaJLfnErtIgdnn5BIr SOdDH4Sbn8Tude20WCQ4N9plfhTkRsB3fSLjkey91XHeVSTEIUtx28gmUQ/ARDBevIn2 WBj5tDUYIFaZPc50uVCa3fla7KHsvPX+O4utmhyQoXlWQFJmvv4UsxhNuKZdYyZVX9xj lj5FA8NDXAqjXRc6mmMtFZUxMurKPVzY27nt402C8x98ienR4HixMg3Rhr0frd+9IZ1i 1LDg== X-Forwarded-Encrypted: i=1; AJvYcCVhUlxvhK5hJpfZkrL6ivmNL7uP85wJrLJ3rvQLBEezRrU/AomGUczGnJ7W9n9jliLBl0U=@vger.kernel.org X-Gm-Message-State: AOJu0Yys9dH1yHP1XyNoiLRe64OqNlS55ziOz5NWic37I0Ab8tDC0gMD gH3MDa9h8RZeZUUcwRn/U35rHeZ9S5WcTb1vOAvqJkAa/Vws17w6tU9MwmW1XrWc3w3QubzixXJ +bA== X-Google-Smtp-Source: AGHT+IHFSnyjPEDTcWJnAvaiGma2JfY/srzHSvKplMJ9OueXQOEiKTtjMmaF+b36NOyPghd7X0ZdCPZjbkA= X-Received: from plgn1.prod.google.com ([2002:a17:902:f601:b0:216:499e:dadb]) (user=seanjc job=prod-delivery.src-stubby-dispatcher) by 2002:a17:902:db04:b0:215:44fe:163e with SMTP id d9443c01a7336-21778397514mr77377935ad.1.1733954774653; Wed, 11 Dec 2024 14:06:14 -0800 (PST) Date: Wed, 11 Dec 2024 14:06:12 -0800 In-Reply-To: <20240910152207.38974-15-nikwip@amazon.de> Precedence: bulk X-Mailing-List: kvm@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: Mime-Version: 1.0 References: <20240910152207.38974-1-nikwip@amazon.de> <20240910152207.38974-15-nikwip@amazon.de> Message-ID: Subject: Re: [PATCH 14/15] KVM: x86: Implement KVM_TRANSLATE2 From: Sean Christopherson To: Nikolas Wipper Cc: Paolo Bonzini , Vitaly Kuznetsov , Nicolas Saenz Julienne , Alexander Graf , James Gowans , nh-open-source@amazon.com, Thomas Gleixner , Ingo Molnar , Borislav Petkov , Dave Hansen , linux-kernel@vger.kernel.org, kvm@vger.kernel.org, x86@kernel.org, linux-doc@vger.kernel.org, linux-kselftest@vger.kernel.org, kvmarm@lists.linux.dev, kvm-riscv@lists.infradead.org Content-Type: text/plain; charset="us-ascii" On Tue, Sep 10, 2024, Nikolas Wipper wrote: > +int kvm_arch_vcpu_ioctl_translate2(struct kvm_vcpu *vcpu, > + struct kvm_translation2 *tr) > +{ > + int idx, set_bit_mode = 0, access = 0; > + struct x86_exception exception = { }; > + gva_t vaddr = tr->linear_address; > + u16 status = 0; > + gpa_t gpa; > + > + if (tr->flags & KVM_TRANSLATE_FLAGS_SET_ACCESSED) > + set_bit_mode |= PWALK_SET_ACCESSED; > + if (tr->flags & KVM_TRANSLATE_FLAGS_SET_DIRTY) > + set_bit_mode |= PWALK_SET_DIRTY; > + if (tr->flags & KVM_TRANSLATE_FLAGS_FORCE_SET_ACCESSED) > + set_bit_mode |= PWALK_FORCE_SET_ACCESSED; > + > + if (tr->access & KVM_TRANSLATE_ACCESS_WRITE) > + access |= PFERR_WRITE_MASK; > + if (tr->access & KVM_TRANSLATE_ACCESS_USER) > + access |= PFERR_USER_MASK; > + if (tr->access & KVM_TRANSLATE_ACCESS_EXEC) > + access |= PFERR_FETCH_MASK; WRITE and FETCH accesses need to be mutually exclusive.