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 45F9CC2BD09 for ; Mon, 15 Jul 2024 08:19:49 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 8E5F96B0083; Mon, 15 Jul 2024 04:19:48 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 895266B0085; Mon, 15 Jul 2024 04:19:48 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 75D3D6B0088; Mon, 15 Jul 2024 04:19:48 -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 57DAB6B0083 for ; Mon, 15 Jul 2024 04:19:48 -0400 (EDT) Received: from smtpin20.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay03.hostedemail.com (Postfix) with ESMTP id C4C83A1543 for ; Mon, 15 Jul 2024 08:19:47 +0000 (UTC) X-FDA: 82341288414.20.9D1BE78 Received: from mail-ej1-f45.google.com (mail-ej1-f45.google.com [209.85.218.45]) by imf20.hostedemail.com (Postfix) with ESMTP id C5ADB1C0022 for ; Mon, 15 Jul 2024 08:19:45 +0000 (UTC) Authentication-Results: imf20.hostedemail.com; dkim=pass header.d=suse.com header.s=google header.b=athS17rS; spf=pass (imf20.hostedemail.com: domain of mhocko@suse.com designates 209.85.218.45 as permitted sender) smtp.mailfrom=mhocko@suse.com; dmarc=pass (policy=quarantine) header.from=suse.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1721031536; 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=BzuOERVB8BYXcS6jzRnPjykns7akEqZft0CH0SokcpA=; b=0CsosFfLPXgI1p6QyUYyzyXOHybKSbdP7+wtXxfqcOKDNfTMZV93fHALoAnUrTIFEAiFw7 zoVRIv0YcNhZeVDQqOJB/+n4p15H4bJEO7uKUmZ/OpamE/MeNJbIKtv3A+CAhVeft3WR/2 o8eiTo8V3ID/FjGvLpfBRKIz4iFtFKM= ARC-Authentication-Results: i=1; imf20.hostedemail.com; dkim=pass header.d=suse.com header.s=google header.b=athS17rS; spf=pass (imf20.hostedemail.com: domain of mhocko@suse.com designates 209.85.218.45 as permitted sender) smtp.mailfrom=mhocko@suse.com; dmarc=pass (policy=quarantine) header.from=suse.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1721031536; a=rsa-sha256; cv=none; b=HC00lbK4JwL0CMoy4pcvuQdm51sbRRX5GJm0oexgXxjF1bhQe3GTb24t8Yzrx8O3azkoDy F7DfDeOnmL9NzPIszWqMcTTQWhmHysOvgIKvEZ3YNujo1HMOnW5bISlcy1rOUwp3ci6Lpz YMnR6bpk0zoKtyzS+BIIuSiLi4ztBAg= Received: by mail-ej1-f45.google.com with SMTP id a640c23a62f3a-a77e7a6cfa7so438417566b.1 for ; Mon, 15 Jul 2024 01:19:45 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=google; t=1721031584; x=1721636384; 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=BzuOERVB8BYXcS6jzRnPjykns7akEqZft0CH0SokcpA=; b=athS17rS1TH1PyjtYmXdElz9nB0OfuRcw95kxX5q8Ijy6o7CM4p4K+8UpoEv0zkk4H 39Gzs/T3wUXQpSERbnogmhZ6FAqgsrSspMFXjx/1tIroG+lgm+r3t9uT13nsIHVb6fIr htkGQ2Sq6D2gqCfuJPj+Apq3NWrGUWRCdjp/LDFpW4dZp89ttz3WVGI/FvdVvUPtlsyA AQBOvPPwMl8mWZAyrod77X+oRxmZ1/8ne8X+epssn4vaZdEb0glO2RiFiQ55nBAiOsQZ dB/TP5uEsSypMlHVjSxbXhmCH5lCi4J1N7tNmuTX/wT4b5+9pfrtYWRV4FB3jDPIEruV mUNg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1721031584; x=1721636384; 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=BzuOERVB8BYXcS6jzRnPjykns7akEqZft0CH0SokcpA=; b=ELz6bvlcW3kcjJpUF+Dvc9jD/kGTFVOiUaFuTfxqpI7F7/Uka2LrRPJR5OxPk+Gype kSBsEoZTG3RkwqC1hcmMsxKowmsLplKMc7Hh1fxBN+QfjNgLLqKSOmWybEKuCPLIYa6A Jzxaly2ZMNY73YZ8C/3minGH450xwv0wyDhTJL4AZdhKvstHJkuyMkN1KBjocpbGmpeO 9PMvwqydLNpGaSsNoTTqoiDH9C7lV+NDGyO3W13vuyu9X6z5uhiYdCeTnLDIF3svcXKF kKio1dKLey6YS0qqf2A4ushVc5t5hZU/Cc4LzYgGhi93EfEdsw7HXajw7kvlBbgA6F0f E+sA== X-Forwarded-Encrypted: i=1; AJvYcCXkwavkS0toniv91YOG53pBv+zpiTmmIctg4n8WliobmZKlHxLVZRXhEJapMGDPAlFNb6og0LPD5Wlt26TCcCU13XY= X-Gm-Message-State: AOJu0YxdNA4vfvAunqjzt6wNufgBCIsWeju7NtRj9/0ZhfyeCXwMVGkK qrsZPKHJ85AufBidtt+UNG/EyOjWUxpA+bD4zTQsU9JRW8GrkKDmYolkDGT5Jcw= X-Google-Smtp-Source: AGHT+IFDnYLOn5oKibGY3IW1WB4tX5z1g4icCI1F/jsVTt3hrAU7A9vAG7HpYO0pa9HXpkwRm5mVtw== X-Received: by 2002:a17:907:7da8:b0:a6f:e456:4207 with SMTP id a640c23a62f3a-a780b88498fmr1522974366b.61.1721031584079; Mon, 15 Jul 2024 01:19:44 -0700 (PDT) Received: from localhost (109-81-86-75.rct.o2.cz. [109.81.86.75]) by smtp.gmail.com with ESMTPSA id a640c23a62f3a-a79bc5a359asm195317966b.19.2024.07.15.01.19.43 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 15 Jul 2024 01:19:43 -0700 (PDT) Date: Mon, 15 Jul 2024 10:19:43 +0200 From: Michal Hocko To: Roman Gushchin Cc: Dan Carpenter , Andrew Morton , cgroups@vger.kernel.org, Johannes Weiner , Shakeel Butt , linux-mm@kvack.org, linux-kernel@vger.kernel.org Subject: Re: [bug report] mm: memcg: move charge migration code to memcontrol-v1.c Message-ID: References: MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: X-Rspamd-Server: rspam06 X-Rspamd-Queue-Id: C5ADB1C0022 X-Stat-Signature: koonbjuq56mexhq6npefun1etyxo5r7t X-Rspam-User: X-HE-Tag: 1721031585-585884 X-HE-Meta: U2FsdGVkX1/ldCijVZsvTI9X1J5U5p+N/RwbOW/Z04F+pjWQF+TjC2h2vcme+U7i+nYsWwy5Vu6PWGHQxQy8P794XsxLDwbDN6dGQDovDRPDT3bom0kFwYtGhnjizuOnMwRpMl9sO3MzGPfzOibAv+KGSVW+rVKSAKEaoXS7EV4sZ4K2a1kspFmVCK+ql1lnduoqqaK4rk4MG3Wuk1wb+XXFnUiW/RzVu/cFv6083ICa1f6svUpYr0x4WhDSzFX2iDFb1SIsSzfKu9btoFv0WZ/hfgjdbFW5gy/4IgP9gUOJvGB1w9yiqlJzAy34stw22fN0sL13gGpU9b0zgEUbGX0aQaGLgCUX5eoYYHhe4YO+62eNF1BtYUskKQI5XC5Zp8VWRPlEuTYZPTaRI1L+a8uKJikeHhoqOKrmy/yJ7dljry3CdrIQ8KlK4kQcj0latvHALQNP3LdjayUyHswKSG0xQ2QlFnrAtQ2iXzOUDDE/Kk3VZmILo5jrMxoPBN0WnseCnVmXUCFfS8M8u9LAEFwuYkpXjaBR7WCKpqVDuajiJNTueitUGO+PYEFwzjHyWa+htJIPyTzeZZEDmP0Tx3HCYqHMfcaoxi5W58IBkzt/+0tG0GbZW0X5cRDjl7r99iehZ3u/DfskgBbN6mcAWXB/S4rukDDipCUxyaIYxt3pOc0hYsBx7YS4/YRUPDCskbT6HEQtow9DI1gm+vsLMo+TyzOfPjc6qVQ4zoOYDyOiXaU7cfw8x/zGRSCRC/cmuzQWF+y3GFC9koEFkUx/QGnAOSfgchWvWHVe6eck+YWuML6mFiUfh0sP+7MUzqEGNdOJV5s0oy79TUoiwII46NMMyeVxgdMKy+Gt+5RIiY33VfcXhTgJU9+HvHVUb2lS7JsQy/BXGT3ho54a+TS2ftn8zhUflSII/kmEu0lPpuLCmK/0fppRX7tp5PU86it+7lsALPvIgb1ApOiLmyI QYk8CxDU Hmot7LRqx9qFDvqXzqdOTVk3ZjE65eelz4GYwg9EhRQ0MjcobN5wTsIerpGuwf0St1Cv5Vzk5Ghg37DwbLYvoN91PcYRmG1ZavPGqac8QKgu4S1SwWj6cFDacXsYrbMPSzJFlV+Kx6h9GmW7kyrjfnhBBZKMj5DafHUGq1mHsWGOW4S7tEulwuAh6KG53G+pF1nPYy18JCFb9GqvRhTJX420AuV1ae+BN8nH+LHHFhn41f6zsTVFBPRiuXNJqB3s3M30NBpl09kmq6R5Njg4xzx1w6Ac2CAyXse6d90yEEkhq1TfdHVYsAyG73QZfhCI1Sr0yzbgC3Sw1ZmX8vGU0j/OE7EdfRiTowQUbRvpWSmALllT7UT0a+HxS05fvnPrwuThrH6DTVBRjy+Nr6lo5Oa/cOITxY/2LZiGtoHk4MRilZUZeLVS4rtfxCedfRYgQ2OXeKyBfCuES53qXE/CRjHWDNQ== 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 Fri 12-07-24 18:56:03, Roman Gushchin wrote: > On Fri, Jul 12, 2024 at 09:07:45AM -0500, Dan Carpenter wrote: > > Hello Roman Gushchin, > > > > Commit e548ad4a7cbf ("mm: memcg: move charge migration code to > > memcontrol-v1.c") from Jun 24, 2024 (linux-next), leads to the > > following Smatch static checker warning: > > > > mm/memcontrol-v1.c:609 mem_cgroup_move_charge_write() > > warn: was expecting a 64 bit value instead of '~(1 | 2)' > > > > mm/memcontrol-v1.c > > 599 #ifdef CONFIG_MMU > > 600 static int mem_cgroup_move_charge_write(struct cgroup_subsys_state *css, > > 601 struct cftype *cft, u64 val) > > 602 { > > 603 struct mem_cgroup *memcg = mem_cgroup_from_css(css); > > 604 > > 605 pr_warn_once("Cgroup memory moving (move_charge_at_immigrate) is deprecated. " > > 606 "Please report your usecase to linux-mm@kvack.org if you " > > 607 "depend on this functionality.\n"); > > 608 > > --> 609 if (val & ~MOVE_MASK) > > > > val is a u64 and MOVE_MASK is a u32. This only checks if something in the low > > 32 bits is set and it ignores the high 32 bits. > > Hi Dan, > > thank you for the report! > > The mentioned commit just moved to code from memcontrol.c to memcontrol-v1.c, > so the bug is actually much much older. Anyway, the fix is attached below. > > Andrew, can you please pick it up? > > I don't think the problem and the fix deserve a stable backport. Agreed! > Thank you! > > -- > > >From 8b3d1ebb8d99cd9d3ab331f69ba9170f09a5c9b6 Mon Sep 17 00:00:00 2001 > From: Roman Gushchin > Date: Fri, 12 Jul 2024 18:35:14 +0000 > Subject: [PATCH] mm: memcg1: convert charge move flags to unsigned long long > > Currently MOVE_ANON and MOVE_FILE flags are defined as integers > and it leads to the following Smatch static checker warning: > mm/memcontrol-v1.c:609 mem_cgroup_move_charge_write() > warn: was expecting a 64 bit value instead of '~(1 | 2)' > > Fix this be redefining them as unsigned long long. > > Even though the issue allows to set high 32 bits of mc.flags > to an arbitrary number, these bits are never used, so it doesn't > have any significant consequences. > > Reported-by: Dan Carpenter > Signed-off-by: Roman Gushchin Acked-by: Michal Hocko Thanks! > --- > mm/memcontrol-v1.c | 4 ++-- > 1 file changed, 2 insertions(+), 2 deletions(-) > > diff --git a/mm/memcontrol-v1.c b/mm/memcontrol-v1.c > index 6b3e56e88a8a..2aeea4d8bf8e 100644 > --- a/mm/memcontrol-v1.c > +++ b/mm/memcontrol-v1.c > @@ -44,8 +44,8 @@ static struct mem_cgroup_tree soft_limit_tree __read_mostly; > /* > * Types of charges to be moved. > */ > -#define MOVE_ANON 0x1U > -#define MOVE_FILE 0x2U > +#define MOVE_ANON 0x1ULL > +#define MOVE_FILE 0x2ULL > #define MOVE_MASK (MOVE_ANON | MOVE_FILE) > > /* "mc" and its members are protected by cgroup_mutex */ > -- > 2.45.2.993.g49e7a77208-goog -- Michal Hocko SUSE Labs