Received: by 2002:a05:7412:8d10:b0:f3:1519:9f41 with SMTP id bj16csp2464566rdb; Fri, 8 Dec 2023 08:52:10 -0800 (PST) X-Google-Smtp-Source: AGHT+IE9GEWMimnC3cS+6MVOy2ucVL86hdyi9nV8Lhc1O9jINeuZf/YW0kV0C7HS9DX2EjwKaTya X-Received: by 2002:a17:90b:954:b0:286:6cc1:8667 with SMTP id dw20-20020a17090b095400b002866cc18667mr312765pjb.76.1702054329930; Fri, 08 Dec 2023 08:52:09 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1702054329; cv=none; d=google.com; s=arc-20160816; b=s50kxOIpg0C2kq/7L4YxZk3WILoxS+6hBa6z+KSGRR2miIHynoBKRNCo4DPbpNX7OO oZFm/lCJWmv0Mt413PTohVEk+3JshyFy2vxzrOJFPXD+htLBP7xcdDtdGVQPae3ni9O7 sY7bGk/6sn0WgtCeJ8cPifyzFyelenv3sbDzuewyqnGmL0JS+HUcBBweTXOya/fj/A2L jZNomozqAGZBlx11Ba10kUMyGMG9HHoRMQhcRD2N6t4QnGnucP27oZR+AbgVLpbYTN1r hikE+hmyXC0L3DdrxTbva227WfiO277vdp54Q2HGe14UiVI+880do2QurAf5tBn9rC/N kIMQ== 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=eIcp9jypYULc/a0PN4uogFYiIDljiHAuDtNHVxk71mg=; fh=kmKVJfn1Y9YZhlVPpqCDHuVVZsVgm/oqvGOUm8JK+fE=; b=J5X9Bmi1sFVf92XWwgK94F/2On+SI+mvX3iVangSRl7n6f0VIBEAN4AISs+5l0F+vj GNYmB4hJqdVaMGs7v7934OML0zNdOePKGpRn0/sK1gjeAe2tD99b2R72eJTRcwK/ME+R TpB7b9QJcpEiR8rmWHOjzmq4oORz0kgvht5Y6huYvlJlZvDUL81vY0CuRgOt1YGoeO/K 297CJX4VyHigD8U8AQcWynRfYxbLkFZzoNw+1NP+Wiv2dAjsPnhfk8vi0ZwAyWLOSrl0 vCOJQPUdqaKd9fVWpomqHenuKrcdnESqajBrSxSOZcTiHAYgAGZuw77Jd04AKU4qPVCP yOnw== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@google.com header.s=20230601 header.b=YDDwHLv7; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.31 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 morse.vger.email (morse.vger.email. [23.128.96.31]) by mx.google.com with ESMTPS id b8-20020a17090a9bc800b00288814acec9si1964036pjw.65.2023.12.08.08.52.09 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 08 Dec 2023 08:52:09 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.31 as permitted sender) client-ip=23.128.96.31; Authentication-Results: mx.google.com; dkim=pass header.i=@google.com header.s=20230601 header.b=YDDwHLv7; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.31 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 morse.vger.email (Postfix) with ESMTP id 21AB78042C30; Fri, 8 Dec 2023 08:51:54 -0800 (PST) X-Virus-Status: Clean X-Virus-Scanned: clamav-milter 0.103.11 at morse.vger.email Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S235959AbjLHQvh (ORCPT + 99 others); Fri, 8 Dec 2023 11:51:37 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:55738 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S233556AbjLHQvV (ORCPT ); Fri, 8 Dec 2023 11:51:21 -0500 Received: from mail-qv1-xf2a.google.com (mail-qv1-xf2a.google.com [IPv6:2607:f8b0:4864:20::f2a]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id A1A92212B for ; Fri, 8 Dec 2023 08:51:11 -0800 (PST) Received: by mail-qv1-xf2a.google.com with SMTP id 6a1803df08f44-67a9febb2bfso13033716d6.1 for ; Fri, 08 Dec 2023 08:51:11 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20230601; t=1702054270; x=1702659070; 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=eIcp9jypYULc/a0PN4uogFYiIDljiHAuDtNHVxk71mg=; b=YDDwHLv7SUyZKqLAN3Dp3qQ2a+bpKXd61JPV9sC/ojIs/BY69CbfdAf/3HMmJtKvIo xOYIXIpEKPRmzEzOTeLerjXq1EUeuggZUlkssAXPSYqJsxVruf5wXoBgtC+qxQ+u1Nsj J+vN5onqVkCDgZ/PvwNBbjR8gaIbVE5Vf/xJu+HRU1F1RjxEprenqLznBT+SJPkW5DrJ cFFtkUTSQVtTcB8D4yTMp88UUD84FXuAawzAr4qaxMNjkeX8YlzjJggChl5AEVWPO1+i OEmcw7+vZgO8zYqBF2XfNMHgoTFGriK98bH+3ci++yyTgwB24VRQUs5Z+RI28GAjV5E1 jEHg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1702054270; x=1702659070; 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=eIcp9jypYULc/a0PN4uogFYiIDljiHAuDtNHVxk71mg=; b=cD4Zoc5DuwOB9Lwzt37j3Q8vdvEX4ERMRqSFs6g85gWgGQHmZa3dNS532c07BOg19z 61JSkBB0loHowYkQH9w+nWJ4xluXly8gBzFIrirkQvryrgz6srToCbRBPEsLqUdc4Q5p jbfeLSDlWxzgOtUf15wXeuswG+nBPnUEiVsGQ6BttiJHUxqQznvqzTBZ0RgWr6Psx47B NZ1MmmlyuecqMk+9kzNgSNs73opnt6piW3TY87Aq1tc2QbZ2q+3h9Zyzsbcih+6RZ1L0 ZbY+JZBGwvOpg/vIhZidkG/F400VcTwIYgHpcjqM+C50kaByFVXHcSTMp0XMV9fvd3EM 4LcQ== X-Gm-Message-State: AOJu0YwgbLIDJBIdYp786ESNF6ZQ1F63EkeZY/39cUnDETXyR9TFL759 bPvs2PV+KofqczM3oepIN2eYWWc/0/iBw9ExaazlIw== X-Received: by 2002:a0c:ea88:0:b0:67a:9a7d:ee10 with SMTP id d8-20020a0cea88000000b0067a9a7dee10mr256389qvp.0.1702054270555; Fri, 08 Dec 2023 08:51:10 -0800 (PST) MIME-Version: 1.0 References: <20231121220155.1217090-1-iii@linux.ibm.com> <20231121220155.1217090-19-iii@linux.ibm.com> In-Reply-To: <20231121220155.1217090-19-iii@linux.ibm.com> From: Alexander Potapenko Date: Fri, 8 Dec 2023 17:50:30 +0100 Message-ID: Subject: Re: [PATCH v2 18/33] lib/string: Add KMSAN support to strlcpy() and strlcat() 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 morse.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 (morse.vger.email [0.0.0.0]); Fri, 08 Dec 2023 08:51:54 -0800 (PST) On Tue, Nov 21, 2023 at 11:02=E2=80=AFPM Ilya Leoshkevich wrote: > > Currently KMSAN does not fully propagate metadata in strlcpy() and > strlcat(), because they are built with -ffreestanding and call > memcpy(). In this combination memcpy() calls are not instrumented. Is this something specific to s390? > Fix by copying the metadata manually. Add the __STDC_HOSTED__ #ifdef in > case the code is compiled with different flags in the future. > > Signed-off-by: Ilya Leoshkevich > --- > lib/string.c | 6 ++++++ > 1 file changed, 6 insertions(+) > > diff --git a/lib/string.c b/lib/string.c > index be26623953d2..e83c6dd77ec6 100644 > --- a/lib/string.c > +++ b/lib/string.c > @@ -111,6 +111,9 @@ size_t strlcpy(char *dest, const char *src, size_t si= ze) > if (size) { > size_t len =3D (ret >=3D size) ? size - 1 : ret; > __builtin_memcpy(dest, src, len); On x86, I clearly see this __builtin_memcpy() being replaced with __msan_memcpy().