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 16E05CDD1D5 for ; Mon, 30 Sep 2024 20:13:03 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 975EA280029; Mon, 30 Sep 2024 16:13:02 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 9258028002A; Mon, 30 Sep 2024 16:13:02 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 776FD280029; Mon, 30 Sep 2024 16:13:02 -0400 (EDT) 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 559216B0193 for ; Mon, 30 Sep 2024 16:13:02 -0400 (EDT) Received: from smtpin09.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay04.hostedemail.com (Postfix) with ESMTP id CCD261A0B24 for ; Mon, 30 Sep 2024 20:13:01 +0000 (UTC) X-FDA: 82622503362.09.B00474B Received: from mail-lj1-f179.google.com (mail-lj1-f179.google.com [209.85.208.179]) by imf21.hostedemail.com (Postfix) with ESMTP id 849821C0013 for ; Mon, 30 Sep 2024 20:12:59 +0000 (UTC) Authentication-Results: imf21.hostedemail.com; dkim=pass header.d=linux-foundation.org header.s=google header.b=SI2UBl7Q; spf=pass (imf21.hostedemail.com: domain of torvalds@linuxfoundation.org designates 209.85.208.179 as permitted sender) smtp.mailfrom=torvalds@linuxfoundation.org; dmarc=none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1727727141; 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=M8SU9mjR4XCAezY3L+HkJFDMRx33ZVP0EqsIm6USarM=; b=h0Raomri14w5XZtQc68UKKdgCDovMWp2o6DebiDMj8b0k2hzR0VG40k3DW+mxuSZuWG/Le cAF+KW7hVSyK+SRtLXLNA51Q1WKu3tC3UcwbC1jVTmpYPI+qC/FZjA+nNVkahqz0P1NBuV 1fJHcn2vri7yKH2vK/5KJ39HxtApeac= ARC-Authentication-Results: i=1; imf21.hostedemail.com; dkim=pass header.d=linux-foundation.org header.s=google header.b=SI2UBl7Q; spf=pass (imf21.hostedemail.com: domain of torvalds@linuxfoundation.org designates 209.85.208.179 as permitted sender) smtp.mailfrom=torvalds@linuxfoundation.org; dmarc=none ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1727727141; a=rsa-sha256; cv=none; b=KVOOaWWy9glkj8zZsDujFGFOrW5VfseCID70gxXmc9RkiYGceHpCTmf4w9VijnCAfEMkKi X6hrBidJOmi/bSoFhSAvSyJTa7dAvdluvXuOkNQ+ySv72tywMYzbm04vJUfpmu/zisdMbj kog94jjYDHk8Q1ocgsbI8vVEz8keAoE= Received: by mail-lj1-f179.google.com with SMTP id 38308e7fff4ca-2facf481587so13266751fa.1 for ; Mon, 30 Sep 2024 13:12:59 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linux-foundation.org; s=google; t=1727727177; x=1728331977; darn=kvack.org; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:from:to:cc:subject:date :message-id:reply-to; bh=M8SU9mjR4XCAezY3L+HkJFDMRx33ZVP0EqsIm6USarM=; b=SI2UBl7QtbU+Bb6JJixIZdbW2ZT3sxbtraIzEJA4PWbeoJacwMygOav7ueht/OLXAh 6NGofYTxBkJ4mKYEMIYT8PHzX2a+ctpHZWu+N1PltZkwg2QH0ZqQZqAQA9Lv1na2uR/u p0lMx92PNp69NJy+CHliVb4rsB2LkWXWx5qCQ= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1727727177; x=1728331977; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=M8SU9mjR4XCAezY3L+HkJFDMRx33ZVP0EqsIm6USarM=; b=mMY9hO+L7uzuUTNATrTVMN4viFzjqkK4b8PRrNNiTiUHaDYCrvtzu/ZGkchEzM6qhr himI73RKdl+HyXv3i+56o2gQ2BjKTNSB4tuq2KCLMK0MX8FCYsvLmopgsgDL0Wi8EfCY IBP/33Gya3B7bxBU/0X6GSMDmOHs5+q/nF4qSvfg7qwoyElZX8UsRHQ3IwLKMZEgZTUy Buc0YHuDuy2hnx+Yho4vm1eSf63eEkVuHtMSA4ZvYurXGj8CMypoYbwi/g9XXldDDwbv VeGqpFHsqxJY6FIfIkOaoMyqFtrnKzdDHDq/+ikz85+Z/ay0UjWK6wyR2EqbLOWqQK8O Wciw== X-Forwarded-Encrypted: i=1; AJvYcCV5qvngSMKpFyHua7f8o662UAa2tEuOd/kU5iy/BIbDQo9oab0pTZY69y+DnavtMjUdEGkjZwrtWg==@kvack.org X-Gm-Message-State: AOJu0Yw9sxpNzuX00DQjSO5krtcs64EzD5QKA4R3o9xSoK2Edxcej4NU uwzivAc4yFGw+dZEO+ejnhkRIz66qv2Fi14qMNt6CuAXg/V9Wdcs336B2e3eevc7x0vyc1ylmOG R3lG19g== X-Google-Smtp-Source: AGHT+IF6xJ4RTgWcOcdao3xrjKfcyz3pmrlSvwtUTvXgOjOU5/wpPRsVrZoiB10WUuXyS84vI8MREw== X-Received: by 2002:a2e:d0a:0:b0:2fa:be1a:a4b0 with SMTP id 38308e7fff4ca-2fabe1aa54dmr39333051fa.21.1727727177226; Mon, 30 Sep 2024 13:12:57 -0700 (PDT) Received: from mail-ej1-f44.google.com (mail-ej1-f44.google.com. [209.85.218.44]) by smtp.gmail.com with ESMTPSA id 4fb4d7f45d1cf-5c8824051b7sm5183347a12.7.2024.09.30.13.12.55 for (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Mon, 30 Sep 2024 13:12:56 -0700 (PDT) Received: by mail-ej1-f44.google.com with SMTP id a640c23a62f3a-a8b155b5e9eso750966166b.1 for ; Mon, 30 Sep 2024 13:12:55 -0700 (PDT) X-Forwarded-Encrypted: i=1; AJvYcCXTmUj1oLop68e5UTEbHvXOCr8t7Wz4geudz9eCIhLlhOra05sumgtZn7dFMy9TKxikWyV1eHNB0Q==@kvack.org X-Received: by 2002:a17:907:869f:b0:a72:50f7:3c6f with SMTP id a640c23a62f3a-a93c49219f2mr1408201666b.14.1727727175132; Mon, 30 Sep 2024 13:12:55 -0700 (PDT) MIME-Version: 1.0 References: <74cceb67-2e71-455f-a4d4-6c5185ef775b@meta.com> <52d45d22-e108-400e-a63f-f50ef1a0ae1a@meta.com> <5bee194c-9cd3-47e7-919b-9f352441f855@kernel.dk> <459beb1c-defd-4836-952c-589203b7005c@meta.com> <02121707-E630-4E7E-837B-8F53B4C28721@flyingcircus.io> <295BE120-8BF4-41AE-A506-3D6B10965F2B@flyingcircus.io> In-Reply-To: <295BE120-8BF4-41AE-A506-3D6B10965F2B@flyingcircus.io> From: Linus Torvalds Date: Mon, 30 Sep 2024 13:12:37 -0700 X-Gmail-Original-Message-ID: Message-ID: Subject: Re: Known and unfixed active data loss bug in MM + XFS with large folios since Dec 2021 (any kernel from 6.1 upwards) To: Christian Theune Cc: Dave Chinner , Matthew Wilcox , Chris Mason , Jens Axboe , linux-mm@kvack.org, "linux-xfs@vger.kernel.org" , linux-fsdevel@vger.kernel.org, linux-kernel@vger.kernel.org, Daniel Dao , regressions@lists.linux.dev, regressions@leemhuis.info Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Rspam-User: X-Stat-Signature: kkjjfgphqjfeyhceujst9e8hxxfxatr4 X-Rspamd-Queue-Id: 849821C0013 X-Rspamd-Server: rspam11 X-HE-Tag: 1727727179-328758 X-HE-Meta: U2FsdGVkX18V7ZoSztlMlUKheIfX09gaZu9YpmK/UMybnP9jZtM8fz10mkhNbbfYzTVYqduLOEo2FvgVS5Za9z7vM0CETMgTANYBqEFdB9BazIJvKNqrjfbsZkSv5Bv3yhVGXi2k5Zh9uhMHKE+axoR/jutYRwN6hom+lwvsGn3G0Dg44T9ibQaXpxdZL8LyJUD0YmtA7DyVnsWhoa7HZffDc0WGoneNePnuR6mXiplhukeplhkR28jKOG/eGv9r36hmvL7Fr6SyCTslrEVDAF8g9CZrASdOzNcdy0m1MfSXiHYwkEMRKFf8BQS+bn2BXQDLz6fFxojSVDKZZL01OKf7XjSQBS3g6Awj17w0HX57s+S0726EsSf0wj5exV2EDDwVVRhHYA4xTD/DiX1oHbFYW126gvXKYyQ5Wq1mmw9SoCxKJvOIxOHt7ZMfvDo/fKHfCAUN3NtaUbNSkpQN7zFEitgMa8uNXfAHkvihp5J4zjP/ztrxHeB3WgtBJ/E+/0DUMPyzIv8GRWqpiGo4Ep5I8EtEHHBn5s+7fru4JLzULdz5WOU5FQsQ2RGsbFmnpjDEBOKrA+GM1yXvfY8mnQHuVHYCq2CpKDO1/938ZZYluC8FEJyHdF+q3QxyLNCzr0Ft7u/x3aDmJd94mlBFvXXA3et2W9yhm6Z20xJ+tZPhe9mc0A4th5UPy+NmyZWEFrf13M5bk7ghCAjKBLuPipGUjObJnmYAjos+Q0RmkdNCFn8u89NfCglc8fScbHYiN8J6GkXJFZ7VyffAb0IQ9mlFLk/tJbQb9U5T85ZH+Dv5HTiN3ubrdF4WF1DVM4bFEKmiLa01nAztetVFdo3z//rdYySaUU/D6O4L1JxzflEERSw5jIUxXv6+DbQXVc1L74b/3EoZAHApg6ZEyD9Lj+iYoLaOchQUCtCEd636zp/bfTvrQkSMJrfWa0SfeKt6IvQmClns+lR95sYZ/Bc PdEGhhtQ eohUOeKjylffZ+ZmK4qekipMaB3HDBR+zZw2b9RJvqjJjniXIgy/CQcogmqpzgXBZTcVj/2g/AWFYb33IZ7FYRFq6kDeZx6rY+Oa82BCfDpQB5+iILmRPRtPVwokRQPzOzkWiNhjZtz4RcBdEeXzPzttdDlDTDe57Me6fFsDRjYvpq1ishXGY1f0KLFoHIbaaGVaxAntDPnLSx/vSKknbB1J/XsKSy6pqMuzXdprvlhFPGOe1fk1eSGJHbcoLpNVqsZ5KIPueJnE/dbpHm9PjQ/h5t480RzrNnr/uuUT6ngoj+IYzslGj74lj9ZFxxTTJa/mLGWIsQQJ36R0Y1DYqb6sF4mRD/EiMgkqTQo8O/xN+eyRXvwNqcC0Ass9RDHXmt8T77jKkqkZNyvyewO1TeSZl2D+wKFi0bZD4xULG1h8tQdu99Z/P8t6PDdVi6S57vcwQ9MeFl22g0uoE+9ewlQQCM0IIQGTuKrnS5qMqdha2HS4/X7Uav6Qj8Z5hdbk2ufgkCu8wj6OPMIiOKBYjA+Kw+Y4RX3Z1206MF2jcRMyDvHU= X-Bogosity: Ham, tests=bogofilter, spamicity=0.055899, 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 Mon, 30 Sept 2024 at 12:25, Christian Theune wrote: > > I=E2=80=99m being told that I=E2=80=99m somewhat of a truffle pig for dir= ty code =E2=80=A6 how long ago does =E2=80=9Cold old=E2=80=9D refer to, btw= ? It's basically been that way forever. The code has changed many times, but we've basically always had that "wait on bit will wait not until the next wakeup, but until it actually sees the bit being clear". And by "always" I mean "going back at least to before the git tree". I didn't search further. It's not new. The only reason I pointed at that (relatively recent) commit from 2021 is that when we rewrote the page bit waiting logic (for some unrelated horrendous scalability issues with tens of thousands of pages on wait queues), the rewritten code _tried_ to not do it, and instead go "we were woken up by a bit clear op, so now we've waited enough". And that then caused problems as explained in that commit c2407cf7d22d ("mm: make wait_on_page_writeback() wait for multiple pending writebacks") because the wakeups aren't atomic wrt the actual bit setting/clearing/testing. IOW - that 2021 commit didn't _introduce_ the issue, it just went back to the horrendous behavior that we've always had, and temporarily tried to avoid. Note that "horrendous behavior" is really "you probably can't hit it under any normal load". So it's not like it's a problem in practice. Except your load clearly triggers *something*. And maybe this is part of it= . Linus