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 959B0C4345F for ; Mon, 15 Apr 2024 01:50:35 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 241B96B0082; Sun, 14 Apr 2024 21:50:35 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 17D916B0085; Sun, 14 Apr 2024 21:50:35 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id E9CFF6B0087; Sun, 14 Apr 2024 21:50:34 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0012.hostedemail.com [216.40.44.12]) by kanga.kvack.org (Postfix) with ESMTP id C73D66B0082 for ; Sun, 14 Apr 2024 21:50:34 -0400 (EDT) Received: from smtpin27.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay07.hostedemail.com (Postfix) with ESMTP id 5EECB160181 for ; Mon, 15 Apr 2024 01:50:34 +0000 (UTC) X-FDA: 82010086788.27.4DBA22D Received: from mail-lj1-f171.google.com (mail-lj1-f171.google.com [209.85.208.171]) by imf12.hostedemail.com (Postfix) with ESMTP id 7352540011 for ; Mon, 15 Apr 2024 01:50:32 +0000 (UTC) Authentication-Results: imf12.hostedemail.com; dkim=pass header.d=gmail.com header.s=20230601 header.b=POS9UUUt; dmarc=pass (policy=none) header.from=gmail.com; spf=pass (imf12.hostedemail.com: domain of huangzhaoyang@gmail.com designates 209.85.208.171 as permitted sender) smtp.mailfrom=huangzhaoyang@gmail.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1713145832; a=rsa-sha256; cv=none; b=308NEDdQlRH6FFB68Ip9Gwd5vw23mBnRXcR2tN6sQnEq+xmrBGqnosrw9XYWLd+ANnGz50 5fPdDEaecKLMbneGv6kegcQS0rGs9vyFcQJ6JEOda6Wlnn5/CnnIiM5RdOBjzaEgGCeZ82 r7r/DHu5f8GC58gkThbz3isTqG+2Lsw= ARC-Authentication-Results: i=1; imf12.hostedemail.com; dkim=pass header.d=gmail.com header.s=20230601 header.b=POS9UUUt; dmarc=pass (policy=none) header.from=gmail.com; spf=pass (imf12.hostedemail.com: domain of huangzhaoyang@gmail.com designates 209.85.208.171 as permitted sender) smtp.mailfrom=huangzhaoyang@gmail.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1713145832; 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=XSaUhARtlrBBbSU/eGQ+luiqgYoc7YzbWreKpdVDLF4=; b=LuQ10s3d8M9roPc9w/UxBusp/c6Y3Srfhq2Gv5IUmlHAwwHirH8HA9IYWB4TwXPBSc8nV4 rwchwy9BbhFt4l6WIcuhWTKXMkWJfXIJaj4nmW92mJseXAiKiCi0+TUHJJ8yOZIeeH06k/ bMoyX0hzn5etyDQIFoZaUiUjP05ljU4= Received: by mail-lj1-f171.google.com with SMTP id 38308e7fff4ca-2da0b3f7ad3so28921481fa.1 for ; Sun, 14 Apr 2024 18:50:32 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1713145831; x=1713750631; 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=XSaUhARtlrBBbSU/eGQ+luiqgYoc7YzbWreKpdVDLF4=; b=POS9UUUtIzQmLZItF6ZgWXoYV9M8Q0lYSDLqDWK+UlDdL6I5cxD5qVjp43KN6dmn4u gdhIgcG8v/k/S4Q0nYW3dDy41tFARJHjDhZ2lDQ92YKqUR9QfuEziB3iVv1M4k8VoSly bHMnkbnqhVJID7iRIuC81A+Va+p/XcDny/74Zntb5Y7y56oARWqni9ZF0tArN7W/WyOy wqX+NQVhxdtTtp8wQyRTSMszFQQQldptM8ITNozhVu6IJZ+dvCvxQa7BSOr8kz44V2uh YPGhUBNcoeBka8dd+0ohoqc5X7OWP7Kh6bks38uqaVNWwESCAnx0AWBjMdsl3OOLiShg Vngw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1713145831; x=1713750631; 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=XSaUhARtlrBBbSU/eGQ+luiqgYoc7YzbWreKpdVDLF4=; b=mwFCCN29mjj3wxCmLjEwpOmFEHERJBvwPYJzPdsRo4ROc3e3eW9KrIB3B5hq6H/sBq auSD52AvUQDe644G15oSd7r6PA0mIL+BC65Q04SCEuKDBA4h2Evd76k+a3DjhbguY6ID N5CzrbAm71lglYH0i0nO8522yOM2lL38rnV+JH++nT910M6EsmLbUoHMCq1lm2Mi+d8l 5D0LBBXynuBKEUJfS0YoE/NHAl0q3xw+T2hSeZckRi3zUKkzHVZRf33Q3nRW8/tBU2Fn 3s+xsW4zra5RlCf1+gmg1MT7XVAW5LDPi332ZnUx004yYvhUwr982FeuGLW3Eplesn7W S0dw== X-Forwarded-Encrypted: i=1; AJvYcCUeLTeqajCHqhKtzCkO6kaCeb5Ai9URFlzmrDsz3dFW7jwjXlewWKoBZpIN/fJOVDudGR4mlEgKn074Hy7Or5/E96s= X-Gm-Message-State: AOJu0Yw8+/XDd2Uo0oh4RHZ+xQLEYSvw6/3KgAEiLmv61UspvFxNgUfn 6yZL+j+75MysiBWMiAsfr+QGITeRpJUjjVa3A7NE1tmNWQY4bWkZ18j/GmaLqx7x7mwObBbwl0Y 4xFx5sXlkRyNyUDp4ifWprW7Gw0g= X-Google-Smtp-Source: AGHT+IExuoaxryisrWPTChHe0Sn6EqR5gqS1M6SxF727EbH7ugLFAQV1y5b81Tz5S+q3mIKnrkasHdGJAJjnNYsxFvA= X-Received: by 2002:a2e:6e07:0:b0:2da:15cf:1e23 with SMTP id j7-20020a2e6e07000000b002da15cf1e23mr3949793ljc.17.1713145830395; Sun, 14 Apr 2024 18:50:30 -0700 (PDT) MIME-Version: 1.0 References: <20240412064353.133497-1-zhaoyang.huang@unisoc.com> <20240412143457.5c6c0ae8f6df0f647d7cf0be@linux-foundation.org> In-Reply-To: From: Zhaoyang Huang Date: Mon, 15 Apr 2024 09:50:19 +0800 Message-ID: Subject: Re: [PATCH 1/1] mm: protect xa split stuff under lruvec->lru_lock during migration To: Dave Chinner Cc: Andrew Morton , "zhaoyang.huang" , Alex Shi , "Kirill A . Shutemov" , Hugh Dickins , Baolin Wang , linux-mm@kvack.org, linux-kernel@vger.kernel.org, steve.kang@unisoc.com Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Rspam-User: X-Rspamd-Server: rspam06 X-Rspamd-Queue-Id: 7352540011 X-Stat-Signature: 4hd4b66nsr5bs1uoxmjkw5oo1bpehua1 X-HE-Tag: 1713145832-565760 X-HE-Meta: U2FsdGVkX1/+mEhrfaIPpebCW2TxXtegR6TeTlqWaDj8SZTAk8jQsD8vesVFfeSwuiucPiJOnw/dYkvcGM+GL52ZETDJ3zn5H883QLn0/+v5kqp/M6DBHBl8KxNFxUqufUJfW6MjuwNGPVRs/IHWaJmaqW6B2bi0bKX7dAFyjmxmu6LH0NF2EnoC0nRxhV8t9FDdjkA3iYEtXT3yjpyRYAwOmSnJyvyrBpH6KSDrwfbuY3wGHXf+KDYgfxXgSZKl5gceTnU33zaR4wPoqBx4DtyVgSmTpcOre/m74DfLd/UlMrOE4khwjC2T7/Rv4oLpK7BnuAZn4z786dAPMN8FAUgGMr5i0WEEKJ8a8cZhJ6+GBveEaVPZulraRPVE5mszAWTIovWbNmJks8B2qGnbOS+2UXkYJg/r0P5CpiWah8XYdsFgymmgmdVfh0Vnw3dWPJjUlvqcUwM9R3Lip6flvydhtR4BoFzz1PCaaYKbTlDoMhjDXQ/Inlasegj73VCwkHSwpUZQYzMzUbcFTbPRImnGCvyuczMWoWhENn/zXExmJDnjAd/rnVpCz0YydjHxEEmtSaDj0id5QNBxbl2wnZWcsIbhiXWEQO4yuyq+aJxnGICTXP2ylH5JjHje8uAzQYdO3Hb9D/UDKxGzU3U4xcSH+U/75Pd1Xz8hjPFlMDOJFCyqoQ6ZZUafg1WMi62bT92Y3N/rRReGKuomu16p4IrIMc8x2g1Z9tlE76GccZAA1YdYGWE6l9a7YKeFGG/LF/FClEHIF0cX4MYNgf5n7FRJJQc/QdmimxbxsN7rb21aV3fIVqY8CVGTlX+6grB4HSMRDbP/AtoFmzRQzAIDrRWi546OfufPqbY+IsIfrGmZ78mtgpGWUHJHPrSbkXV9U7mdSNawnNwSN2iFrNQDGb6qq/oAdGm4CgMz/Ef0qfQaAFGXDN+l0kNrDlt+Onf1ka0RIYW+gHmIUg+Ey1i mJ0+Ns54 Ftq+xBuK1r/gv7Hp75XYKqaxEcm6qzeZqyufP+QjG6Bbq0ae7Pw2YhQnFCLJimuEPP+VuC7qaqxM8WxrXUAEESY91fZcw02MkcB/sPMPlViPSLsuklnHCesPYqrJMUI/0hsg+BBW9B8FWLoP2Gd+YQGVIwYmr0i6Qfug3e61Cxo2EIjbgRfMR60vXwQcXiCdA5hu8OF4LJLcA0MxKeJO817wQpez8H5SY+MyFHr/9IEtZFwYtmEhatwFtuPtCsetTemSHda0KwDrpRqiA8fdhx+1AQ0A2Y7Mjs3fP/nt9wGEcpliQGvq/5RzZVhs4D/yEf5f7dyfk7Yfd7rTX5xNjHCCHPhZsFc33CNNjQJm9An7BNBn+BisHZa8F7ukVhrE/TrWI0jYDF+y7ukZ/c3OfB6DCIWAgMD3SckGZ3leO9YOHA0UzxaCsaxiKUolJMugOZoNTga49hB4HzUhjZuqxCv8tccaSGkgLOcR5REXKicoyVj6BeHvo5tYvynTTnc+hR8tKW5VHCsdQ7G0= 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 Mon, Apr 15, 2024 at 8:09=E2=80=AFAM Dave Chinner = wrote: > > On Sat, Apr 13, 2024 at 10:01:27AM +0800, Zhaoyang Huang wrote: > > loop Dave, since he has ever helped set up an reproducer in > > https://lore.kernel.org/linux-mm/20221101071721.GV2703033@dread.disaste= r.area/ > > @Dave Chinner , I would like to ask for your kindly help on if you can > > verify this patch on your environment if convenient. Thanks a lot. > > I don't have the test environment from 18 months ago available any > more. Also, I haven't seen this problem since that specific test > environment tripped over the issue. Hence I don't have any way of > confirming that the problem is fixed, either, because first I'd have > to reproduce it... Thanks for the information. I noticed that you reported another soft lockup which is related to xas_load since NOV.2023. This patch is supposed to be helpful for this. With regard to the version timing, this commit is actually a revert of b6769834aac1d467fa1c71277d15688efcbb4d76 which is merged before v5.15. For saving your time, a brief description below. IMO, b6769834aa introduce a potential stall between freeze the folio's refcnt and store it back to 2, which have the xas_load->folio_try_get_rcu loops as livelock if it stalls the lru_lock's holder. b6769834aa split_huge_page_to_list - spin_lock(lru_lock) xas_split(&xas, folio,order) folio_refcnt_freeze(folio, 1 + folio_nr_pages(folio0) + spin_lock(lru_lock) xas_store(&xas, offset++, head+i) page_ref_add(head, 2) spin_unlock(lru_lock) Sorry in advance if the above doesn't make sense, I am just a developer who is also suffering from this bug and trying to fix it > > -Dave. > -- > Dave Chinner > david@fromorbit.com