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 kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by smtp.lore.kernel.org (Postfix) with ESMTP id 017EEC4167B for ; Tue, 12 Dec 2023 20:48:16 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 71D7C6B0398; Tue, 12 Dec 2023 15:47:50 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id 594626B039A; Tue, 12 Dec 2023 15:47:50 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 34FCF6B039B; Tue, 12 Dec 2023 15:47:50 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0011.hostedemail.com [216.40.44.11]) by kanga.kvack.org (Postfix) with ESMTP id 09FFE6B0398 for ; Tue, 12 Dec 2023 15:47:50 -0500 (EST) Received: from smtpin02.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay03.hostedemail.com (Postfix) with ESMTP id D5E1AA09BE for ; Tue, 12 Dec 2023 20:47:49 +0000 (UTC) X-FDA: 81559352658.02.09E3F41 Received: from mail-yb1-f201.google.com (mail-yb1-f201.google.com [209.85.219.201]) by imf19.hostedemail.com (Postfix) with ESMTP id 0FED21A0017 for ; Tue, 12 Dec 2023 20:47:47 +0000 (UTC) Authentication-Results: imf19.hostedemail.com; dkim=pass header.d=google.com header.s=20230601 header.b=KuJMonLF; spf=pass (imf19.hostedemail.com: domain of 388Z4ZQUKCJYI068I6EE6B4.2ECB8DKN-CCAL02A.EH6@flex--sagis.bounces.google.com designates 209.85.219.201 as permitted sender) smtp.mailfrom=388Z4ZQUKCJYI068I6EE6B4.2ECB8DKN-CCAL02A.EH6@flex--sagis.bounces.google.com; dmarc=pass (policy=reject) header.from=google.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1702414068; a=rsa-sha256; cv=none; b=XBtnaQiW2G5drAypZUfvNFcZutxrGmg6hJhhh0OYxS4U6weP/n/Phzm9lAm2DI595NGAOe 6AhnwzJaHPq4tkzWl2J752Nbf8s2oyJJMdFFrGX9LCcf9eF8fnXXShHd2drzqju0dt0H3k Vk0zQgLVqBFiCpV8wfjlFhV2siRRuoM= ARC-Authentication-Results: i=1; imf19.hostedemail.com; dkim=pass header.d=google.com header.s=20230601 header.b=KuJMonLF; spf=pass (imf19.hostedemail.com: domain of 388Z4ZQUKCJYI068I6EE6B4.2ECB8DKN-CCAL02A.EH6@flex--sagis.bounces.google.com designates 209.85.219.201 as permitted sender) smtp.mailfrom=388Z4ZQUKCJYI068I6EE6B4.2ECB8DKN-CCAL02A.EH6@flex--sagis.bounces.google.com; dmarc=pass (policy=reject) header.from=google.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1702414068; h=from:from:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-type:content-transfer-encoding: in-reply-to:in-reply-to:references:references:dkim-signature; bh=TFmE+BG4/EJDZrVEh/xZNdnTy9FeH/PqMcDgQWjrrOU=; b=G4LoT5NjUhmdb64dkMUWXa506fhH+nUwzeFCL7KKU1T/0JhypxIfPpMLvvwcDFXWYLwq+I Ozs8NoFlZ5QJNf0rF4Wf8GNU0evCLO/zKNZRqOwPdLrfH40EVacfB5TD2f1uW33PUChwkq bNntf71upmiQhFjXro0BOjCvP4R/u+s= Received: by mail-yb1-f201.google.com with SMTP id 3f1490d57ef6-dbcc50d7dd3so538990276.2 for ; Tue, 12 Dec 2023 12:47:47 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20230601; t=1702414067; x=1703018867; darn=kvack.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=TFmE+BG4/EJDZrVEh/xZNdnTy9FeH/PqMcDgQWjrrOU=; b=KuJMonLFL+I+bYdJ7ZIMAKgBD/kncPjmS+zaYOVz4JkF0+AvZimRrf5jsskuoWCbnQ nlpg44RvOJwoldY8TNcIGnPfsfi2sN0ZpDKGUk8x/Wkv/K0W/tpvPA6YA5aTCsMUD/NN MA/5RIoAip+SGfW03vZ4x8WZhuybzkbt3kZu90xdf1rWhGr7bOrGVNsb1d7bs+oPIpc5 GN+/N6tJTs1lmbCIUIcxscxatvItGmCSHdFvb/S4D7BgypmJUcBrUagS8TKNAsYcrUxa /GKTPHn/lcs0jiQXz8ZrQotmVHuSF3dh+atYkMz5+8WF1Zp1X7KLr50yUKbPc49Ct92N zbFQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1702414067; x=1703018867; 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=TFmE+BG4/EJDZrVEh/xZNdnTy9FeH/PqMcDgQWjrrOU=; b=c66S1WC36/dGtez8KYQMtXqnrkcF/+KCEx9eZTMBGODVAzo/sCrBXnFKi3YQBisueT GNXR2MQ5RZ7ZgkrK8K7P7nuciFeGrhOc5OiimCaYIYI9cs2JnF7tKNG3CnNdOu3NBAJw B6OLK75LgQXdrjSSrVhri2ZPa4tgZUIjDyO/CUxinwgAOkJvN6Kvtp7Q1VlEPjuvf7SF WCOrJCFZ4tu8ShJgFzT96N4sc84Wp+NwETfK75OxVo9ptZ3Enq4LMOqkMRLtlrvhOzwn +U0vF12c0g09IsDUy58bIAyQYm7ODr7rO9N/AsPbfK3TF9i239mKg4LEOx3fWvjEbIXU frkg== X-Gm-Message-State: AOJu0YyQRSOdwT7M7gcHy+837+wf0Z72dWQgh41GDGcdFVlbzRnqYvrF f3h+lDjkozy6zhsJHSIhLvzv0qpxvw== X-Google-Smtp-Source: AGHT+IEfV9mKSOUMKRt6QzMdx4NjK5Xm4g7Lzg/OSBchtLDS9HiwFFeqtcXo/zBjodXwgzfPibVCMzwJXQ== X-Received: from sagi.c.googlers.com ([fda3:e722:ac3:cc00:7f:e700:c0a8:241b]) (user=sagis job=sendgmr) by 2002:a25:d204:0:b0:dbc:cbd9:3cd0 with SMTP id j4-20020a25d204000000b00dbccbd93cd0mr566ybg.8.1702414067193; Tue, 12 Dec 2023 12:47:47 -0800 (PST) Date: Tue, 12 Dec 2023 12:46:42 -0800 In-Reply-To: <20231212204647.2170650-1-sagis@google.com> Mime-Version: 1.0 References: <20231212204647.2170650-1-sagis@google.com> X-Mailer: git-send-email 2.43.0.472.g3155946c3a-goog Message-ID: <20231212204647.2170650-28-sagis@google.com> Subject: [RFC PATCH v5 27/29] KVM: selftests: Propagate KVM_EXIT_MEMORY_FAULT to userspace From: Sagi Shahar To: linux-kselftest@vger.kernel.org, Ackerley Tng , Ryan Afranji , Erdem Aktas , Sagi Shahar , Isaku Yamahata Cc: Sean Christopherson , Paolo Bonzini , Shuah Khan , Peter Gonda , Haibo Xu , Chao Peng , Vishal Annapurve , Roger Wang , Vipin Sharma , jmattson@google.com, dmatlack@google.com, linux-kernel@vger.kernel.org, kvm@vger.kernel.org, linux-mm@kvack.org Content-Type: text/plain; charset="UTF-8" X-Rspamd-Server: rspam08 X-Rspamd-Queue-Id: 0FED21A0017 X-Stat-Signature: e7ax8fcxkhtbj49rah8b8jjrizaejqys X-Rspam-User: X-HE-Tag: 1702414067-305719 X-HE-Meta: U2FsdGVkX1+avV6LV4R4JBmRQ8pOHLN8vprSAeBONLFKTUPPjsD/yooGbx88loO3CUkkkIUjI9KbiZYkYUrQiZ9EbETp+4dlA4YD8OodEWOIfiBuz4FfXMoLIffKMKFeUUV6K4YjZE6Z3PpeCmAsk4c69Ms76sotM6LxV9/+lEOzOuDPxPRYZxmXeBKGmxuv57xCtFn0wso0YIROf/pgfioURCZFZfwvpyIM5IEfZAiMf1zm4za5LRO5ZnOceLpLf81MuTLZO7lOQsx2WW/MNT8r5iYYs1GAajnAMuYXk3topIo+KZVZtDrqyo7QcdqzKYnM0gyeO/LZSWlCbAwiSP+WpcXAkpVp1I5UgQUIiJFjrTihRYUjtDzvG7n3a/ox12gBlzcyOhrZN3WuFt+ABfRa+vG4AeDk6D5oQcNxCO6qZXaASd4mRf6rXYqEmPO9CgRjCmEZdAjMeJkuxyLhEfi3cNt1D27vVjHmIGU6usWBEm9oj6RLcUKYzrq+XICwunD7/rps2GNcYTOm4z5KYVnCSqq8lZFgb+C2CT1TfZ8cr/t2Na5xdpwRbLTvPJq4Pu2qWAGRDzLuSON1bPIOWPc7FhSBD96FQtRKXO2vQhd2yKL5XqmRO/oztsMCGekf25zbN/CZ3d5nRopG5eh+nS0FS18sATLyeS9Gu+/HxZlQIwhJ4WIhBwne/or5werzjjhDFdQCv137agFoaYKL2Tz9ni5fU7Aicn0j8xc541Mhf4Yki/H8HKK0nHwgTOlA0M2O2aPYQsORca3Hhyz6ktGSsYUS8NysT+T6gxsfV7TbfH6iwKN+psGAWHDL2SN9wTGPjsJiDQ/jzrNOS91UbLnRcFBGC0RQgvezixfC49A5hWKkiA3pQkaHOUfRikDgxwCU5t+GVBtnXG8OX5lBpPWsHhB1F4tGKOJjNewr8T65DMS9gC4Ls6WdkjyKffFSFRt9JpYcI37TWFrImOR pLtwJbu9 sE6+CbXGASxPG1w965d+3y1LTKSyOPdzBXMJd2XsyBsa6GY8DLubRntAnsHaFQsQSf5ch1Xni6TR/13WazL3dN3DNWNHx5fROYprbrBVOedEQvrrwzymK+bbOFzEyY7AD2bEskTiehJN9skkD96H5cPaGKQuWCCTgAW8eaUtk5/lr4INGucqODKpMpILCVQ1t2XnrVBjsMbu+/PIa3iNxQHop0f3M7gsYAQC9VjTMLCdolfTdohAo2Tf7Wo+/lfg/xxZ1Ummzl60U4vspDPCvKy9t+hp0icDQ5J6VwnQwXP0RusIWnzbdtlklqLVqNXKLiSeHuIE/kMojbZ0fkYTYPEzTKohIa71G5OkK5zhJni+K7Z1n5vjnZJLLjTKHkvHB0EPq1fsuFDE+SYqTdQpNSOIql/USTJSCcY0j2yZkiHnyUYqvGh0Ya7jcPxXRUUxTODfzWjvfDZ8UJOXvDBfdVaXErL1uG50XFottT4EXrb40ubGHTnmPYv7D2yGDsKSipmdJON2eEFEjM6omrP6t85p8tPsifdhxddXu6O7AsCn5XnW/9l9eVehzVtGIQvyRVFl1jH+7VrKtADsx1ixwPHJxmP3NVng4bfNQyN+WwZ3zO5r+KgQCtmqT5vb3YPgN8XobhFA7GDcBerQ= X-Bogosity: Ham, tests=bogofilter, spamicity=0.000082, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: List-Subscribe: List-Unsubscribe: Allow userspace to handle KVM_EXIT_MEMORY_FAULT instead of triggering TEST_ASSERT. >From the KVM_EXIT_MEMORY_FAULT documentation: Note! KVM_EXIT_MEMORY_FAULT is unique among all KVM exit reasons in that it accompanies a return code of '-1', not '0'! errno will always be set to EFAULT or EHWPOISON when KVM exits with KVM_EXIT_MEMORY_FAULT, userspace should assume kvm_run.exit_reason is stale/undefined for all other error numbers. Signed-off-by: Sagi Shahar --- tools/testing/selftests/kvm/lib/kvm_util.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/tools/testing/selftests/kvm/lib/kvm_util.c b/tools/testing/selftests/kvm/lib/kvm_util.c index d024abc5379c..8fb041e51484 100644 --- a/tools/testing/selftests/kvm/lib/kvm_util.c +++ b/tools/testing/selftests/kvm/lib/kvm_util.c @@ -1742,6 +1742,10 @@ void vcpu_run(struct kvm_vcpu *vcpu) { int ret = _vcpu_run(vcpu); + // Allow this scenario to be handled by the caller. + if (ret == -1 && errno == EFAULT) + return; + TEST_ASSERT(!ret, KVM_IOCTL_ERROR(KVM_RUN, ret)); } -- 2.43.0.472.g3155946c3a-goog