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 956ABC25B74 for ; Mon, 27 May 2024 16:34:36 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 2EAE26B0093; Mon, 27 May 2024 12:34:36 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 2991A6B0095; Mon, 27 May 2024 12:34:36 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 1890E6B0096; Mon, 27 May 2024 12:34:36 -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 EF1AF6B0093 for ; Mon, 27 May 2024 12:34:35 -0400 (EDT) Received: from smtpin17.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay09.hostedemail.com (Postfix) with ESMTP id 9426F80D99 for ; Mon, 27 May 2024 16:34:35 +0000 (UTC) X-FDA: 82164724110.17.C58D55C Received: from sin.source.kernel.org (sin.source.kernel.org [145.40.73.55]) by imf23.hostedemail.com (Postfix) with ESMTP id 7F0D314000E for ; Mon, 27 May 2024 16:34:33 +0000 (UTC) Authentication-Results: imf23.hostedemail.com; dkim=pass header.d=kernel.org header.s=k20201202 header.b=XmRdsKbg; spf=pass (imf23.hostedemail.com: domain of vbabka@kernel.org designates 145.40.73.55 as permitted sender) smtp.mailfrom=vbabka@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=1716827674; 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:dkim-signature; bh=Z8QD0AzWpw+qxXUvWGvR+qnWlOlfFoqQKxKkoDTVUYc=; b=GNxGBPXZGp74ky77t5Ok0gV8U+vRdKqVh7c2vCXAtGk5gyfr6zf+gi6IRShXu+KNFs7Wsf uMRtnHALATC8yRVpsODRvETWUqdFTN6RFsdORwsZdY8/uvGWGw87cFJYVnhUIHGUTkk2VW tW4ExFKoeJxuOn/9tEjwJWmzkzAIBMc= ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1716827674; a=rsa-sha256; cv=none; b=qb4YsUL2XjHfePEaUuMdUM4rU/MGskaEzM4BiuFVBSrQojepQjx8lgsQVhA52NsKPPb6/X 5Tz6kn9FoUuNEicpE5RBmKmIhBtnOP6CVo/v9LtT8Aju4wsVI5GD3IbuFzhPhCSdMpEeaX vtzjmDwTK3ZTaesqyh7aGrKWmV7MVyA= ARC-Authentication-Results: i=1; imf23.hostedemail.com; dkim=pass header.d=kernel.org header.s=k20201202 header.b=XmRdsKbg; spf=pass (imf23.hostedemail.com: domain of vbabka@kernel.org designates 145.40.73.55 as permitted sender) smtp.mailfrom=vbabka@kernel.org; dmarc=pass (policy=none) header.from=kernel.org Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58]) by sin.source.kernel.org (Postfix) with ESMTP id 8762ECE0FEB; Mon, 27 May 2024 16:34:30 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id CB960C2BBFC; Mon, 27 May 2024 16:34:27 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1716827669; bh=bl8ZlK/CAMRWrVdQ/hpu/WdQl8FR7dw4nzTZlB2IpRo=; h=Date:Subject:To:Cc:References:From:In-Reply-To:From; b=XmRdsKbgJbzTQX3HxnL8ihxsExEVY+oGZ4ReTwSwnp+tJFDu3yBrEMuz3760IFes7 ftNoC5Dy98t6wKQJbFQdyXxBRpJSNishbkLEEdvTma/Zpsad9qmi+RWU+JUwrJ9uwq pPaInLLIzJDZDuMIiyelzlQDs8k09AFn0pnajkhdnn1S9LNSGXrSF+oh82vxwuR5rb 6bmhS51qTKvsLCXyBRJEvY3e4s2o5SsPUbQGZjZXdjHB4nBNss50VRArMOzeY2/6tU FNjkdwcXtDOxdMgyMYYgKyOmUvDM2c1gzYzda6Hy98ns3/ePIXCfU84oUxA+6cZN9I B0bkFNRqGa09g== Message-ID: <86006806-4ffc-4330-ab4b-29215ab2c98c@kernel.org> Date: Mon, 27 May 2024 18:34:24 +0200 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: [PATCH v2] memcg: simple cleanup of stats update functions Content-Language: en-US To: Sebastian Andrzej Siewior , Shakeel Butt Cc: Andrew Morton , Johannes Weiner , Michal Hocko , Roman Gushchin , Muchun Song , linux-mm@kvack.org, linux-kernel@vger.kernel.org, Thomas Gleixner References: <20240420232505.2768428-1-shakeel.butt@linux.dev> <20240527152200.P1rU7FaG@linutronix.de> From: "Vlastimil Babka (SUSE)" In-Reply-To: <20240527152200.P1rU7FaG@linutronix.de> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Server: rspam03 X-Rspamd-Queue-Id: 7F0D314000E X-Rspam-User: X-Stat-Signature: c4jpu6sqhpkd546ipifrp8htaq5y3zha X-HE-Tag: 1716827673-355534 X-HE-Meta: U2FsdGVkX1/adOPDQMyLUccXhWoZQn2HerqiMpXu+Wz1jOh7MO7481hQvdRtch9EYyjcdMeHEvllqbYKvIrcpqRvPBLfAgS5O4Rod30wr2hwPzXNITIXtSV1PIOshHjmLxX/Qwo+2GozvB6GL79oFa/aNhE9LWbvt/j430mVokrQT0JNm2KeuQmeOrAFXsb0XzPdg2ZkP/jmqnJNnqAcktrkgrWw9YAj/G2pCRNnIJ2FpNWLHFmuwbgA4Crp9VuWxmlAFUjptOwtz8qFHvdOOVnbF2p+kkMqxgtuu84Q8nDU78DTLAKDPlJq3s7AGs5JytvefndKUzsM4aD95DbepjOuACngSLHyZ97ZYwS7TzYr6ERCH2sKoclkw+8ICkkORqTr5FGnl4bBHampwWnnZTv7EfnzV2sGZc6/vNddeHPZ4QOm64CKDcXil1ar+UGv7O1kKbiSjhQFnzqmB5tKY/ucEn+lYMhq0PAHLVUzRSupKKnGBRijZJYMLKDnZ5Q8CulJUJddzx6C7Nkhzz1tpwOOUPi7g/He3exAuUFsaHGu8DZBJkvWofQQD4iJNQMoMXncYlAU4zE+eulbH0PLV+ZZpnpH+q/seKBhVZV8gn/wmj3EaF8L7TSSM5W07LL5JLJWITACXKez2vNXbs6DqYpuBUbqE76WRGrgtADazjTZyOyj12BbCy2wHwoaKPQprzRHb6/1QE6SUgDaWOOBSxOyAaHaAtV2cqo8pTZ+ZfaaphEZmsKsDR94DM1LiijbMmfL9ARVdBuUisCnLC665AkoTReaY2IAPOwYUpoi9DeeP9SmyQA4hD3VtGS7Im31MoGhS2iY8GHXp0ZyKZBKWuksEwcR51awnPdf2n3+Ey8/Ijd9VIzsfXJ31uN8uOLAuYGtTr39B3UgFghT2yIziAhHr/V5PwLqM6JSy0NR/JU6pk2b8Bc7zm2wR/ngtkq8npIIkE4Xy3l8QCtckXw nTzmW4p2 i64TKPx68rAxG/6+RCzB7D0PbDHtxIxTk82vxzOVvoZVVm/bAY+bS0ZCXkmqRHYwozGYoMU8G16C4UMJpDGETQt3uRpciqcheEDTrx0DOhUT4cyTaZwUeFxV8kvXYpxrBJsxTED9s8M48Cqz0V0WUoK4sUC8vt+dhLs7FOr0e3jG76h+91iUKUyB6EPbXCC57ZjLKztEhyIGtdeNuiOJ0zbIueeZmWVZmUvVTx9l81sevmZfWvH2xzZRPXmz75vb8eFky 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 5/27/24 5:22 PM, Sebastian Andrzej Siewior wrote: > On 2024-04-20 16:25:05 [-0700], Shakeel Butt wrote: >> mod_memcg_lruvec_state() is never called from outside of memcontrol.c >> and with always irq disabled. So, replace it with the irq disabled >> version and add an assert that irq is disabled in the caller. > > unless PREEMPT_RT is enabled. In that case IRQs are not disabled as part > of local_lock_irqsave(&memcg_stock.stock_lock, …) leading to: But then the "interrupts are handled by a kernel thread that can sleep" part of RT also means it's ok to just have the stock_lock taken with no interrupts disabled as no actual raw interrupt handler will interrupt the holder and deadlock, right? > | ------------[ cut here ]------------ > | WARNING: CPU: 0 PID: 1 at mm/memcontrol.c:3150 __mod_objcg_mlstate+0xc2/0x110 > | CPU: 0 PID: 1 Comm: systemd Not tainted 6.10.0-rc1-rt0+ #17 > | Call Trace: > | > | mod_objcg_state+0x2b3/0x320 > | __memcg_slab_post_alloc_hook+0x13c/0x340 > | kmem_cache_alloc_lru_noprof+0x2bd/0x2e0 > | alloc_inode+0x59/0xc0 > | iget_locked+0xf0/0x290 > > suggestions? So in that case the appropriate thing would be to replace the assert with lockdep_assert_held(&memcg_stock.stock_lock); ? It seems all the code paths leading here have that one. > Sebastian >