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 AECB5CE8D49 for ; Thu, 19 Sep 2024 04:47:11 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 4B6316B0093; Thu, 19 Sep 2024 00:47:11 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 43FA96B0095; Thu, 19 Sep 2024 00:47:11 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 2E04D6B0096; Thu, 19 Sep 2024 00:47:11 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0013.hostedemail.com [216.40.44.13]) by kanga.kvack.org (Postfix) with ESMTP id 0BA866B0093 for ; Thu, 19 Sep 2024 00:47:11 -0400 (EDT) Received: from smtpin12.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay10.hostedemail.com (Postfix) with ESMTP id 7E00FC0A0D for ; Thu, 19 Sep 2024 04:47:10 +0000 (UTC) X-FDA: 82580253420.12.9B5346D Received: from mail-lf1-f43.google.com (mail-lf1-f43.google.com [209.85.167.43]) by imf26.hostedemail.com (Postfix) with ESMTP id 577FA140007 for ; Thu, 19 Sep 2024 04:47:08 +0000 (UTC) Authentication-Results: imf26.hostedemail.com; dkim=pass header.d=linux-foundation.org header.s=google header.b=RpKqpKAw; dmarc=none; spf=pass (imf26.hostedemail.com: domain of torvalds@linuxfoundation.org designates 209.85.167.43 as permitted sender) smtp.mailfrom=torvalds@linuxfoundation.org ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1726721218; a=rsa-sha256; cv=none; b=lsxH6yc3Kj/EUqJEQeV+ciuaWONbuFzgdDTZ3g3nl5zviJwjwGlIEHeS4ayKJV3BxNdFee dbZy4M9A5LxFEyBC+r+VoCNhjsSSG80Y84FCmPwns9HB3j4TrhFyXDYEEcHKi1PBsw/A7z Dk7wm1FOylLqGZMyqUyZx5gQcNiyJss= ARC-Authentication-Results: i=1; imf26.hostedemail.com; dkim=pass header.d=linux-foundation.org header.s=google header.b=RpKqpKAw; dmarc=none; spf=pass (imf26.hostedemail.com: domain of torvalds@linuxfoundation.org designates 209.85.167.43 as permitted sender) smtp.mailfrom=torvalds@linuxfoundation.org ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1726721218; 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=v5K6WdNxpXbbHrFkTCJEcTGagR1i25Nnb2d6KDOnxQ4=; b=tV+fFcYxXhfctI1xMKUtJBzVsmC3Ed/HjMmYWmdIUGEfKdSX08NUW14w3ovJhwdt9DPSpb 0O5X8DVhvBjJrt2hOaTat8d5KTCPTkMAeO6794i7H9fYwL72rFG752J8Y3lLQZuIeQcwjT 61UxtmbhcPBgkPXUdV5AFooRnWFF9uw= Received: by mail-lf1-f43.google.com with SMTP id 2adb3069b0e04-53654e2ed93so481061e87.0 for ; Wed, 18 Sep 2024 21:47:07 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linux-foundation.org; s=google; t=1726721226; x=1727326026; darn=kvack.org; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=v5K6WdNxpXbbHrFkTCJEcTGagR1i25Nnb2d6KDOnxQ4=; b=RpKqpKAwqJmAiGy2sFJaJdEuX4NkaIiqFmqEJNyIQQfeNCA2p52JoZawChitvNCmCE St2p6f+g4voYPUeWbNyT7nGl1vQHTqOaN8cp5dbE943vjzEHXBgWjA9b6ufTcmQF4RuC s0q1rxpEqM/hChm6GVrZCTv/6ZK+VFW9REnOU= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1726721226; x=1727326026; h=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=v5K6WdNxpXbbHrFkTCJEcTGagR1i25Nnb2d6KDOnxQ4=; b=GN/ETymNoIOq7hU2CpQK23hkv1C88S7ppbaJ9mP2HoCVmVoifRsArPZMC7H+4lWP5x LAC1NM6vhhoQY+6tTdi2JIoNc2dR1WtkTWm472jtk/b7CQJb7NJeWPAQotUp3UvUvOmb c8uHVQF76ZJmiGR61L4nIammY71dYiSaaJfVorczTliqgU6Iaop+CJsvk31TgfRS/Vh4 YjxJjrc+Zoqe+JxMiO88cIOKH25/F0HEpLt2EstDPhk2dIGDkpVKb0mgUkvefQpqekyJ G4YL5Z7aJARXR03OIB1/w3YZ0hHtrDoSPPp/GN1+pd96dozHHCH2lAzrBEPEgKnXbFP8 Io7w== X-Forwarded-Encrypted: i=1; AJvYcCVMPCuWL9YQOQ6WH0cFgEbfBCiRcuObr8CTfZKiSkFNo2ffrtLJzyGsPAAaKdjblcabuXq/v5Yrlw==@kvack.org X-Gm-Message-State: AOJu0YxgK3Q2y2LyH5da+E9YcYRn5TwcTcQ+lROrKj/LKGCCFWqwAgih 4TWBLSaaeRITtQLmjvqBN5XKzWGeycTLA9Foe2CC4G0UrFWFljkQT7agKzio6iS8xhpg9n7ORXQ uLYf3ww== X-Google-Smtp-Source: AGHT+IH1jJkkCpokVsDcEZFZHcXQTVSC1dM3caRsbNB8+Grt7YUkS8Uf0N7WEqk2JY7JLBF4mFstUg== X-Received: by 2002:a05:6512:3e29:b0:52c:d76f:7f61 with SMTP id 2adb3069b0e04-53678ff4d55mr14694861e87.56.1726721225990; Wed, 18 Sep 2024 21:47:05 -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-5c42bc8931esm5637790a12.95.2024.09.18.21.47.03 for (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Wed, 18 Sep 2024 21:47:04 -0700 (PDT) Received: by mail-ej1-f44.google.com with SMTP id a640c23a62f3a-a8d3cde1103so47653366b.2 for ; Wed, 18 Sep 2024 21:47:03 -0700 (PDT) X-Forwarded-Encrypted: i=1; AJvYcCUhf8Qjwqs3aAhDP1zoMnem63fNo7j54/Aw4PaEbkZj26syQVVBIkWjV1N/IRVnC4/6mU8nBCDPpg==@kvack.org X-Received: by 2002:a17:907:efc6:b0:a86:9c71:ec93 with SMTP id a640c23a62f3a-a9029438edemr2426724866b.24.1726721223112; Wed, 18 Sep 2024 21:47:03 -0700 (PDT) MIME-Version: 1.0 References: <52d45d22-e108-400e-a63f-f50ef1a0ae1a@meta.com> <5bee194c-9cd3-47e7-919b-9f352441f855@kernel.dk> <459beb1c-defd-4836-952c-589203b7005c@meta.com> <8697e349-d22f-43a0-8469-beb857eb44a1@kernel.dk> In-Reply-To: From: Linus Torvalds Date: Thu, 19 Sep 2024 06:46:46 +0200 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: Matthew Wilcox Cc: Jens Axboe , Dave Chinner , Chris Mason , Christian Theune , 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" X-Rspam-User: X-Stat-Signature: yqsjbqpocrnaux7ftkqqrj6ahyh8jnnh X-Rspamd-Queue-Id: 577FA140007 X-Rspamd-Server: rspam02 X-HE-Tag: 1726721228-594729 X-HE-Meta: U2FsdGVkX19mLtIlzqB9zM5XDw8o4UCHkOsrdqo4eXuAUttyW0wQWdbN4ZVHUKKGnZNJfdf8gerntHARINYG4aXymp5IKXnzH/1/emd+yYpeYgcCcAFo7loFUCo1SNNSraUBy96DfAC+sb4bxatJ+C2hD9vFEgHxTTKNtG1asa5P6cnn/yWqdAhVtpNNTqukJaYKUUc4WF+sG3xdubQdG2Jj+P7PG2gfR77xM5zgnGDvxuioCbc95KNLXvQZ9u0lW7UuGF0cQPWvk42oAUPVz2LjF7aImCC6AUrbRInfvrJGnEuTorOY3A139xTkimdTBveqbAikVGksxUc5OzoD/Q/WKDep4pOL3G4bYjrQFRW4TyysI0adpoPCmPg8lka/6VgEzpoI1PBxKiuFHZfdKTdqCukoZX30S3Nv+AKzjDLCcIbrWYlcEQug8GF1/0kiG2F5HSrCRMo+D1vaHTdYMN6kU40QiFfGsyy+yspGQbnXJMs1RevQT+eCRZQNCkUteRzu81Mb0m41zqu+ZHU3pNGUOLYhPI6buZ5asemP+DdCjAJKIf5O4S15iB+svOs32lCumDCvf4fK6LuehSkBHVl18E2gVfFByDO9BNmBMop8a7h3d6vhYuq53B/ySDA007ROUEzoa9hT3+XHRb+CgRtSJgd16TqhBkkb92XLFP2tf+75oyaiv4cEWglIwALlywcNQEpvMFBIQDo4rbqvyQIcVqTqCkE2PafBax2gnPlhDpGr/mrmX8/0iONcupEBAypi3FPP8t2mIlpuEZyiHsTT7OaRH/otiYrpblPg97GW5Twwthin8+mkEPMSaTL7P3CekCN5ixOwyiIJyPjEYEGv6lHQy2mqCcINNiQM0k3vIyOZJPKsYcviApS/21bj4ZZpMLsUTsIg9/TDs7SGjTRIKFj8ptdsJT+ysvG+Ob4rX/DWqkQnWEDFh94U26hNbbY5CLJ4nedWp+0tm+k Ad9RLgsc nNqomSGcHZG/DU9Cyr7MojvDok2LojG7kuKGEIAPmqp+VhH2t+uFlgZnDfeD1WtGZxjxRSKS6BsIldjk/g/T/fMYJ95+iwIg+jA5VoV4gCu+A7/Pr7kPpANJsJwT3yRDQbBz7bY+xSi+nUi+qNHf4t90SbJp0vUMh4D0PcVsZ+amZR5lKF1LfQ0SQ2irI7ujLxE702H4hLOQh/d2od4KFw4ChXMaFZi4uJYi/wZ2qHKac0fbsPI7nXHEA7bD1vhOAujwQO3zaBLIcdJfppwZYIMx39xM1TEEQG4zJAO+c4+0djiAw5amcd9jCW41bUZYFDhzN2BGq6I1OBmIlJ7guq6jcCZWChMYGG73S9D3TyRbvMsCrT/16ZlhjSR8fYIM1cmvlBL9WPyA5OonXt19PMqJbkgdWWSiieFrXzuunmgM9dcN8pZ7MJjJe+H4oe8GdY1WKVO3lQ789kUdpPVsytRMICG1vBDF3Nds8Hn7xJcqq26NIv0gWeZBsU6miYXvme+o9YmGoZ31zcsul5OooQP5N4XI5Xg1SUX5+pYDrxn/0TUufcr2yFCTknR12Liz/Kaj4Z/YPMd07spMTDZ1z8LTVgwy1ZVxKVBgSIqPPWoJ8SaEEMsjSf9ykgU+x8CchzN00 X-Bogosity: Ham, tests=bogofilter, spamicity=0.000345, 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 Thu, 19 Sept 2024 at 06:36, Matthew Wilcox wrote: > > Probably xas_split_alloc() needs to just do the alloc, like the name > says, and drop the 'entry' argument. ICBW, but I think it explains > what you're seeing? Maybe it doesn't? .. or we make the rule be that you have to re-check that the order and the entry still matches when you do the actual xas_split().. Like commit 6758c1128ceb does, in this case. We do have another xas_split_alloc() - in the hugepage case - but there we do have xas_lock(&xas); xas_reset(&xas); if (xas_load(&xas) != folio) goto fail; and the folio is locked over the whole sequence, so I think that code is probably safe and guarantees that we're splitting with the same details we alloc'ed. Linus