Received: by 2002:a05:7412:8d10:b0:f3:1519:9f41 with SMTP id bj16csp2464801rdb; Fri, 8 Dec 2023 08:52:39 -0800 (PST) X-Google-Smtp-Source: AGHT+IEn70ZikcJg0YyJTRjKqk25OiDvDfxMhDhbeNjMipMB7UtxYw1ooC/G8fnD/qo5XKUeTS4D X-Received: by 2002:a05:6358:784:b0:16d:edaa:921c with SMTP id n4-20020a056358078400b0016dedaa921cmr188804rwj.12.1702054358871; Fri, 08 Dec 2023 08:52:38 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1702054358; cv=none; d=google.com; s=arc-20160816; b=BCENxJRW81vr2vyosbgEh8W1QpKuaCUdsaLIBJEUHirnLhAIOC7IQgo9+md9DyxlMQ 4u5bHU1tdnURtrn4rS5T9o0fLxwaUoXxYpWHPPgsaUoxUfXYxNSw4LSxnLViPJvkSzz3 HCPba9NlreCZQiegH89/ivIqfmp0WWHy4RMHSRQ8il7pgRM+yD6tCGBfcif0RAEpAPn0 1T3N9ssqZpmk60n1fH3B02TgmScChF6C74qZ4xHLDFfaRSO0JAy3oqJf452a4Bc32Le/ HelIMwecDAxvN7JbPoFPtPENR6surugZSf7kv6Ueb2vgSRwlxB1OldoTKUpPC9XfyHWl x6sA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:cc:to:subject :message-id:date:from:in-reply-to:references:mime-version :dkim-signature; bh=TCwpDcUhOmDqjvrlR1SNfeF5wJTZtg8zSBwCC0FJlGs=; fh=kmKVJfn1Y9YZhlVPpqCDHuVVZsVgm/oqvGOUm8JK+fE=; b=Vt4hova2bz1SjBhEsljJj0yN9vex1fp0zK3x0RPZfkkQGI0ul1D3wU6Iyn8cvndfrl vQScRouTVB4ZCNIimRyf4OMHbXVZBdawOGlVWKMEoUJ9qoh3f8K2SY/uor7IIXf54KT6 tBa1/yKaKjjJMhYeWfQVetdel1mssYyo1+NAeVo29R0E81bYfpjf1j1MhbOLrWF3KpoV ahvRcAgmm1RyXLo2cTBdWEPdFEGg6ryXeWak5cvNIG4LdQcDqUBbqWc3ElwK+yPeRZUj NHQ6cU4qct8xKZ3XQ0SOYw939IkOwaX/9tWlFchvHgneZpyF7oQfLVqfenA0Auno3jIQ bh0g== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@google.com header.s=20230601 header.b=RhVevluX; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::3:4 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=google.com Return-Path: Received: from howler.vger.email (howler.vger.email. [2620:137:e000::3:4]) by mx.google.com with ESMTPS id bq5-20020a056a02044500b00573f94e8b83si1815962pgb.265.2023.12.08.08.52.38 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 08 Dec 2023 08:52:38 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::3:4 as permitted sender) client-ip=2620:137:e000::3:4; Authentication-Results: mx.google.com; dkim=pass header.i=@google.com header.s=20230601 header.b=RhVevluX; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::3:4 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=google.com Received: from out1.vger.email (depot.vger.email [IPv6:2620:137:e000::3:0]) by howler.vger.email (Postfix) with ESMTP id 47EE285A0410; Fri, 8 Dec 2023 08:52:36 -0800 (PST) X-Virus-Status: Clean X-Virus-Scanned: clamav-milter 0.103.11 at howler.vger.email Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S233657AbjLHQwX (ORCPT + 99 others); Fri, 8 Dec 2023 11:52:23 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:49854 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S232481AbjLHQwW (ORCPT ); Fri, 8 Dec 2023 11:52:22 -0500 Received: from mail-qv1-xf2b.google.com (mail-qv1-xf2b.google.com [IPv6:2607:f8b0:4864:20::f2b]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 620A9BA for ; Fri, 8 Dec 2023 08:52:28 -0800 (PST) Received: by mail-qv1-xf2b.google.com with SMTP id 6a1803df08f44-67a9febb2bfso13040396d6.1 for ; Fri, 08 Dec 2023 08:52:28 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20230601; t=1702054347; x=1702659147; darn=vger.kernel.org; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:from:to:cc:subject:date :message-id:reply-to; bh=TCwpDcUhOmDqjvrlR1SNfeF5wJTZtg8zSBwCC0FJlGs=; b=RhVevluXToi4hwt4IiT6Qg4LS6Yd0XNckkPCw2KSLY4QFLPPQp7tmSPgbJAQ2+6TRL 0we1xrWpOdk7FDza2DUjJ3qAVcp/8W+Cgr2/XN5Fpuk4aPCTx6BzAMM2jV5YfHLLRsgk EhORT/iJHP0OxgqQEiDnvEaUyAvAMY9SoRU3AnpYJC5d1T76GkUgeaiW+4XBo14iLPSI uiwEOumfwTvcG2wwhtyMUQWmaM4Nu9FrGoKL/LqQpzlTwk56BxL63s5U2Z0lA/U3VjUL fdbbzzsN8vRX42faSTYFvaecJl+HPjNkxGBA/aZOLZNZNQaATOQhZkTxT/1P+Tutw6Fv ww7w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1702054347; x=1702659147; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=TCwpDcUhOmDqjvrlR1SNfeF5wJTZtg8zSBwCC0FJlGs=; b=uTMeTlxqqmN7BnxSA7y+hokoNCIB5RsV+KFp3aO61zBm9jgZB7WSEhjV+cwSQO5mrP eXy9JcjVO8PRMglJZYgz8HG8qVfM07D3OBIpV2BDXj2JwDVTV29UjzBg+FAJ+aQFk39g PfRsJlq9oB6DCXOSu2F5KXrcOLcxxmu9+8CNlE1h7jPn5GiLXThH+2UNJCJHYbIruS6G qEHlrf4xwoipm05R+ZTsolgH/rjqdGmgOV8CIm+RVLn39CPOi5AkNTsoEjEPF1qS6LIR KDJXIXT33nDFuiBlK5DIu3Njwennn1gKOXaBq3NLBslVm/PFlMuEgUfwY7uL7GKoXdJc Ddww== X-Gm-Message-State: AOJu0Yy5DB2p9dyErn5Buw+Ewa+/lbTeodf2WzMNArWcILWmGhGBHQjY xNAQR1VbiiluEIlmZQuIieOjCnoU5jNGgrjvyKczFA== X-Received: by 2002:a05:6214:4013:b0:67a:ccb7:4fe0 with SMTP id kd19-20020a056214401300b0067accb74fe0mr319829qvb.82.1702054347432; Fri, 08 Dec 2023 08:52:27 -0800 (PST) MIME-Version: 1.0 References: <20231121220155.1217090-1-iii@linux.ibm.com> <20231121220155.1217090-10-iii@linux.ibm.com> In-Reply-To: <20231121220155.1217090-10-iii@linux.ibm.com> From: Alexander Potapenko Date: Fri, 8 Dec 2023 17:51:51 +0100 Message-ID: Subject: Re: [PATCH v2 09/33] kmsan: Introduce kmsan_memmove_metadata() To: Ilya Leoshkevich Cc: Alexander Gordeev , Andrew Morton , Christoph Lameter , David Rientjes , Heiko Carstens , Joonsoo Kim , Marco Elver , Masami Hiramatsu , Pekka Enberg , Steven Rostedt , Vasily Gorbik , Vlastimil Babka , Christian Borntraeger , Dmitry Vyukov , Hyeonggon Yoo <42.hyeyoo@gmail.com>, kasan-dev@googlegroups.com, linux-kernel@vger.kernel.org, linux-mm@kvack.org, linux-s390@vger.kernel.org, linux-trace-kernel@vger.kernel.org, Mark Rutland , Roman Gushchin , Sven Schnelle Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Spam-Status: No, score=-8.4 required=5.0 tests=DKIMWL_WL_MED,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,HEADER_FROM_DIFFERENT_DOMAINS, MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,T_SCC_BODY_TEXT_LINE, USER_IN_DEF_DKIM_WL autolearn=unavailable autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on howler.vger.email Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-Greylist: Sender passed SPF test, not delayed by milter-greylist-4.6.4 (howler.vger.email [0.0.0.0]); Fri, 08 Dec 2023 08:52:36 -0800 (PST) On Tue, Nov 21, 2023 at 11:07=E2=80=AFPM Ilya Leoshkevich wrote: > > It is useful to manually copy metadata in order to describe the effects > of memmove()-like logic in uninstrumented code or inline asm. Introduce > kmsan_memmove_metadata() for this purpose. > > Signed-off-by: Ilya Leoshkevich > --- > include/linux/kmsan-checks.h | 14 ++++++++++++++ > mm/kmsan/hooks.c | 11 +++++++++++ > 2 files changed, 25 insertions(+) > > diff --git a/include/linux/kmsan-checks.h b/include/linux/kmsan-checks.h > index c4cae333deec..5218973f0ad0 100644 > --- a/include/linux/kmsan-checks.h > +++ b/include/linux/kmsan-checks.h > @@ -61,6 +61,17 @@ void kmsan_check_memory(const void *address, size_t si= ze); > void kmsan_copy_to_user(void __user *to, const void *from, size_t to_cop= y, > size_t left); > > +/** > + * kmsan_memmove_metadata() - Copy kernel memory range metadata. > + * @dst: start of the destination kernel memory range. > + * @src: start of the source kernel memory range. > + * @n: size of the memory ranges. > + * > + * KMSAN will treat the destination range as if its contents were memmov= e()d > + * from the source range. > + */ > +void kmsan_memmove_metadata(void *dst, const void *src, size_t n); As noted in patch 18/33, I am pretty sure we shouldn't need this function.