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 48285C54E58 for ; Thu, 21 Mar 2024 03:48:45 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id B20756B0085; Wed, 20 Mar 2024 23:48:44 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id ACCF46B0087; Wed, 20 Mar 2024 23:48:44 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 994916B0088; Wed, 20 Mar 2024 23:48:44 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0011.hostedemail.com [216.40.44.11]) by kanga.kvack.org (Postfix) with ESMTP id 8ABEB6B0085 for ; Wed, 20 Mar 2024 23:48:44 -0400 (EDT) Received: from smtpin16.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay01.hostedemail.com (Postfix) with ESMTP id 5F9121C17EE for ; Thu, 21 Mar 2024 03:48:44 +0000 (UTC) X-FDA: 81919664568.16.7CF7DFB Received: from out203-205-251-72.mail.qq.com (out203-205-251-72.mail.qq.com [203.205.251.72]) by imf08.hostedemail.com (Postfix) with ESMTP id BB543160002 for ; Thu, 21 Mar 2024 03:48:40 +0000 (UTC) Authentication-Results: imf08.hostedemail.com; dkim=pass header.d=qq.com header.s=s201512 header.b=d84fziIw; dmarc=pass (policy=quarantine) header.from=qq.com; spf=pass (imf08.hostedemail.com: domain of lilinke99@qq.com designates 203.205.251.72 as permitted sender) smtp.mailfrom=lilinke99@qq.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1710992921; 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-transfer-encoding:content-transfer-encoding: in-reply-to:references:dkim-signature; bh=eqU7rPSQYUeIM0ABNvJ9ggZ+OdedolOfDpmn7pWZN2E=; b=NY89A57fgQE/M8XJGYk1SIsaPznxrWqiGcm0J1ulmXwr5mbzi96h7saVwloX+Xt7AsZ5y3 fYRKH5pIJrYXFCOAteCZ0EcOFf83VsXXc+9TJo8gydCRCwWvWXZkDYU7xDfA5bWhs4l+IN xhzkO0l+lYrJT5MyGhg7S6xBiid5tJw= ARC-Authentication-Results: i=1; imf08.hostedemail.com; dkim=pass header.d=qq.com header.s=s201512 header.b=d84fziIw; dmarc=pass (policy=quarantine) header.from=qq.com; spf=pass (imf08.hostedemail.com: domain of lilinke99@qq.com designates 203.205.251.72 as permitted sender) smtp.mailfrom=lilinke99@qq.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1710992921; a=rsa-sha256; cv=none; b=Kb4c28qFjDY3Gp+0cRB56p4czAIfei8iXexvexd2WsOySvQf0POJ7PdFZJtj2qKRyiK0LP +NU6JIdDWDMhXmqcmRTjvkE1gPRxB2Fkz5TD31Kz2m0bcZAWBGPJ/brocgS8iS4Btd4tJG 2HBCs9Mzr0I2pdRD2ezosoz3dZHFlhE= DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=qq.com; s=s201512; t=1710992911; bh=eqU7rPSQYUeIM0ABNvJ9ggZ+OdedolOfDpmn7pWZN2E=; h=From:To:Cc:Subject:Date; b=d84fziIwKJAa/sVpfwXYSiFjJ3Fcy6Sla2gFq5diH4bDeWE/dvnPhMDdFrhWrMK9l wcg7d6Ib4/phkzYzu4czI5+C98XwKQQFpuIqHV8rJ0X+PPUPXjgF/mhBgRYNCJx5ec eETHfEcxc9Ly60nJ3sgPb4r/QosCdAB0dXkigQ14= Received: from localhost.localdomain ([153.3.156.52]) by newxmesmtplogicsvrszc5-1.qq.com (NewEsmtp) with SMTP id C1BAB218; Thu, 21 Mar 2024 11:48:27 +0800 X-QQ-mid: xmsmtpt1710992907tiqej8r5a Message-ID: X-QQ-XMAILINFO: NQR8mRxMnur9k9L57IzZBIEuQ19ten/U7ZIVy1B8HQs0uj3/7fAVAjPtLc9Hkj /IaSQdLtG93XPZav6SnP3I7PnFUOvsEBU/6GEav15+q820H83+FPpt8vyGC4OszjQW42AeqkbS/b 072h+zeWELtMkuMVCW3YFiPCyxAv3vYwmzA9nPHpc0G0kpvsRoTY9VH0mtHD+k4XWNQj3BWDonUl 5yXa6bBUGREUz2Ap9d9f1hHCIhr/X2PX/4TBkxjjlkOcyN0Cww3iRw+ULJBJPC1iz2IqD4Ai83w7 Ufvex4TLS8+R09ObvTA7W56264CrULwStXP0l/8PWEtC2A9Q8QEhuLO4wIUNNeeFg+h0hMUw1CpY OCZM48xK0kS62LRcwywhcmPoRtIgrtj/T/Nk3hEGLjkYVuLPws2j3ktKwWUM9TLBd0ml19R2KWz6 G/fqGcSs2WM/3NLy+sXMh5BDNtpQgCxtJ0x5Ksc3LBPIYDKv3FNvf/bb5fGif5ORUtVRrSOAUClK g4ljB8DVDm+X+qZz0L/tc+ZJIi2XlKkNGq9mtmjZpmsBHpOnEWKvmCG83WAaFsth+ySeYArmr0nN axj+4UWUtxZrbXg0fwaAldTg23t6FnepZtMckYz1Ix0AKANp5nIDlbdktRAWA6c9qIhB7wAbh5UE NknbLMgK5xBgJUHrh4a15P/OFR80XzNztC4CS4dtBPKTZ4A9P7IX8wjHrXa32uZ7QD2onE0wGcfz lc4iTravxlw9DnuDJhhKdSPXgecTGoflfM/Ve6AvdZUAXVjloN9rjI+NnuDwBVEHC6x8A++KtgDe n4YeC/yngEB9GozlBhHfAKEQ1w+1srOt7tOOmEDeiuzKz55ZdDhyNJoIeN+Dki6I7qzawNh+Ia5V VmLMe+9ZOu4LbmcYUzky1yCtLKGBpBys2Zyp0THQwXf0hpbUWYFHrwIvsmjK4VQYZ0eKR3d7LF9K oJQFpCwoekQUeMC9YKLDr9Zx8i7MUbG4Dty0siQfDSWicEc/yOZiqT4vTfaTZq7q/F/6oKovv00E We40waFbdnIvZXq444 X-QQ-XMRINFO: MSVp+SPm3vtS1Vd6Y4Mggwc= From: linke li To: Cc: xujianhao01@gmail.com, linke li , Chengming Zhou , Christoph Lameter , Pekka Enberg , David Rientjes , Joonsoo Kim , Andrew Morton , Vlastimil Babka , Roman Gushchin , Hyeonggon Yoo <42.hyeyoo@gmail.com>, linux-mm@kvack.org, linux-kernel@vger.kernel.org Subject: [PATCH v2] mm/slub: mark racy accesses on slab->slabs Date: Thu, 21 Mar 2024 11:48:15 +0800 X-OQ-MSGID: <20240321034816.59019-1-lilinke99@qq.com> X-Mailer: git-send-email 2.39.3 (Apple Git-146) MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: BB543160002 X-Rspam-User: X-Rspamd-Server: rspam02 X-Stat-Signature: igtp96kk91x7i17rz8ksu3ts6nez4coe X-HE-Tag: 1710992920-445405 X-HE-Meta: U2FsdGVkX19MVJ/DzGFY92AkisDgpA036jJMUkotYDoZv3PT65j0p/2DX5WxSwNgEVyKxPSOwYPPkOcI1tZD15pH+ThxTXNbDRoN+Q1eS+GyeiceOVQm8DxVJ+IlXqzBysGzDTNqlyV8u60uvDt+9gnW0HBwXg17mN5gJ9LuGdQWuBUjfrZXwAYtnIYb08RwLg/7PPhj+sv0AWUqQERcF/cmHjzUZkVkzoULyXoBNIo06UJJ/LBm+rcEPEeoorqjvPsljlNWzkRnlGyoMkGCGyhu1FLqZvaww6mue0VlQaJmLo8ArKZ59JuzGhIBYrwmgebZI8XHPHZ7aqew1xnjvzGvskEQHbsDUlkH/i6Uc7dk18F79WjTwG+XCcciIN/58CbrPZxDTvXAP0PreqhVT1SIpK3NbaYEZUOKmI9TX5fdEY8J3AHKQq2scp47XjyYcxjisoUosP6P5vA3e5Vg4BB/ohDpB5D/LQo6YyBh5veqrCT/lUq7hv0LfGx08rn7h41QlFRGj7JXeDfk4ibrB5x0Y4+N1xPjZMbe2pO0oAXpuefCzdtW6CN5tslBv/RLW5yhY+gxz6OXT/CpD6VGU7r16wxYDphIoi1O3ySSX/BPODeelzXtiwjSQKEkD97XS/d+nrRWu0hoelxiH4Z2iMmTMG2Iwu88v6xeCtUTOx4LhIT04MLorrlB15EHe8L7e7ncJ+sd5qJUotxObLpfJTwhXFbeHkXPojbC3pykNRc+SQFI7rYLRDv1qh4DBBiD3GejL+sLihgAglAQ4FLjwmpNlPqfe5pQKwdkFaa4yUCJblpznN0ACJpce93R+6/ZGaCwDuUxMqVlc4SMO33OHna0bHqcWaC1MsUoYY+NjzIaUDePJ4VBBPQYbyKjvhYyXvWnwYtW4kk9VyH4VXoUwPBUewWIetXECY+hU6kn+VHwSV95lLe8Bdb4xsuRXDBXuceqTaiHcvBbHCCiuQd nkjQaPvG XSAsvlzUYWiexY5MFctEehAEBwCRaG01VJv/ClbESD6lPY3AJrmxstvf8w58aMP3i8h+fZ6Z8NMU3YbYVSg/UV8eT5o4qu5XvQ2+gJf1kj9zFIflsZQegNS7nnJIwri496+WNiBG02fIf+889WlBNQJrGTWtEeA+1TR2R0YWbkWxfhmORmmgWxuKe4jcjvX1jMM9jsNonu0ZwbwrZxha7LU6OZ+HQhoK0EgjSR8K1ditmoOyoo77Fax/ismbHj+a5DpBl+VdNh8BvZyoW6fLYh4xYXA== X-Bogosity: Ham, tests=bogofilter, spamicity=0.000993, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: List-Subscribe: List-Unsubscribe: The reads of slab->slabs are racy because it may be changed by put_cpu_partial concurrently. In slabs_cpu_partial_show() and show_slab_objects(), slab->slabs is only used for showing information. Data-racy reads from shared variables that are used only for diagnostic purposes should typically use data_race(), since it is normally not a problem if the values are off by a little. This patch is aimed at reducing the number of benign races reported by KCSAN in order to focus future debugging effort on harmful races. Signed-off-by: linke li Reviewed-by: Chengming Zhou --- mm/slub.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/mm/slub.c b/mm/slub.c index 2ef88bbf56a3..0d700f6ca547 100644 --- a/mm/slub.c +++ b/mm/slub.c @@ -6052,7 +6052,7 @@ static ssize_t show_slab_objects(struct kmem_cache *s, else if (flags & SO_OBJECTS) WARN_ON_ONCE(1); else - x = slab->slabs; + x = data_race(slab->slabs); total += x; nodes[node] += x; } @@ -6257,7 +6257,7 @@ static ssize_t slabs_cpu_partial_show(struct kmem_cache *s, char *buf) slab = slub_percpu_partial(per_cpu_ptr(s->cpu_slab, cpu)); if (slab) - slabs += slab->slabs; + slabs += data_race(slab->slabs); } #endif @@ -6271,7 +6271,7 @@ static ssize_t slabs_cpu_partial_show(struct kmem_cache *s, char *buf) slab = slub_percpu_partial(per_cpu_ptr(s->cpu_slab, cpu)); if (slab) { - slabs = READ_ONCE(slab->slabs); + slabs = data_race(slab->slabs); objects = (slabs * oo_objects(s->oo)) / 2; len += sysfs_emit_at(buf, len, " C%d=%d(%d)", cpu, objects, slabs); -- 2.39.3 (Apple Git-146)