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 47F92C52D7F for ; Sat, 17 Aug 2024 08:39:08 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 697228D00C9; Sat, 17 Aug 2024 04:39:07 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 649C28D00B8; Sat, 17 Aug 2024 04:39:07 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 536298D00C9; Sat, 17 Aug 2024 04:39:07 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0013.hostedemail.com [216.40.44.13]) by kanga.kvack.org (Postfix) with ESMTP id 377088D00B8 for ; Sat, 17 Aug 2024 04:39:07 -0400 (EDT) Received: from smtpin26.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay06.hostedemail.com (Postfix) with ESMTP id D3358A635C for ; Sat, 17 Aug 2024 08:39:06 +0000 (UTC) X-FDA: 82461087492.26.6D5F053 Received: from dfw.source.kernel.org (dfw.source.kernel.org [139.178.84.217]) by imf18.hostedemail.com (Postfix) with ESMTP id 2C10D1C0017 for ; Sat, 17 Aug 2024 08:39:05 +0000 (UTC) Authentication-Results: imf18.hostedemail.com; dkim=pass header.d=kernel.org header.s=k20201202 header.b=X4qRGs68; spf=pass (imf18.hostedemail.com: domain of alx@kernel.org designates 139.178.84.217 as permitted sender) smtp.mailfrom=alx@kernel.org; dmarc=pass (policy=none) header.from=kernel.org ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1723883907; a=rsa-sha256; cv=none; b=3q2YaFpgQICqI5/qDLZ86gE2SKjL0W1fe91BlvlehNw/fLwV6F5BLARPq6Sz0RW5Ei5dvR st8/WcUzCofwog91wdOkc7z2hw/6lAQ+XwsXUfFEWpDqOAXo3K/HFSk51oOvTT2ssn6krb f7m8zHs7Oq9/DBs3ZpFLdFS39XZpOCk= ARC-Authentication-Results: i=1; imf18.hostedemail.com; dkim=pass header.d=kernel.org header.s=k20201202 header.b=X4qRGs68; spf=pass (imf18.hostedemail.com: domain of alx@kernel.org designates 139.178.84.217 as permitted sender) smtp.mailfrom=alx@kernel.org; dmarc=pass (policy=none) header.from=kernel.org ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1723883907; 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=b2RMR9iAq5g3Wh+AnLqIiKiTtD46yxCt1BYGtNZpV2o=; b=y9b3LYxxxGWWsRGC54z5gLyNvTbWfST5/sAjY8Qnu9qpo5QXnAH6LNCLdWY/+JTvR2EH8n AWg6uJPmZXvrQB5fcMUxNoxNp8jo2pndAJQHnim0c0V791QYrFI8OEt3QYvyAY0ufu+nUB oleBcrhnotVi9ZZn/wO387qN1Q8v6CA= Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58]) by dfw.source.kernel.org (Postfix) with ESMTP id F386360598; Sat, 17 Aug 2024 08:39:03 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 30869C116B1; Sat, 17 Aug 2024 08:39:00 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1723883943; bh=drcR0Ggvob9Xsaq04tuibw0a3w723D1cXfmcavnp7v8=; h=Date:From:To:Cc:Subject:References:In-Reply-To:From; b=X4qRGs68mHWdMwsIm8IcqoC0AjlA9unRAZyZItSaeap7PHizirk/hNNBeXaBbSGyi 8TXQAjPdxFfBxyi7yYHq6mqApaR7yxkD08nUzjQj/awldhvM9VJr1i07GxDJn/8scG h28lmq1aJ4tliJZ6C4qTmJbhnufQdVSICkHH28rbualNjCN+dMGOAKFWA7bYRML9Dp zwk6+UUbpp+JiZxIrb3mn6+4/C5QLDZrwDqVugy8N3Q+dWQyhmirfyEUCVdCO3dsJH B0bz++Fwz+qpQzZ2Ia9SU0OIHOlNdgLk+3ah1rTJqAY9M7W4pASoQ/+TjDqoROGXH3 JeShGAxlHtFsQ== Date: Sat, 17 Aug 2024 10:38:58 +0200 From: Alejandro Colomar To: Yafang Shao Cc: akpm@linux-foundation.org, torvalds@linux-foundation.org, justinstitt@google.com, ebiederm@xmission.com, alexei.starovoitov@gmail.com, rostedt@goodmis.org, catalin.marinas@arm.com, penguin-kernel@i-love.sakura.ne.jp, linux-mm@kvack.org, linux-fsdevel@vger.kernel.org, linux-trace-kernel@vger.kernel.org, audit@vger.kernel.org, linux-security-module@vger.kernel.org, selinux@vger.kernel.org, bpf@vger.kernel.org, netdev@vger.kernel.org, dri-devel@lists.freedesktop.org, Quentin Monnet Subject: Re: [PATCH v7 4/8] bpftool: Ensure task comm is always NUL-terminated Message-ID: References: <20240817025624.13157-1-laoar.shao@gmail.com> <20240817025624.13157-5-laoar.shao@gmail.com> MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha512; protocol="application/pgp-signature"; boundary="psoj2t3rvkbpqmnp" Content-Disposition: inline In-Reply-To: <20240817025624.13157-5-laoar.shao@gmail.com> X-Stat-Signature: cesr3hgcqg4uridgfaybip6f6nddq5df X-Rspamd-Queue-Id: 2C10D1C0017 X-Rspam-User: X-Rspamd-Server: rspam10 X-HE-Tag: 1723883945-380393 X-HE-Meta: U2FsdGVkX1+Rb81gRUSS6riHu6ZuP+Ny0clBrTjHaNtSc4T0lpewcrLB7QqCfLImAe/BrJkVK6Ejixy7fQee6OAc2910JvBMORowWUuE1f0ZD/0XhDbkxYFGQcBeAEhaQOKJSXy5f+6/jeGDBoGbVJHoV7Qmyagq0Yb06wWGOiwbq2fw9JeZXrs5eYKEHX0AmzdxQ1pMhVx247eXL9NpVwe2gy8MPjNF8eJYz4E8D8BIm4ZQk8fRPKkld8UQYpSaPZ9EkM2YjThK7D9veUQEA+3o8MSUxXJDnvzRznK1sglg7zJ/uAp16EYIUoqCcYwtTUBWKc7ofRRBmebhtOtB12pIf7sMf2SWdDvr4XEEzsMxwlyQasm4wLVf4TNdhrMHDGnrz9K/vaBj3CzDLStBshh1MmmP/d8UkpGb11xD7VTNSgP1ddYuS9hAABfDWmM4kSlLG05pbfQbttt1gpCAuICnZFmuTpqUEbNh0//CPFxb9ge6fgzsJUlA+39TLpkq+bEUHI9UmLG/IRds9MrCk1ibW3/FZuEjlH9kbS1njccvp96q67rlQfprz524cs5Y2nfdTVOEjvWE2CMnIRBqIL2mXmZZ/ATTh30J6UX7PCI9toQGyU0ga6XdGEecZSygr7TI8A5KWPNAYiDp7wZvk/hdTFzk8/4lbk/LpOIgaGO9FNshwUlPgCsUxMoVgxr+2xH8Sj78vSiwrjzBw7AUQHqI4Ilpy8ensfpoejzsLexV9ueS4WiUkxQxqJfbkaziNxHPcEa5ak4NQv4NWvemOuHAmAgvmJawhbmSZb0JRTwYUIfiitc36ZJKFWpnpvKlu8ovZDG189FmkuE3httNDPVO4TslJu4gROkDj3oRZFzx4nfJ2QIKvWgeS0kG85ZU8xgsHrYMmNXNK+FD823Zbuq28wflbrO1jOxesFe6ztoeAAK2951B2dMXd/Br8xU4S/zuwRU0J7V1k4iQfHX BddTHnlk DZ6meh44Hoje37hHVLtdfuVbK2cMpj27+YQOdj997l7DCZneMyIi6lFSwtFgfIKG+SZmQ2BZUH6ccBNw7tlt/PhOQsPSQmI+hrD6/UA7ad/6FhLVnht81rSyjO18U2GCaw00Qg5RxWl74hYB3D8WqWiE/L9fyF0U8J/oNowhLVscqqnSDxNBa9uKAErpr5LqoxI+sq91C4FbSf5n4Aq1vZtv6H+NExBqhkwJSMhCl8GUZRCERUFsoMb/LweMbidtjqG7DmAmUD5s3eYvkAGj9iFqwuK7K5KN7+SAn8LImVDsOLTbDq5SjHmtSWzXOsj0o/EAP9lznxlq8/88Hb9EXz4JRAJjYC9iicsUI5L//aVBHhBPComqxUYkG9vFx+ls7om04z32oIRirTtdaGJWme2FATw+yvwf3up4BNWMuNYJ1+RvDGtb8C84U3J7OOCQRzCj+OlX83CtPFBy8Dg7jZ1jL8ttiERqVeAm4eEapW47X2RvuJpSWeVbT+8J7IM5hhJ+AEXSHjKAaVxNugpJjeei+3Q== 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: List-Subscribe: List-Unsubscribe: --psoj2t3rvkbpqmnp Content-Type: text/plain; protected-headers=v1; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: quoted-printable From: Alejandro Colomar To: Yafang Shao Cc: akpm@linux-foundation.org, torvalds@linux-foundation.org, justinstitt@google.com, ebiederm@xmission.com, alexei.starovoitov@gmail.com, rostedt@goodmis.org, catalin.marinas@arm.com, penguin-kernel@i-love.sakura.ne.jp, linux-mm@kvack.org, linux-fsdevel@vger.kernel.org, linux-trace-kernel@vger.kernel.org, audit@vger.kernel.org, linux-security-module@vger.kernel.org, selinux@vger.kernel.org, bpf@vger.kernel.org, netdev@vger.kernel.org, dri-devel@lists.freedesktop.org, Quentin Monnet Subject: Re: [PATCH v7 4/8] bpftool: Ensure task comm is always NUL-terminated References: <20240817025624.13157-1-laoar.shao@gmail.com> <20240817025624.13157-5-laoar.shao@gmail.com> MIME-Version: 1.0 In-Reply-To: <20240817025624.13157-5-laoar.shao@gmail.com> Hi Yafang, On Sat, Aug 17, 2024 at 10:56:20AM GMT, Yafang Shao wrote: > Let's explicitly ensure the destination string is NUL-terminated. This wa= y, > it won't be affected by changes to the source string. >=20 > Signed-off-by: Yafang Shao > Reviewed-by: Quentin Monnet > --- > tools/bpf/bpftool/pids.c | 2 ++ > 1 file changed, 2 insertions(+) >=20 > diff --git a/tools/bpf/bpftool/pids.c b/tools/bpf/bpftool/pids.c > index 9b898571b49e..23f488cf1740 100644 > --- a/tools/bpf/bpftool/pids.c > +++ b/tools/bpf/bpftool/pids.c > @@ -54,6 +54,7 @@ static void add_ref(struct hashmap *map, struct pid_ite= r_entry *e) > ref =3D &refs->refs[refs->ref_cnt]; > ref->pid =3D e->pid; > memcpy(ref->comm, e->comm, sizeof(ref->comm)); > + ref->comm[sizeof(ref->comm) - 1] =3D '\0'; Why doesn't this use strscpy()? Isn't the source terminated? Both the source and the destination measure 16 characters. If it is true that the source is not terminated, then this copy might truncate the (non-)string by overwriting the last byte with a NUL. Is that truncation a good thing? > refs->ref_cnt++; > =20 > return; > @@ -77,6 +78,7 @@ static void add_ref(struct hashmap *map, struct pid_ite= r_entry *e) > ref =3D &refs->refs[0]; > ref->pid =3D e->pid; > memcpy(ref->comm, e->comm, sizeof(ref->comm)); > + ref->comm[sizeof(ref->comm) - 1] =3D '\0'; Same question here. > refs->ref_cnt =3D 1; > refs->has_bpf_cookie =3D e->has_bpf_cookie; > refs->bpf_cookie =3D e->bpf_cookie; > --=20 > 2.43.5 >=20 --=20 --psoj2t3rvkbpqmnp Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iQIzBAABCgAdFiEE6jqH8KTroDDkXfJAnowa+77/2zIFAmbAYZwACgkQnowa+77/ 2zKmIA/9Gqjb53CpMspqZM8sUUCdmGhqPv1cYcL2EDkg7W9lkRgn0GLudREK/roq y4QBmGljgAhm3UbecLPiKvAPtiYmGoOmndrjJ4mq8E6lSqkMjHoaiMZ2EEPI7u+p xPTHJklCQHIAndCjVjC7A4cIx2RZuBtx6Xg/JMgO7i/s0jtb2SqiQtXEEIHjuUd5 q0YybNl407qq/IRSt72qEL+rKEBVdcZppyDfoxPVKEZYOgbmhYpyyViq6Rli9HhU loprXpAdwiumkNZQHJ7It8nXlC5/J3VDuazDN193PNRprMfzC5TjBpWezf+KY7Wn Vx5tAC4H6ZTNdhD5a+NwfaApt9xqOcRVaYe2E1m1dMfIgojmUvJYd4zcRZBYRE5M uhQxkrRLueuJoKeqVcIlbPRTafIUd6lev0ccKam+Ao9J5Nt4TmqAUMyYIOymQ90B ldUgSSiofzyioNhrKNS1mLBCOVjTKClEBH+rbjKfO7KLf6Qo2dtvLoOCC5f7YZvy k9GsCv9jGEF64bGdcK82pM+LjftAWuTbO3Uwlw7qUNDKJb7OWjQS5BtejgQpiOh6 RB4z4wZkDZ/Skwke7F16AsEeMugdcRyD1Wyl4paqcw8sXhc1AquvuymC6OPV5u8z GZt0uJeVRKbg7CVQEny1jGFO8BiPLK6JzTHLRV3KRlTKCGc5vEY= =fb44 -----END PGP SIGNATURE----- --psoj2t3rvkbpqmnp--