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 94013C43334 for ; Thu, 30 Jun 2022 13:29:05 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id E526B8E0001; Thu, 30 Jun 2022 09:29:04 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id DDB916B0073; Thu, 30 Jun 2022 09:29:04 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id C7B978E0001; Thu, 30 Jun 2022 09:29:04 -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 B56CF6B0072 for ; Thu, 30 Jun 2022 09:29:04 -0400 (EDT) Received: from smtpin01.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay02.hostedemail.com (Postfix) with ESMTP id 703B93164B for ; Thu, 30 Jun 2022 13:29:04 +0000 (UTC) X-FDA: 79634983008.01.1AE8285 Received: from mail-il1-f175.google.com (mail-il1-f175.google.com [209.85.166.175]) by imf23.hostedemail.com (Postfix) with ESMTP id 05C6114000E for ; Thu, 30 Jun 2022 13:29:03 +0000 (UTC) Received: by mail-il1-f175.google.com with SMTP id i17so12343376ils.12 for ; Thu, 30 Jun 2022 06:29:03 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=kpBSxRjyWissqpsLZxu6rDb8LTkx6HPCXFAIhKQadlM=; b=LLapPG0yWqc1q3kp+JD49502aWcoipy4BmuQbAaSYV/5y2Sb7CY5mzUjZee4X8qtwj qMsEezJ4dGpdsHEp+6ePq8uns8LD/ITi/HiPpStnOfTzlcsKdBQJYn3dNmKHyWu96G11 6HcAkwV9Ti82rxCtcEfTLO0ctZEzUotaYfF/3xv5Sd7PANeo0ZBtH5CzXY3Xun2BItn5 0UO+30Uly4DQaG+WE4DCMpmnT2y/NgQxzIxoQi7WdvGa/91Z/LMox32jdDZPtorGCKom mk0+LZMwuQdmyMO7kvYlpns3RsUs28dQQi/L8CDIin4CXO25qaNcBx9WKYba3tTnItDw Vxuw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=kpBSxRjyWissqpsLZxu6rDb8LTkx6HPCXFAIhKQadlM=; b=dCj9swydPZX2ZOjNHFYSqFUgvrZ0W/EK8aYBlMPpa/6BnBigZdU0gI2v6AUU86pVn/ sRF96+xSUcbEr+PymKegDP1PfA+Tm7AbBVFOUK8WlP5QkfBzlxocdMQY5YCw+sI9sAaK ibavQZjEYXrOjfplC91i+4uaiM6ZG5ZAUIIAjvufrENmV5pEdd5zOEPnQvZCP4gnqRw8 S5j0EYpS1Wr7kZ/lHcnjT2VacoDQToPUzRxkyt+oKO+fQONh8JYQxL3smHx8Ze+6XrA5 qHKeQLpINVyWvid0eJ9RTkZPyybZV9MYr6e90ez9fkdhM3a9inOYHAjK6DjVKYM8PS2+ mgRw== X-Gm-Message-State: AJIora8YcfNS896wbOxrjaHTAIKZrwnPEAATTFIyrcQzN1xNaFZ4DteM oyDDJkYPQB/ojXsf2onk5aH3LBG3wiGObINWodQ= X-Google-Smtp-Source: AGRyM1sGll8gIz0SR3UTo0m6iKl+5SLhukEFeBZdDITQ6UfGDLAoD8uSKC2i2k4I9cGeQBY3i9dbKbZ60VijY+gS4Sg= X-Received: by 2002:a05:6e02:1c2a:b0:2d9:45ef:75c2 with SMTP id m10-20020a056e021c2a00b002d945ef75c2mr4984281ilh.235.1656595743231; Thu, 30 Jun 2022 06:29:03 -0700 (PDT) MIME-Version: 1.0 References: <20220630080834.2742777-1-davidgow@google.com> <20220630080834.2742777-2-davidgow@google.com> <20220630125434.GA20153@axis.com> In-Reply-To: <20220630125434.GA20153@axis.com> From: Andrey Konovalov Date: Thu, 30 Jun 2022 15:28:52 +0200 Message-ID: Subject: Re: [PATCH v4 2/2] UML: add support for KASAN under x86_64 To: Vincent Whitchurch , Dmitry Vyukov Cc: David Gow , Johannes Berg , Patricia Alfonso , Jeff Dike , Richard Weinberger , "anton.ivanov@cambridgegreys.com" , Brendan Higgins , Andrew Morton , Andrey Ryabinin , kasan-dev , "linux-um@lists.infradead.org" , LKML , Daniel Latypov , "linux-mm@kvack.org" , "kunit-dev@googlegroups.com" Content-Type: text/plain; charset="UTF-8" ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1656595744; a=rsa-sha256; cv=none; b=pqOT17Hi7+n8im1vesu9ApomGquD44wHwVjEwMqe0zdDdMfoch5S0zDXNyfqmLD2U7zzRj KinH3ZuFCVedfpuF3qQ8jr3pmyhKqJMj6OwYC3hziigerABX/CngVu6F2/smcKwe7OJ9Dp afMQAkdNvCABYnluyj+zr/DsBR4c0vU= ARC-Authentication-Results: i=1; imf23.hostedemail.com; dkim=pass header.d=gmail.com header.s=20210112 header.b=LLapPG0y; spf=pass (imf23.hostedemail.com: domain of andreyknvl@gmail.com designates 209.85.166.175 as permitted sender) smtp.mailfrom=andreyknvl@gmail.com; dmarc=pass (policy=none) header.from=gmail.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1656595744; 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=kpBSxRjyWissqpsLZxu6rDb8LTkx6HPCXFAIhKQadlM=; b=hFI06uuwH96RNYrnzLNrAbBs1178xR6XnvwVgMvmID3LFF5s74UNS4V5wWquRLrr86KYyS CVx8WZvonHhNwleRo7BcqwhcaQ3SXEFZs12ZzcZ6A10kQb2z1PeuWdHvvsrX8g656lp+hI 4VihduGBVze8BOOyxPq31/k3Rfcv6cY= X-Rspam-User: X-Rspamd-Server: rspam04 Authentication-Results: imf23.hostedemail.com; dkim=pass header.d=gmail.com header.s=20210112 header.b=LLapPG0y; spf=pass (imf23.hostedemail.com: domain of andreyknvl@gmail.com designates 209.85.166.175 as permitted sender) smtp.mailfrom=andreyknvl@gmail.com; dmarc=pass (policy=none) header.from=gmail.com X-Stat-Signature: ribak3iudpohrtc5mbjruj6nrm99o9m4 X-Rspamd-Queue-Id: 05C6114000E X-HE-Tag: 1656595743-501886 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 Thu, Jun 30, 2022 at 2:54 PM Vincent Whitchurch wrote: > > On Thu, Jun 30, 2022 at 11:41:04AM +0200, Dmitry Vyukov wrote: > > On Thu, 30 Jun 2022 at 10:08, David Gow wrote: > > > diff --git a/arch/um/kernel/Makefile b/arch/um/kernel/Makefile > > > index 1c2d4b29a3d4..a089217e2f0e 100644 > > > --- a/arch/um/kernel/Makefile > > > +++ b/arch/um/kernel/Makefile > > > @@ -27,6 +27,9 @@ obj-$(CONFIG_EARLY_PRINTK) += early_printk.o > > > obj-$(CONFIG_STACKTRACE) += stacktrace.o > > > obj-$(CONFIG_GENERIC_PCI_IOMAP) += ioport.o > > > > > > +KASAN_SANITIZE_stacktrace.o := n > > > +KASAN_SANITIZE_sysrq.o := n > > > > Why are these needed? > > It's helpful to leave some comments for any of *_SANITIZE:=n. > > Otherwise later it's unclear if it's due to some latent bugs, some > > inherent incompatibility, something that can be fixed, etc. > > I believe I saw the stacktrace code itself triggering KASAN splats and > causing recursion when sanitization was not disabled on it. I noticed > that other architectures disabled sanitization of their stacktrace code, > eg. ARM in commit 4d576cab16f57e1f87978f ("ARM: 9028/1: disable KASAN in > call stack capturing routines"), so I did not investigate it further. > > (Note that despite the name, sysrq.c is also just stacktrace code.) Stack trace collection code might trigger KASAN splats when walking stack frames, but this can be resolved by using unchecked accesses. The main reason to disable instrumentation here is for performance reasons, see the upcoming patch for arm64 [1] for some details. [1] https://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux.git/commit/?id=802b91118d11