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 72BBFC61DA3 for ; Tue, 21 Feb 2023 07:23:14 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id CC4906B0073; Tue, 21 Feb 2023 02:23:13 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id C74736B0074; Tue, 21 Feb 2023 02:23:13 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id B3BDB6B0075; Tue, 21 Feb 2023 02:23:13 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0016.hostedemail.com [216.40.44.16]) by kanga.kvack.org (Postfix) with ESMTP id A22416B0073 for ; Tue, 21 Feb 2023 02:23:13 -0500 (EST) Received: from smtpin30.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay03.hostedemail.com (Postfix) with ESMTP id 62C80A0F9A for ; Tue, 21 Feb 2023 07:23:13 +0000 (UTC) X-FDA: 80490457866.30.F66BCD8 Received: from out-44.mta1.migadu.com (out-44.mta1.migadu.com [95.215.58.44]) by imf20.hostedemail.com (Postfix) with ESMTP id 86FBE1C0002 for ; Tue, 21 Feb 2023 07:23:10 +0000 (UTC) Authentication-Results: imf20.hostedemail.com; dkim=pass header.d=linux.dev header.s=key1 header.b=aE81HyfV; spf=pass (imf20.hostedemail.com: domain of muchun.song@linux.dev designates 95.215.58.44 as permitted sender) smtp.mailfrom=muchun.song@linux.dev; dmarc=pass (policy=none) header.from=linux.dev ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1676964191; 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=Cf+LpAhEO5DOwBgtr3qmUSxNMxu2ZN676lArhjLROM4=; b=7T24yrQ7t6fWX7+bPP38B76MdZuSVDWIHmlkrrlZ9sDablHirHbBFZE6MctG5nKbJIUwN1 wp5G0FVFwRJQbnNoIud7/UKZ3V6V8/Y9XzToivzmemHL+5sg7AXX6wPmNRpdci37HQSPyK uIC1MFoofe0lofS3neV6rWqBL1/AUms= ARC-Authentication-Results: i=1; imf20.hostedemail.com; dkim=pass header.d=linux.dev header.s=key1 header.b=aE81HyfV; spf=pass (imf20.hostedemail.com: domain of muchun.song@linux.dev designates 95.215.58.44 as permitted sender) smtp.mailfrom=muchun.song@linux.dev; dmarc=pass (policy=none) header.from=linux.dev ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1676964191; a=rsa-sha256; cv=none; b=WSL0Uhy6Pk/YYVeAK02XT1dNI35WQC+ZfEcUcMfQFsn9yfmMYkhFTNUjLJB7RHzIEI07J8 gbxxcJme7iRcLT77aCxB5sFrxaAK2rKEQYSaBvn6pqCFJDYsNEbi0/TYpReFRVySOmQgl8 orEf9nHxYZ0vcUbiud8vgwBUXL5n/sY= Content-Type: text/plain; charset=utf-8 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linux.dev; s=key1; t=1676964187; h=from:from: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=Cf+LpAhEO5DOwBgtr3qmUSxNMxu2ZN676lArhjLROM4=; b=aE81HyfVARJQiFBwWqtpuXcHzHwO+fJlvZRELGjtccNk4x3KKsPKW6F+yelYbWJeMWtd2p 9iOz5RShcuT6nitSNpVzRU57VrAzHB+c2ty/PlwUJ8ukZKQgkCQ8L0lFWlUgCTMXP0I5Df jV0wjaQPQfHo2Qanog3rA0gyyhjSl3k= MIME-Version: 1.0 Subject: Re: [PATCH] mm: change memcg->oom_group access with atomic operations X-Report-Abuse: Please report any abuse attempt to abuse@migadu.com and include these headers. From: Muchun Song In-Reply-To: <6563189C-7765-4FFA-A8F2-A5CC4860A1EF@linux.dev> Date: Tue, 21 Feb 2023 15:22:32 +0800 Cc: Shakeel Butt , Yue Zhao , Linux Memory Management List , Andrew Morton , Johannes Weiner , Michal Hocko , cgroups@vger.kernel.org, linux-kernel@vger.kernel.org Content-Transfer-Encoding: quoted-printable Message-Id: <61CA5FFC-547B-4F56-9238-C9096223BF80@linux.dev> References: <20230220230624.lkobqeagycx7bi7p@google.com> <6563189C-7765-4FFA-A8F2-A5CC4860A1EF@linux.dev> To: Roman Gushchin X-Migadu-Flow: FLOW_OUT X-Rspam-User: X-Rspamd-Server: rspam04 X-Rspamd-Queue-Id: 86FBE1C0002 X-Stat-Signature: 441p7rpjzfxj8537kobj9zkhermngrxx X-HE-Tag: 1676964190-253086 X-HE-Meta: U2FsdGVkX19h5gmK/mhHMdkRYtROGX6hw+L6c6qlC/o9gAx9MyUEFWLiGoCeplhLQjPvEXzQHsn5hyigHGVFY+94IDqZoFINKuvXGuxT8Iz0Q+ASPqbZMjDDcUHlCuCgAoV7AbrTBDjpwpmcIXQVk8+/xjGlddhXX6Bhb40nDzgNCJ0KzUOkoXTQDVz668w9O7b3Y1ncNaWHz2QQfcxg+TUFBJKLOZMwF2JrcNzLa7SrR3fkjOzzfNLtAX3lnK6wPubyz0DWjgA8X0gvQESK2NVjxPhRSZdwn3qJjGeH0vKXVT4fhlHyCYhrsSgxNdz5i8Qmz7WHiHPuuZgycXxTZGMkoBzxjRz1hQ5Y6yVlftkh3T29ElaQPJLgq9AdQDEGVss3JXvb2wMY33HDFghQ/2j4ZxRdT3u5rOo0NdbP6uE1ABZMykJrXTsfTw9p0ptsnaY5Im5MzK8YnVMw4cj+cIlZ9iYd9NejXwRcqW6Ob0BstHBm8TgVVX44rXU4NIvvhrtz25H+r5U37yO9lshMKNhY+e2pZDNo2Y54yxooDmEArttrgSXByLhJqTiTBiTOp1TzWbzEGrc/PQvjuXJXkLY61PCqm35yKcwntBQBoSUz5kfy0WN6bcFb9TS56qpHujXlGsh8rUPVr4NDLGvMjE8Dz2GzmZBjqcfoYtZfitfbfsodxOCJxdZpslszJVZ2F1mbuNqpXg+2A1ULOxH1GstFGV2tPTLgrNPS0vG5j/Fc++ZmPHr/3DJPZttL9V6o2LqGcixvUDVusZsu7iUr9gck6JlYGRtUvkRYXdKtO5Ssw+xNfbmiOI+sKOaKu3aSOv40pJ3ge7+4qC4z1fVymDEW6ZF8M5KPwOtEUfqkGu/y0QUdwodsQMLlXnkZKw2nLL7TdW+NbH053c1rNHpj5kTu+ZfsCTNVZNtvkLdyvnm7JWotPtceeDDxsaQwoExsDYirUti8+ihBXjYwtG4 WeZ3QD3G k45HDfVcykclADp+NvjJPGb3yrD8yMCvbRwbQHduWO8NIxJLt0FDABaQ5bc+iW52NecndaM+crmlyumqshJhAz6iScuzCOl7NMDTySqqmA5UuMrGRiu0phSQcm5K8MLmti7mf/OmzhVEieyPUUuWC+m7fJwi0hacJvtrVIrSDrmo/oGfa5Jiq0bBU39kuMkIUAXwrwbUMA++jqu4= 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 Feb 21, 2023, at 13:17, Roman Gushchin = wrote: >=20 >> On Feb 20, 2023, at 3:06 PM, Shakeel Butt = wrote: >>=20 >> =EF=BB=BFOn Mon, Feb 20, 2023 at 01:09:44PM -0800, Roman Gushchin = wrote: >>>> On Mon, Feb 20, 2023 at 11:16:38PM +0800, Yue Zhao wrote: >>>> The knob for cgroup v2 memory controller: memory.oom.group >>>> will be read and written simultaneously by user space >>>> programs, thus we'd better change memcg->oom_group access >>>> with atomic operations to avoid concurrency problems. >>>>=20 >>>> Signed-off-by: Yue Zhao >>>=20 >>> Hi Yue! >>>=20 >>> I'm curious, have any seen any real issues which your patch is = solving? >>> Can you, please, provide a bit more details. >>>=20 >>=20 >> IMHO such details are not needed. oom_group is being accessed >> concurrently and one of them can be a write access. At least >> READ_ONCE/WRITE_ONCE is needed here. >=20 > Needed for what? >=20 > I mean it=E2=80=99s obviously not a big deal to put = READ_ONCE()/WRITE_ONCE() here, but I struggle to imagine a scenario when = it will make any difference. IMHO it=E2=80=99s easier to justify a = proper atomic operation here, even if it=E2=80=99s most likely an = overkill. >=20 > My question is very simple: the commit log mentions =E2=80=9C=E2=80=A6 = to avoid concurrency problems=E2=80=9D, so I wonder what problems are = these. I think there is no difference in the assembly code between them in most cases. The only intention that I can think of is to avoid the potential complaint (data race) emitted by KCSAN. >=20 > Also there are other similar cgroup interfaces without = READ_ONCE()/WRITE_ONCE(). If we decide to fix, then we should fix all. Thanks. >=20 > Thanks!