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 7D934EB64DB for ; Tue, 20 Jun 2023 11:51:16 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id E25258D0002; Tue, 20 Jun 2023 07:51:15 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id DD4E18D0001; Tue, 20 Jun 2023 07:51:15 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id C9D0F8D0002; Tue, 20 Jun 2023 07:51:15 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0012.hostedemail.com [216.40.44.12]) by kanga.kvack.org (Postfix) with ESMTP id BB62E8D0001 for ; Tue, 20 Jun 2023 07:51:15 -0400 (EDT) Received: from smtpin19.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay05.hostedemail.com (Postfix) with ESMTP id 7EB4C40B0E for ; Tue, 20 Jun 2023 11:51:15 +0000 (UTC) X-FDA: 80922960510.19.3141860 Received: from mail-lf1-f53.google.com (mail-lf1-f53.google.com [209.85.167.53]) by imf06.hostedemail.com (Postfix) with ESMTP id 78167180014 for ; Tue, 20 Jun 2023 11:51:13 +0000 (UTC) Authentication-Results: imf06.hostedemail.com; dkim=pass header.d=google.com header.s=20221208 header.b=3YLv+I26; dmarc=pass (policy=reject) header.from=google.com; spf=pass (imf06.hostedemail.com: domain of elver@google.com designates 209.85.167.53 as permitted sender) smtp.mailfrom=elver@google.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1687261873; 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:content-transfer-encoding: in-reply-to:in-reply-to:references:references:dkim-signature; bh=Uk/ZJntyyMN1aW63L6PViu326GWnEG+0qzLApQJoBK4=; b=NHecu0CY1USW3SFzT070zqKOxweY+NAiIQAvpGqEPeXRpjDqm0X7xNd/AdAExVbkcEtINb pUQXldZ53nrcKGhRtdO0MjKo8DE6ZAVirNuyAXBPTGE8TZtinw5U9297syA8SjTvoW609q y6Y90O+QBpQPYbqpS3zlfGPhJHBWGh4= ARC-Authentication-Results: i=1; imf06.hostedemail.com; dkim=pass header.d=google.com header.s=20221208 header.b=3YLv+I26; dmarc=pass (policy=reject) header.from=google.com; spf=pass (imf06.hostedemail.com: domain of elver@google.com designates 209.85.167.53 as permitted sender) smtp.mailfrom=elver@google.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1687261873; a=rsa-sha256; cv=none; b=QB0jNGyM7hrVZvcq2m1eLy+pZQVlFTg+lFWxZcSceULjNE9CWd6hTwVzY+GS+gFPLLrxph TiGbiMQlh6XAeBHsLDKiWsoGxLioLaY0gpdEJ1QW1c4x5mFqr5AvsxHIQlE/80nGDgK8py 70C6p68wDDSLww3jkk3ST65vyYXHqb0= Received: by mail-lf1-f53.google.com with SMTP id 2adb3069b0e04-4f954d78bf8so599794e87.3 for ; Tue, 20 Jun 2023 04:51:12 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20221208; t=1687261871; x=1689853871; h=user-agent:in-reply-to:content-transfer-encoding :content-disposition:mime-version:references:message-id:subject:cc :to:from:date:from:to:cc:subject:date:message-id:reply-to; bh=Uk/ZJntyyMN1aW63L6PViu326GWnEG+0qzLApQJoBK4=; b=3YLv+I26okscckStyGbHbFPskI4CeaFRPtd0R1imHtZnByNRNtKsZJUtovm1U7hvqT xcEHrfYSFvItVu8CSeAm/hWoNkJT0NfSNZK1ij5MF9ONXLqKTktczWt0nE2CDHKHnHVv ln2uYUSeoujHktL0nM+3kh0h9jtLXklNnKPDEpUlfyetAYRp0dIKF4kQ37y18iVdBiiQ KqGd+1dyE3xc6mtfVbghTJUWiTyWIt2hpgwGcKxtS9VMO2qRqzEmOcwabHnEI0SkUr+R pNwdK8Op6G90Y3Iu3qeQOywgsE0fiT3uhuf3iMiLu6cS3VREwCyuQAroGYo6GCA84my2 fIVA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687261871; x=1689853871; h=user-agent:in-reply-to:content-transfer-encoding :content-disposition:mime-version:references:message-id:subject:cc :to:from:date:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=Uk/ZJntyyMN1aW63L6PViu326GWnEG+0qzLApQJoBK4=; b=WzfeIjDPPuCDvg7SD+PA94fL0WQOPn18Dc4iVRkm6eo4842A0P/G5Uf97BW5DZddu7 /kfLMli62o6Qvi0yndJWbqOHNnmpSI+dkUcEzkHZ1QVI1CqQFkDSnKlebQoLX3P+wWVx Ug/q0HvICDCxjX9fIzjC5Ct6RLk7tjluPao1MgoOFiTqtoeyaAmh9KlNqHlCGrZLj4Bh DQQXFzFRHbFVtjKcH4MJsrAfu8H1NyCbv1GuYgD7M10lVIveShNykyqnhyJpDWb/y4Gr cSoDZQXzfHBG0cxa/aEcg5KLJVjNR9k6ayYWp43kX8zVyW5lrukZ2wQF8qTqEsA92SLe 3Bzw== X-Gm-Message-State: AC+VfDxwfxVwQkPgdpqvb9IJM3+cA3QaYmuKotcIXUGcRGR5C08QOonV 5ZwfgICocR7XrLRNG851qexjwQ== X-Google-Smtp-Source: ACHHUZ4pfCj5B++gOGfsy2RGGFxWJ5sfAJBHcLIq86dWGb+bAbgXYoQZfPoAQear3HV2O4i/Woq9ng== X-Received: by 2002:a19:2d58:0:b0:4f8:5755:5b22 with SMTP id t24-20020a192d58000000b004f857555b22mr6731320lft.27.1687261871236; Tue, 20 Jun 2023 04:51:11 -0700 (PDT) Received: from elver.google.com ([2a00:79e0:9c:201:8530:a6a3:373f:683c]) by smtp.gmail.com with ESMTPSA id d22-20020a1c7316000000b003f80946116dsm13216151wmb.45.2023.06.20.04.51.10 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 20 Jun 2023 04:51:10 -0700 (PDT) Date: Tue, 20 Jun 2023 13:51:05 +0200 From: Marco Elver To: Andrey Konovalov Cc: Andrew Morton , Alexander Potapenko , Dmitry Vyukov , Taras Madan , Aleksandr Nogikh , Andrey Ryabinin , Vincenzo Frascino , Jonathan Corbet , kasan-dev@googlegroups.com, linux-doc@vger.kernel.org, linux-kernel@vger.kernel.org, linux-mm@kvack.org, Catalin Marinas Subject: Re: [PATCH] kasan: add support for kasan.fault=panic_on_write Message-ID: References: <20230614095158.1133673-1-elver@google.com> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: User-Agent: Mutt/2.2.9 (2022-11-12) X-Rspam-User: X-Rspamd-Server: rspam12 X-Rspamd-Queue-Id: 78167180014 X-Stat-Signature: jd9b8yqa3efr6bckdun8f83cz5o43pe8 X-HE-Tag: 1687261873-977282 X-HE-Meta: U2FsdGVkX1/yR5UP/LpXFu9MkJinn+yVpFxeGijQ8y/CQUvHsUuVOImbIQ8+r468FJJ1Na4m9+egsC0Ta1CSCTNV70qYYuKTzSDIEB1GE0ZZmdpAHN+FNm6hKDQntOrsbJEnUD64D1Dw5frcJ37CU7wFUwRP6bu0bmWayEvt8+yY0LkGZiSpplBMgNnVjtGjXRBU23SYDH6GIgMYY8rs9+ZrB1qHJVKnURXUsJt0z4hyiw8HkaBHFk53gy4x+daY2OC2OqPl3YCFPMJqzYkEKnOwlqjFcf/2seQHYFcCrb3KxvFyhwfCTq4uvynW9+zBjiHzYnQAiFKWodEjZnTcp0rdBbI8nsIyVO7fWqhxPEFHOr+Qf7NFimtCiApTUJ1g768X1pqzeYCOW2gzyDxEGQuSqosJzBenl1Ub7LxH4Hc9upqwGpDmKX8ta8uDcHZ2jxFMiahKTnQ3/cDvJFgi+8uHaJTGtYONHh69LvjfhYctafLZ9x54+Oz2c+N9fu4bQ57pNDvYSlTQcgDXT7qM9oSY42NF0sYvTUgjIrSEslb5n6L50RDGG57gIzjBWrtSTcbQfJCHBis7V6NuqTsq6Z6fuvxrzxrd37gu3wOi/C//oVJyWRNl6iT6ymQP3+SIMzL2QS20h7XNfqxRLt9PxNC5DYw1V+SymXUwAgMU0cvPShYx5IJudXvl6wT/JKozHgmaj7l9QxPdRLu2Bd6u1imOJGtbOmdkQle/mFPHVVLfvteJFyu2oGAokpQUvxJnNkh/MPwf1FFpvLUIMMwVRym7N9E8MixsB3UXXDHrNFrS+wKD9OvQggesuxus4uwCNEtk9XY+b6QQlg/kYpaSOeDQh2DE48iBGdL3+B/bWXCTVhtHbB73mGLpr+ORDoVRxnDLiDRVd3AdbwShHIBg0ZNjVev42KGUlVBdAHz+DB66nIkoIdmjQi/SXV8dHj05mnSiqAcsV1rsvuuZpFr JUAVM85Z X2h0pjoA16jQZBL6la811I3jH2Wc5Y9N6ZzfLD3jZ0luEdxESnh3AxL3ZVg1UI1oCUHc7khDAegb6J7kd9g6nqhgJreY2cL49f8EoOijkEjlgXe5RSyIYrRdpWO0ZxUA4AWGZ1XnVP5v4N7r/1t9aiBDTrSFk3PNsQnupzxmDbOU/dGAtOrRXxfFub+rpwoy7YzMCBmwb1tdiuf1yGPP1BGGOwt+nId4PcjmhGCMyjj0NXNNPBCvnMrCLgqj3/9uwG/F5FjF3TxyaMmh1mebiBHjbr0quYStJD5ugmvy/1Axv1tx5TBk+J/RmrirHlGGDm/rjp9y/Be6hnOFa34ms72z3Q3MsX4FwYoWw3dGNb51T3BBOhPIxkrrSvQAUJIfWuMm4GDnS4Ri8DJnAAy8ypNXMFTfvlbbMxiaEGf0kCKOcaumnWaz81aWGyndrKsRtTfQZcMdG+E3ROh28K5IwSyq7c5L9CnQK/fo1gO7j/zDt3FVwWbT5XGe7XFD2F6P+ZE50HDW7dTrvng97jl/2wKkljYhhvD/+bKOKcJNiyZZ76wY2Jxd6NU/ykJyMKR5gTE6VCcrewlOkWzPTF1qpRACE33AOaeMKLGZceCOm0eQrGNgWjfadw2g9f0lj+CxkfovnV0hk23Y9dyZF1jvLMBhZAA== X-Bogosity: Ham, tests=bogofilter, spamicity=0.000000, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: On Tue, Jun 20, 2023 at 01:45PM +0200, Andrey Konovalov wrote: > On Tue, Jun 20, 2023 at 1:33 PM Marco Elver wrote: > > > > > On a related note, it looks like we have a typo in KASAN > > > documentation: it states that asymm mode detects reads synchronously, > > > and writes - asynchronously. Should be the reverse. > > > > This says the documentation is correct, and it's actually called for > > writes: https://docs.kernel.org/arm64/memory-tagging-extension.html#tag-check-faults > > > > Who is right? > > Ah, right. I did a quick google to check when I was writing the > response and found this: https://lwn.net/Articles/882963/. But looks > like that cover letter is wrong and the documentation is right. I > wonder what the point of the asymmetric mode is then. Maybe not as strong, but asymm mode makes sense from a microarch point of view, where writes are always committed into a store buffer, but reads can only commit when the data (incl. tag) is available. > So the current code that you have should work perfectly. The only > change I'd like to see is in the documentation. Something like this (or more?) diff --git a/Documentation/dev-tools/kasan.rst b/Documentation/dev-tools/kasan.rst index 7f37a46af574..3c58392d931e 100644 --- a/Documentation/dev-tools/kasan.rst +++ b/Documentation/dev-tools/kasan.rst @@ -135,6 +135,8 @@ disabling KASAN altogether or controlling its features: fault occurs, the information is stored in hardware (in the TFSR_EL1 register for arm64). The kernel periodically checks the hardware and only reports tag faults during these checks. + Note that ``kasan.fault=panic_on_write`` results in panic for all + asynchronously checked accesses. Asymmetric mode: a bad access is detected synchronously on reads and asynchronously on writes.