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 1DDD7C77B73 for ; Mon, 1 May 2023 14:06:04 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 37509900003; Mon, 1 May 2023 10:06:04 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 2FBFB900002; Mon, 1 May 2023 10:06:04 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 19DFA900003; Mon, 1 May 2023 10:06:04 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0010.hostedemail.com [216.40.44.10]) by kanga.kvack.org (Postfix) with ESMTP id 07E8E900002 for ; Mon, 1 May 2023 10:06:04 -0400 (EDT) Received: from smtpin09.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay09.hostedemail.com (Postfix) with ESMTP id 920F180786 for ; Mon, 1 May 2023 14:06:03 +0000 (UTC) X-FDA: 80741860206.09.51B4249 Received: from www262.sakura.ne.jp (www262.sakura.ne.jp [202.181.97.72]) by imf23.hostedemail.com (Postfix) with ESMTP id CB460140017 for ; Mon, 1 May 2023 14:05:59 +0000 (UTC) Authentication-Results: imf23.hostedemail.com; dkim=none; dmarc=none; spf=none (imf23.hostedemail.com: domain of penguin-kernel@I-love.SAKURA.ne.jp has no SPF policy when checking 202.181.97.72) smtp.mailfrom=penguin-kernel@I-love.SAKURA.ne.jp ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1682949960; 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:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=yU/gORW4fwAfZfwVp3YiILWPswfwvM507Mnfhkh5Ih0=; b=T9s1zqIx6x7UCGhMhctM/WlC4fwGSLs+FmxCVSU3yztoOO0uFxe6I4UtMZiMBlmbz/8akQ 16TXPPcdoCn4+XHDt6FW8z3pAETmlkfZi6IR+LoV6UNSIG4H4D6l4RECwAiYd5pooCr+6k YrmNN8eopYv7gz+ernqByBFLO/MXGmU= ARC-Authentication-Results: i=1; imf23.hostedemail.com; dkim=none; dmarc=none; spf=none (imf23.hostedemail.com: domain of penguin-kernel@I-love.SAKURA.ne.jp has no SPF policy when checking 202.181.97.72) smtp.mailfrom=penguin-kernel@I-love.SAKURA.ne.jp ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1682949960; a=rsa-sha256; cv=none; b=h99hN9e1/Y2WGqxKi2AYe8yKl6TIs3mVn6d8n3j0CZ2GdJh/X9Jj+R6milUx8BCvEjw9t1 7vT0gIwHD9NehMptfQTJ5Um2kc1XNv13cQ5qY4CKElGqZjvP37BNQKhZcNNSLMA3gC1gOG 5qmuCBfTfOwtC0mqevdNRGz9cy1fRL0= Received: from fsav414.sakura.ne.jp (fsav414.sakura.ne.jp [133.242.250.113]) by www262.sakura.ne.jp (8.15.2/8.15.2) with ESMTP id 341E5ZW8047241; Mon, 1 May 2023 23:05:35 +0900 (JST) (envelope-from penguin-kernel@I-love.SAKURA.ne.jp) Received: from www262.sakura.ne.jp (202.181.97.72) by fsav414.sakura.ne.jp (F-Secure/fsigk_smtp/550/fsav414.sakura.ne.jp); Mon, 01 May 2023 23:05:35 +0900 (JST) X-Virus-Status: clean(F-Secure/fsigk_smtp/550/fsav414.sakura.ne.jp) Received: from [192.168.1.6] (M106072142033.v4.enabler.ne.jp [106.72.142.33]) (authenticated bits=0) by www262.sakura.ne.jp (8.15.2/8.15.2) with ESMTPSA id 341E5ZXe047237 (version=TLSv1.2 cipher=AES256-GCM-SHA384 bits=256 verify=NO); Mon, 1 May 2023 23:05:35 +0900 (JST) (envelope-from penguin-kernel@I-love.SAKURA.ne.jp) Message-ID: Date: Mon, 1 May 2023 23:05:35 +0900 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.10.0 Subject: Re: [syzbot] [mm?] KCSAN: data-race in generic_fillattr / shmem_mknod (2) Content-Language: en-US From: Tetsuo Handa To: linux-fsdevel , Alexander Viro Cc: akpm@linux-foundation.org, hughd@google.com, linux-kernel@vger.kernel.org, linux-mm@kvack.org, syzkaller-bugs@googlegroups.com, syzbot , Dmitry Vyukov References: <0000000000007337c705fa1060e2@google.com> In-Reply-To: Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-Rspamd-Server: rspam07 X-Rspamd-Queue-Id: CB460140017 X-Rspam-User: X-Stat-Signature: wpma41gxoftocwcahow1at6on4wmtxqp X-HE-Tag: 1682949959-97055 X-HE-Meta: U2FsdGVkX19wxI6uzC3tyCqR/px4G0gF/Jn6i/+Z2i1qUkO0jmVw7scu4WqQhRxYmMA6J6jHvI018sfu+dZ9Z/cAc2ofGPZRG3G2tZFAH+qMO2ZPCWZbInK8pH52J25ewRJiJOdOBfrktb4ZH84jXn8nAYXGDbPCrlWzKmXlU3byv0udsBfw5MVEuVKS1lUkx0ABIHtKG8YFq7YkedKnuMH1VcAiR8iI0DxRQiqHiqyGQKDkZhKXJT8zuIhwthawAaSPUjZZpBQQ919dJGd+UDb+aHKpcLXKT7CjapV5H8EJV7xQlvAoqQiuauJpx18klCSSF8weK//T/zza1t9+wYbWHafdFBo6bpq3k7qLG83k3uXQn/vMHeK9m2kL/F8b999hQ7+UlxieMfO/0qGAc0TtkuC4QGLqot1UtFvwQkQVPNrjUsk0dIc5LWguP28pTJBd8ZXhgN4RjQx4fGM6tZAJQ/8o9lYb1IYs1UWsfww0zR/xklfcl81DkQs2WA8LuxDKvkYnn8ptSXI4jenQR+9bR0MKKhzTxGM2ilr2bvlz5W1zz+AOjJxfKa0me/MxoKMZr7JUQC82Adu5ue/DTTAz1X18snbXhnZhPbMeDNT/IizGQ/wreeqZ7g3tAj4Ww9a/lZlgc5PyJlOwpKKTfjKHPYo2VUcMAIdnvT2v8NO0pY7j3DRd2cCRnvJmmA/R7C9z8AlMN+oSU+WQVIVt8vxZr8s+7fd6HQGY0uLQ1Y6YuUQRHIkpLs+1nXWWnvk6uq6oesge/kQvRvDP1En3H5luQUQpk05oBB4exMIxqgoJypI/tgeZlEHY9vOHHZOzP/KSTG5paJ3vf4bIN79GkUY33CUezu0ecTnpA2aO1goLAvu9sZVlhGykAA21f8avB7Y0vgzKCzJDg4uRK5qAMtbAfc6UDrZUGa6B97w8//uyrNlrTNvYzoLDOWRYv0DH2KqxnfuAWkJLDm3Sc/L 1J4ZWjKG KZpXXhYM60oQ0wQUgZ2sU9tl5RDPx+59yppR/NIzYclYJS39ufSliI/BGOhRYU+ZjRzIHyPC3WWqXYqESm2dqR0xFLm8voDepah2D2QbrVlcBniWJUMOoQ/X3AQBLSwm6Bt6uJEXpJhr7JZHyb7vVte5cHkhaTKQApG9I8Ar79TMao+DRKcujrdP3UeMQaMzd/3xacuhYVnK1ye89yF98SAolJunCiEnq4yRk5DWj4o7ZKiGIfa12PU849kb1G1140d6Jg0YhudZLlvjpC2kpVL8ATTOkGX+l3df3UDrSMG9clQnQRFIXISpxXct85QHnXOJnh9d8/Q4hXNcrQY6z5cjZK+9RDCodyWybquJQWSFMNYUqI2VeM5bHpXBiR7QjGwqWPu7nbH/J3Ih03yrZ5/xFHXZ1mIEvJI1HUaXPnNgGPP7n6PWLXMWPo/k7z2yIKJ9Y0uch5E59V1mSI7sYFdTiEw== 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 2023/05/01 14:15, Tetsuo Handa wrote: > Hmm, where is the serialization that avoids concurrent > shmem_mknod()/shmem_mknod() or shmem_mknod()/shmem_unlink() ? > i_size_write() says "need locking around it (normally i_mutex)"... > Since filename_create() calls inode_lock_nested(path->dentry->d_inode, I_MUTEX_PARENT) and done_path_create() calls inode_unlock(path->dentry->d_inode), serialization looks OK. Just the name is no longer i_mutex ? > Also, there was a similar report on updating i_{ctime,mtime} to current_time() > which means that i_size is not the only field that is causing data race. > https://syzkaller.appspot.com/bug?id=067d40ab9ab23a6fa0a8156857ed54e295062a29 Do we want to as well wrap i_{ctime,mtime} using data_race() ?