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 6E4EFC3ABC0 for ; Wed, 7 May 2025 12:29:54 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 7664B6B0088; Wed, 7 May 2025 08:29:51 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 7160F6B0089; Wed, 7 May 2025 08:29:51 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 5DC5E6B008C; Wed, 7 May 2025 08:29:51 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0017.hostedemail.com [216.40.44.17]) by kanga.kvack.org (Postfix) with ESMTP id 3F5436B0088 for ; Wed, 7 May 2025 08:29:51 -0400 (EDT) Received: from smtpin21.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay06.hostedemail.com (Postfix) with ESMTP id C6491CB5B5 for ; Wed, 7 May 2025 12:29:52 +0000 (UTC) X-FDA: 83416043424.21.9824CE5 Received: from mail-ed1-f46.google.com (mail-ed1-f46.google.com [209.85.208.46]) by imf28.hostedemail.com (Postfix) with ESMTP id BBE17C0004 for ; Wed, 7 May 2025 12:29:50 +0000 (UTC) Authentication-Results: imf28.hostedemail.com; dkim=pass header.d=suse.com header.s=google header.b=K5DPOCvr; dmarc=pass (policy=quarantine) header.from=suse.com; spf=pass (imf28.hostedemail.com: domain of pmladek@suse.com designates 209.85.208.46 as permitted sender) smtp.mailfrom=pmladek@suse.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1746620990; a=rsa-sha256; cv=none; b=Fk4gVnb8JDlIrE/rA0mDs3FLwq/XeIxLgxc4qRb63r5x6UScVlnW+zCLhGewbspxx04zq1 wOgnyDMNTbawUaWTe4kwdY1oH/yeXenkiZSvx0CHq1/BsddkRxQRJTV5xopgY5zdsLiIE4 GA+b+Gpnmc32cehMsGw7jpUZ36XQIJI= ARC-Authentication-Results: i=1; imf28.hostedemail.com; dkim=pass header.d=suse.com header.s=google header.b=K5DPOCvr; dmarc=pass (policy=quarantine) header.from=suse.com; spf=pass (imf28.hostedemail.com: domain of pmladek@suse.com designates 209.85.208.46 as permitted sender) smtp.mailfrom=pmladek@suse.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1746620990; 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=ZW0x6+aPcBTGf4RTVQ8qhVtJhNXiKy2eXwn1Y4GghS4=; b=efK34eZGe1CUAFYgtCuHSi9kuhq4A19O7rlCzDEbHiS8Tw+z3cJCgsgB42K6L9NxREEm+T 7/Lb6s/UnhW9yH58hWwF+yrgr6WpbWHKdJXkBq5ejpbtr922Ch6ynm00fYJAlGiu+LJy8W muimH1SMw5Mdne53JIF9KHcUI+Nse1Y= Received: by mail-ed1-f46.google.com with SMTP id 4fb4d7f45d1cf-5fbfa0a7d2cso590753a12.1 for ; Wed, 07 May 2025 05:29:50 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=google; t=1746620989; x=1747225789; darn=kvack.org; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:from:to:cc:subject:date:message-id:reply-to; bh=ZW0x6+aPcBTGf4RTVQ8qhVtJhNXiKy2eXwn1Y4GghS4=; b=K5DPOCvrj53GfvTVpsKUpM7NB9u3JGWbSQQZeylk6R9J5REMvCyyJ5bBV1j2JRj1Dz 3Lk7HUbCgX5DnmZVAlJ8urC/cAz+pzlUez5U8dsy11kq0rvy82dlxBuyRN874+9jdzHl 2YtQfc4NyE97kquN2ENVT1sbGa1SBwSbhdLRfzESZmOcBRnE/P+WmHTUcmYjau6vZzid CdVPIQaBEhpIT7Tg/sFWV3YmHQV0rKrQtc18aBut7oZOjVZoRAYnM5/6bMcIY5zcHzlD r1XSFpLApjK0gWW1UjWa246wrUwk5gVqeu7NE3SSPsVwUsSxagDWaiidhQREtNosMbVe wmGA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1746620989; x=1747225789; h=in-reply-to: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=ZW0x6+aPcBTGf4RTVQ8qhVtJhNXiKy2eXwn1Y4GghS4=; b=mrN9VFW1SyNOeYT6pqZe2uCjBlEyw0fstffvqcrnLOQ/qEUlHP8YZroVX7otv77boZ /LquGGtRhZ+VnAEA6ncgBGmZybsVAiAkL9Y40fyz00ij4OyD3KMhlezNWoF3hmlTNkBh 40ABLvwFGzh8AP61nj0xAuY35ZQOP8LOPEVvLNrgEAKyFlEiE2PJEKBVigMK06nNaIth 13hNsavIKeTKsiY0R8HNOBiQI8Si55V8aiXMDg5J8t6cPXxsK3KZ7Ihn9QFGOLflBeVk a/1R7iBqAd9M9j1uuZhPtwvkz/2RkzE8GAVOiL6qcssl6ovA7ww01LXPBGorWOkX/N1f TXZw== X-Forwarded-Encrypted: i=1; AJvYcCV1z+sqT2C+9xl73FSLonq11VWucxHv0nzVfEoDwhvcQ93NUILk4jjib2mr7agrsflwDdgu4Sjbzg==@kvack.org X-Gm-Message-State: AOJu0YwYf74r1FvbUL1G1MXGmOCUrib0OXpN4H9XeFOXctE1m618qi0l Rl1XHt+reOI96TgWtatU20mV4hYyer8q1BwRv5G3Ee3k1npcIMA+OA44+8Q8AoA= X-Gm-Gg: ASbGnctRL+8ERVne0rc5W9GG+kZ3f/OPdy3OcsQUBR7r/+uvvv/wVIMA9v2dkV3OEth 7luQHNst0n8iMOc63jdH3pXUBxkW90rd+9kXaRnfr2T/0KW14jfd+54BhylGGiZrCa+H1F6dhy+ 0pRdNkpSjAvKMs7J9cyC/8mOvsdMyS0w0HfNMPfx3A7MOWZscQDsdouL4BFh+wocd64jwVUeWDR BSG6fRk6/1FK6+lpjBoaOswozmD+PLHAxp1oaXWRMCloszT3uBeHcIbBXlbQdo808Pm3YBDr3Bh BSXyQEDsKKlvKEF3fKmcKFlJ/Hn+RHbvJfS5aJwz X-Google-Smtp-Source: AGHT+IFcaF2HbosKXMSG7ssx4/Idj9ECcUf+SjKCY6flcCBO1BJAIS54Xv8b1MSnCIFm4q1ZvQeSUQ== X-Received: by 2002:a05:6402:2804:b0:5fa:aa28:b10 with SMTP id 4fb4d7f45d1cf-5fbe9dcd645mr2810548a12.13.1746620988876; Wed, 07 May 2025 05:29:48 -0700 (PDT) Received: from pathway.suse.cz ([193.86.92.181]) by smtp.gmail.com with ESMTPSA id 4fb4d7f45d1cf-5fa777c5c3asm9429175a12.21.2025.05.07.05.29.47 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 07 May 2025 05:29:48 -0700 (PDT) Date: Wed, 7 May 2025 14:29:46 +0200 From: Petr Mladek To: Bhupesh Cc: akpm@linux-foundation.org, kernel-dev@igalia.com, linux-kernel@vger.kernel.org, bpf@vger.kernel.org, linux-perf-users@vger.kernel.org, linux-fsdevel@vger.kernel.org, linux-mm@kvack.org, oliver.sang@intel.com, lkp@intel.com, laoar.shao@gmail.com, rostedt@goodmis.org, mathieu.desnoyers@efficios.com, arnaldo.melo@gmail.com, alexei.starovoitov@gmail.com, andrii.nakryiko@gmail.com, mirq-linux@rere.qmqm.pl, peterz@infradead.org, willy@infradead.org, david@redhat.com, viro@zeniv.linux.org.uk, keescook@chromium.org, ebiederm@xmission.com, brauner@kernel.org, jack@suse.cz, mingo@redhat.com, juri.lelli@redhat.com, bsegall@google.com, mgorman@suse.de, vschneid@redhat.com Subject: Re: [PATCH v3 2/3] treewide: Switch memcpy() users of 'task->comm' to a more safer implementation Message-ID: References: <20250507110444.963779-1-bhupesh@igalia.com> <20250507110444.963779-3-bhupesh@igalia.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20250507110444.963779-3-bhupesh@igalia.com> X-Rspamd-Server: rspam11 X-Rspamd-Queue-Id: BBE17C0004 X-Stat-Signature: hjgwmz61hw4rfkgcwh9zied77giopu93 X-Rspam-User: X-HE-Tag: 1746620990-111215 X-HE-Meta: U2FsdGVkX1+8VPNkZmG7VpjGGEUWF99sq0eUpH6eJwiodrOZExeB1xmbVhBddApn+HgnoROtN620RcHDT8eKQNg05nijq6dwlBRzSa26pkrG+5p5XOIRLwnz2A6RS98H0xXJHHVfh7rtSgnWxnuroaCMwO2Z397iUeQ2ksureOpb1gxc422mXMJPe1qMje2MJCsW9DNEw686Ny3hYHHYPk4w+35SinMFa+9LdNeiKMrehU1TPE6B2L227/i5IAe9bzW7EcgLYqCgeqt6ooRfYDqW38Jpc2gKTfq6EyF7hWsytDZTFS+Hpe4y+Ax0qhFVeUGbsCkkyMw5sqW8gDtJsSrYhl2TxlaE4Hwe67sb/ZKr75iuZhPRoQcT4b1y6z+4vvxGyo/ktS8uuedO4QH3Vvn+M2Z/wAcWlx+6Pfbm/m2rWdaIb7sBQbLH40I/K8jQt5D/FgI2cVVZ/uNKqH6bnKiQryz3B6OLnuBs9TthErBxAjeaEbPb3csjV2Nhq/q30OmZr/5ToR0Uk8MFOX9vNDDtKBvqk+CAAWB8net6KVKF3BJCUNLnrMJBNdtiSo0PPRBqF1Ub68h5JhLTLyJfyuHrNpl95/ScOfK3pukLmXGxEnck6z9ixaDy9QWo3cf1IOVUsORH04Rn1FDaTEmytRjAoWg/Kl5H2goV4056xFZUZ/zRWLXR35PkkU9UQi4t+ej/U1u3x/iHYYgYtkJEj64C+7CwgbUTVj+kSkeSgvThPRUrcDvD/P1pvPNHB1PO0lIqs43SXZ8juXZjJpIpzzJlCgUvT0Rhsnbc2lFYiB9l4OZoy8V+EHivnQljkJLT8eK7pmkRrB4fuvKbN5UI9AmMb/sr9hP1fXx88oZ2cpAhgNlNQ1BBgDbBUAlK30xSSYor+lQFxA7/auDY7uxMUc3Ldu/+4ZJC9to93K5tLrq7V/Dk4TxkoT9kvPrxgmUR9FBu7HAaxggJcpGikUd MwK69LqH ssCsGKprtR6WEOqJSpJcYcmoKNJeq/A5hihxou5HFmFT7fb2sXj0LqU6BOp39aFiZeIyyVrJu/HVCqI7kEXzr2cyxWY7PxUK/wBl70lZVF9VAg65ldCdfJlyjLlUtWKq/H9BZtj+zSw18V1564TmiXOXTQVLUEC+BqkrvCPfiJv40VhEpOW+qpNmBLrrJEzCQQ5xdzIereorPP3hYVrbfWt8pJyo7swyswtTjDxEoz0wL1YH2hjfUSys+XRdkloAkyAhJOWbXQZQwptweRJKD0PSyY6eNcp56vuSAlCG72Ack3B+3p2B6nym3JBxqfX6seXuZEx840eEJhN0e2G0RFwsgzSx/0FwqYBtuoFVQLeuHugCz4yyNMsZBFV6LtznbZnLgyZ/griAddR4= 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: On Wed 2025-05-07 16:34:43, Bhupesh wrote: > As Linus mentioned in [1], currently we have several memcpy() use-cases > which use 'current->comm' to copy the task name over to local copies. > For an example: > > ... > char comm[TASK_COMM_LEN]; > memcpy(comm, current->comm, TASK_COMM_LEN); > ... > > These should be modified so that we can later implement approaches > to handle the task->comm's 16-byte length limitation (TASK_COMM_LEN) > is a more modular way (follow-up patches do the same): > > ... > char comm[TASK_COMM_LEN]; > memcpy(comm, current->comm, TASK_COMM_LEN); > comm[TASK_COMM_LEN - 1] = 0; > ... > > The relevant 'memcpy()' users were identified using the following search > pattern: > $ git grep 'memcpy.*->comm\>' > > [1]. https://lore.kernel.org/all/CAHk-=wjAmmHUg6vho1KjzQi2=psR30+CogFd4aXrThr2gsiS4g@mail.gmail.com/ > > --- a/include/linux/coredump.h > +++ b/include/linux/coredump.h > @@ -53,7 +53,8 @@ extern void do_coredump(const kernel_siginfo_t *siginfo); > do { \ > char comm[TASK_COMM_LEN]; \ > /* This will always be NUL terminated. */ \ > - memcpy(comm, current->comm, sizeof(comm)); \ > + memcpy(comm, current->comm, TASK_COMM_LEN); \ > + comm[TASK_COMM_LEN] = '\0'; \ I would expect that we replace this with a helper function/macro which would do the right thing. Why is get_task_comm() not used here, please? > printk_ratelimited(Level "coredump: %d(%*pE): " Format "\n", \ Also the name seems to be used for printing a debug information. I would expect that we could use the bigger buffer here and print the "full" name. Is this planed, please? > task_tgid_vnr(current), (int)strlen(comm), comm, ##__VA_ARGS__); \ > } while (0) \ > diff --git a/include/trace/events/block.h b/include/trace/events/block.h > index bd0ea07338eb..94a941ac2034 100644 > --- a/include/trace/events/block.h > +++ b/include/trace/events/block.h > @@ -214,6 +214,7 @@ DECLARE_EVENT_CLASS(block_rq, > blk_fill_rwbs(__entry->rwbs, rq->cmd_flags); > __get_str(cmd)[0] = '\0'; > memcpy(__entry->comm, current->comm, TASK_COMM_LEN); > + __entry->comm[TASK_COMM_LEN - 1] = '\0'; Same for all other callers. That said, I am not sure if the larger buffer is save in all situations. > ), Best Regards, Petr